# Configuring clustering

The cluster topology for GitHub Enterprise Server provides horizontal scaling for environments with tens of thousands of developers.

## Links

* [About clustering](/en/enterprise-server@3.22/admin/monitoring-and-managing-your-instance/configuring-clustering/about-clustering)

  The cluster topology for GitHub Enterprise Server is designed to support tens of thousands of users where other topologies would experience resource exhaustion. In a cluster, the instance's services scale horizontally across multiple nodes.

* [Differences between clustering and high availability (HA)](/en/enterprise-server@3.22/admin/monitoring-and-managing-your-instance/configuring-clustering/differences-between-clustering-and-high-availability-ha)

  Learn about the differences between deployment topologies for the virtual machines (VMs) that comprise a GitHub Enterprise Server instance.

* [About cluster nodes](/en/enterprise-server@3.22/admin/monitoring-and-managing-your-instance/configuring-clustering/about-cluster-nodes)

  In a GitHub Enterprise Server cluster, nodes are individual virtual machines (VMs) running the GitHub Enterprise Server software that comprise the instance. Each node runs a set of services.

* [Cluster network configuration](/en/enterprise-server@3.22/admin/monitoring-and-managing-your-instance/configuring-clustering/cluster-network-configuration)

  A GitHub Enterprise Server cluster requires proper DNS name resolution, load balancing, and communication between nodes.

* [Initializing the cluster](/en/enterprise-server@3.22/admin/monitoring-and-managing-your-instance/configuring-clustering/initializing-the-cluster)

  A GitHub Enterprise Server cluster must be set up with a license and initialized using the administrative shell (SSH).

* [Deferring database seeding](/en/enterprise-server@3.22/admin/monitoring-and-managing-your-instance/configuring-clustering/deferring-database-seeding)

  You can speed up the process of adding a new MySQL replica node to your cluster by opting to defer database seeding.

* [Upgrading a cluster](/en/enterprise-server@3.22/admin/monitoring-and-managing-your-instance/configuring-clustering/upgrading-a-cluster)

  To upgrade a GitHub Enterprise Server cluster to the latest release, use the administrative shell (SSH).

* [Monitoring the health of your cluster](/en/enterprise-server@3.22/admin/monitoring-and-managing-your-instance/configuring-clustering/monitoring-the-health-of-your-cluster)

  To ensure the performance and redundancy of a GitHub Enterprise Server cluster, you can monitor the cluster's health.

* [Monitoring the health of your cluster nodes with Node Eligibility Service](/en/enterprise-server@3.22/admin/monitoring-and-managing-your-instance/configuring-clustering/monitoring-the-health-of-your-cluster-nodes-with-node-eligibility-service)

  You can monitor when nodes in a GitHub Enterprise Server cluster have been offline long enough to cause issues by using Node Eligibility Service.

* [Rebalancing cluster workloads](/en/enterprise-server@3.22/admin/monitoring-and-managing-your-instance/configuring-clustering/rebalancing-cluster-workloads)

  You can force your GitHub Enterprise Server cluster to evenly distribute job allocations for workloads on the cluster's nodes.

* [Replacing a cluster node](/en/enterprise-server@3.22/admin/monitoring-and-managing-your-instance/configuring-clustering/replacing-a-cluster-node)

  Replace a functional or failed node in a GitHub Enterprise Server cluster while preserving the services that the node provides.

* [Configuring high availability replication for a cluster](/en/enterprise-server@3.22/admin/monitoring-and-managing-your-instance/configuring-clustering/configuring-high-availability-replication-for-a-cluster)

  You can configure a replica of your entire GitHub Enterprise Server cluster in a separate datacenter, allowing your cluster to fail over to redundant nodes.

* [Initiating a failover to your replica cluster](/en/enterprise-server@3.22/admin/monitoring-and-managing-your-instance/configuring-clustering/initiating-a-failover-to-your-replica-cluster)

  If your GitHub Enterprise Server cluster fails, you can fail over to the replica.