What is the first iteration of a horizontally scaled GitLab? We not only need to scale horizontally to enable efficient growth, but also to enhance availability of the solution. Availability is usually measured in uptime, that is the percentage of the day, month, or year that your system is operational. To get this to a higher level, you need to eliminate single points of failure and make the components redundant. Also, be sure that the components can take over from each other when needed and have a good system in place that monitors and detects failures. If your system is doing this, it is said to be a high availability (HA) system.
What does it mean to scale horizontally? It means that you will split workloads into different layers. A load balancer will be placed at the front of the infrastructure. This will get one IP address and...