GitLab Geo is a feature of GitLab that is part of the premium Enterprise version and higher. It is used to create a replica of a whole GitLab instance in another geographical location. Items such as user accounts, issues, events, and other objects are synced—not only items from the database, but also files from the filesystem.
There are several steps involved in installing Geo for your environment:
- Install the GitLab software and license on both nodes, but don't activate them.
- Prepare the database replicas.
- Change the SSH key lookup method to the database.
- Add the secondary node via the web UI.
The first two steps in our example project can be executed by the Ansible scripts that are part of the repository for this book. Steps 3 and step 4 have to be done manually. Let's deep dive into these steps.