Geo Docs: Explicitly set node name instead of relying on backward-compatibility logic

Follow up for !12252 (merged). This MR proved that even the Geo developer that added GeoNode name (me) can forget that it needs a trailing slash if the setting wasn't set (and was left to default to external_url).

Proposal

The Geo setup docs should instruct you to set gitlab_rails['geo_node_name']. We shouldn't expose people to the confusing backwards-compatibility rule: "add a trailing slash if you're letting it default to external_url".

  • Modify Add the secondary node section. Add a step to set geo_node_name. And check out https://gitlab.com/gitlab-org/gitlab-development-kit/blob/master/doc/howto/geo.md#add-secondary-node for some ideas.

The primary node record is created by a command, which is reliable. But setting geo_node_name on the primary would avoid confusion when sysadmins are modifying nodes or failing over. So let's also:

  • Modify Configure the primary server section. E.g.:
    1. Set geo_node_name in gitlab.rb
    2. Run gitlab-ctl set-geo-primary-node

Similarly for Geo HA docs:

  • Modify https://docs.gitlab.com/ee/administration/geo/replication/high_availability.html#step-1-configure-the-primary-frontend-servers (set geo_node_name on frontend servers)
  • Modify https://docs.gitlab.com/ee/administration/geo/replication/high_availability.html#step-4-configure-the-frontend-application-servers-on-the-secondary-node (set geo_node_name on frontend servers)
Edited Oct 10, 2019 by Michael Kozono
Assignee Loading
Time tracking Loading