GitHub Enterprise Server clustering allows services that make up GitHub Enterprise Server to be scaled out across multiple nodes.
GitHub Enterprise Server High Availability Configuration (HA) is a primary/secondary failover configuration that provides redundancy while Clustering provides redundancy and scalability by distributing read and write load across multiple nodes.
Nodes are GitHub Enterprise Server instances that operate in a cluster. Each node runs a set of services that are provided to the cluster, and ultimately to the users.
GitHub Enterprise Server clustering relies on proper DNS name resolution, load balancing, and communication between nodes to operate properly.
A GitHub Enterprise Server cluster must be set up with a license and initialized using the administrative shell (SSH).
Use the administrative shell (SSH) to upgrade a GitHub Enterprise Server cluster to the latest release.
A GitHub Enterprise Server cluster is comprised of redundant services that are distributed across two or more nodes. If an individual service or an entire node were to fail, it should not be immediately apparent to users of the cluster. However since performance and redundancy are affected, it is important to monitor the health of a GitHub Enterprise Server cluster.
To replace a GitHub Enterprise Server node, you must mark the affected nodes offline in the cluster configuration file (cluster.conf) and add the replacement nodes. This might be necessary if a node were to fail, or to add a node with more resources to increase performance.
You can evacuate data services on a cluster node.
You can configure a passive replica of your entire GitHub Enterprise Server cluster in a different location, allowing your cluster to fail over to redundant nodes.
If your GitHub Enterprise Server cluster fails, you can fail over to the passive replica .