Documentation : Geo: External database guide is not correct
We have a document that describes how to setup GitLab Geo with an external database https://docs.gitlab.com/ee/administration/geo/replication/external_database.html and it's not correct as it misses a bunch of steps from https://docs.gitlab.com/ee/administration/geo/replication/database.html
gitlab-ctl set-geo-primary-nodehas to be run as Primary Geo Node should be added
roles ['geo_primary_role']has to be set (see https://docs.gitlab.com/omnibus/roles/#gitlab-geo-roles)(?)
roles ['geo_secondary_role']has to be set on secondary
geo_secondary['db_fdw'] = truehas to be set (well, it's mentioned in https://docs.gitlab.com/ee/administration/geo/replication/external_database.html#configure-the-tracking-database but I believe it should be reworked somehow)
gitlab-rake geo:db:migratewon't work as database has to be created first
It's a pretty important issue as basically, you can't setup it without deep knowledge of Geo. Moreover, I believe having a database as a separate instance is a common case for huge enterprises that Geo is aiming to target.
Related Slack discussion https://gitlab.slack.com/messages/C32LCGC1H/convo/C32LCGC1H-1551795677.063700/
UPDATE Also, this fragment of text is duplicated:
To set up an external replica database, you can either: Set up streaming replication yourself (for example, in AWS RDS). Perform the Omnibus configuration manually as follows.