In this chapter, we created a second iteration of an HA architecture of GitLab. The frontend tier was split into frontend and backend, and a middleware tier containing Sidekiq nodes was created. The shared filesystem was changed from NFS to Gitaly, and we created nodes for a monitoring server (Prometheus) and a dashboard (Grafana) to connect to it. We changed the Terraform files, the Ansible playbooks and templates, and the shell scripts.
In the next chapter, we will go even further into splitting up nodes, and introduce a new middleware tier, which runs several background nodes that handle different kinds of traffic.