Investigate and decide on the best GitLab HA provisioning tool to standardize on and productize
Summary
We currently provide documentation for setting up a high availability GitLab architecture, but provide no tooling for easier deploys of multi-node architectures.
This means that customers need to manually provision their own instances, edit the configuration, and then potentially automate it themselves. This is a lot of work.
Further, we don't have a good way to test HA/Geo deployments in an automated way. Bugs are slipping through. We need to ensure we have automated test coverage here.
Proposed solution
We have two existing sets of tools here:
- Our Implementation Services team provides terraform or ansible based provisioning tools to their customers, but it tends to be customized to their specific needs
- We also worked on
gitlab-provisioner
, but this was put on hold for our gitlab charts.
We should evaluate both of the above in their present state, select the best foundation for the general public, and then do what we need to offer it as a production deployment solution. Once ready, we should announce official support and include in our HA docs.
As for platforms, we can start with AWS, the most common deployment target of GitLab.