Geo Glossary

note
We are updating the Geo documentation, user interface and commands to reflect these changes. Not all pages comply with these definitions yet.

These are the defined terms to describe all aspects of Geo. Using a set of clearly defined terms helps us to communicate efficiently and avoids confusion. The language on this page aims to be ubiquitous and as simple as possible.

We provide example diagrams and statements to demonstrate correct usage of terms.

TermDefinitionScopeDiscouraged synonyms
NodeAn individual server that runs GitLab either with a specific role or as a whole (for example a Rails application node). In a cloud context this can be a specific machine type.GitLabinstance, server
SiteOne or a collection of nodes running a single GitLab application. A site can be single-node or multi-node.GitLabdeployment, installation instance
Single-node siteA specific configuration of GitLab that uses exactly one node.GitLabsingle-server, single-instance
Multi-node siteA specific configuration of GitLab that uses more than one node.GitLabmulti-server, multi-instance, high availability
Primary siteA GitLab site whose data is being replicated by at least one secondary site. There can only be a single primary site.Geo-specificGeo deployment, Primary node
Secondary siteA GitLab site that is configured to replicate the data of a primary site. There can be one or more secondary sites.Geo-specificGeo deployment, Secondary node
Geo deploymentA collection of two or more GitLab sites with exactly one primary site being replicated by one or more secondary sites.Geo-specific 
Reference architectureA specified configuration of GitLab for a number of users, possibly including multiple nodes and multiple sites.GitLab 
PromotingChanging the role of a site from secondary to primary.Geo-specific 
DemotingChanging the role of a site from primary to secondary.Geo-specific 
FailoverThe entire process that shifts users from a primary Site to a secondary site. This includes promoting a secondary, but contains other parts as well. For example, scheduling maintenance.Geo-specific 
ReplicationAlso called “synchronization”. The uni-directional process that updates a resource on a secondary site to match the resource on the primary site.Geo-specific 

Examples

Single-node site

graph TD subgraph S-Site[Single-node site] Node_3[GitLab node] end

Multi-node site

graph TD subgraph MN-Site[Multi-node site] Node_1[Application node] Node_2[Database node] Node_3[Gitaly node] end

Geo deployment - Single-node sites

This Geo deployment has a single-node primary site, a single-node secondary site:

graph TD subgraph Geo deployment subgraph Primary[Primary site, single-node] Node_1[GitLab node] end subgraph Secondary1[Secondary site 1, single-node] Node_2[GitLab node] end end

Geo deployment - Multi-node sites

This Geo deployment has a multi-node primary site, a multi-node secondary site:

graph TD subgraph Geo deployment subgraph Primary[Primary site, multi-node] Node_1[Application node] Node_2[Database node] end subgraph Secondary1[Secondary site 1, multi-node] Node_5[Application node] Node_6[Database node] end end

Geo deployment - Mixed sites

This Geo deployment has a multi-node primary site, a multi-node secondary site and another single-node secondary site:

graph TD subgraph Geo deployment subgraph Primary[Primary site, multi-node] Node_1[Application node] Node_2[Database node] Node_3[Gitaly node] end subgraph Secondary1[Secondary site 1, multi-node] Node_5[Application node] Node_6[Database node] end subgraph Secondary2[Secondary site 2, single-node] Node_7[Single GitLab node] end end