Document how to install with decomposed mode
Today it is possible to install a GitLab instance with decomposed mode (the proof is that GitLab.com is decomposed)
To support/kickstart #382026 (closed), let's document how to install a GitLab instance that is decomposed for :
-
Omnibus -
charts => #385111 (closed) -
Source install
Also document that decomposed is alpha - given there's some limitations.
A potential followup is documenting how to migrate existing single database to multiple databases
Resources
- https://docs.gitlab.com/ee/development/database/multiple_databases.html may be helpful
- Omnibus https://docs.gitlab.com/omnibus/settings/database.html
- Source
- Helm Charts: https://docs.gitlab.com/charts/, gitlab-org/charts/gitlab!2122 (merged). See https://gitlab.com/gitlab-com/gl-infra/k8s-workloads/gitlab-com/-/blob/master/releases/gitlab/values/gprd.yaml.gotmpl for how it's used in production
How to spin up a VM to test Omnibus
- Create a GCP project with https://about.gitlab.com/handbook/infrastructure-standards/realms/sandbox/#how-to-get-started
- Go to your GCP project in console.cloud.google.com. Note it may take 5-10 for your new GCP project to appear in the projects list
- Go to the Compute Engine section, enable the API (sorry I forgot the exact label)
- Create a new VM instance. GitLab recommends 4GB memory and 2 CPU, so I chose
Machine type: n2-standard-4(Omar: This is 4 VCPUs and 8 GB) - Download, and install
gcloudlocally. Select the SSH dropdown for the VM instance you want to connect to. Select thegcloud SSHoption to get the command line to connect via SSH using the gcloud too. https://cloud.google.com/sdk/docs/install - Once on the VM, follow https://about.gitlab.com/install/#debian to install GitLab. Select a
httpexternal url likehttp://gitlab-me.example.com(as long as it'shttp, we will use SSH port forwarding) - On another terminal tab, connect using the same SSH command from 5 but with the additional flag
--ssh-flag="-L 8082:localhost:80". - Open
http://localhost:8082on your browser. You should see a login screen for your new GitLab instance! - Various reconfiguration options are documented in https://docs.gitlab.com/omnibus/index.html#installation-and-configuration-using-omnibus-package
Edited by Omar Qunsul