{"meta":{"title":"Configuring clustering","intro":"The cluster topology for GitHub Enterprise Server provides horizontal scaling for environments with tens of thousands of developers.","product":"Enterprise administrators","breadcrumbs":[{"href":"/en/enterprise-server@3.21/admin","title":"Enterprise administrators"},{"href":"/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance","title":"Monitor and manage your instance"},{"href":"/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering","title":"Configuring clustering"}],"documentType":"subcategory"},"body":"# Configuring clustering\n\nThe cluster topology for GitHub Enterprise Server provides horizontal scaling for environments with tens of thousands of developers.\n\n## Links\n\n* [About clustering](/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering/about-clustering)\n\n  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.\n\n* [Differences between clustering and high availability (HA)](/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering/differences-between-clustering-and-high-availability-ha)\n\n  Learn about the differences between deployment topologies for the virtual machines (VMs) that comprise a GitHub Enterprise Server instance.\n\n* [About cluster nodes](/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering/about-cluster-nodes)\n\n  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.\n\n* [Cluster network configuration](/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering/cluster-network-configuration)\n\n  A GitHub Enterprise Server cluster requires proper DNS name resolution, load balancing, and communication between nodes.\n\n* [Initializing the cluster](/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering/initializing-the-cluster)\n\n  A GitHub Enterprise Server cluster must be set up with a license and initialized using the administrative shell (SSH).\n\n* [Deferring database seeding](/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering/deferring-database-seeding)\n\n  You can speed up the process of adding a new MySQL replica node to your cluster by opting to defer database seeding.\n\n* [Upgrading a cluster](/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering/upgrading-a-cluster)\n\n  To upgrade a GitHub Enterprise Server cluster to the latest release, use the administrative shell (SSH).\n\n* [Monitoring the health of your cluster](/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering/monitoring-the-health-of-your-cluster)\n\n  To ensure the performance and redundancy of a GitHub Enterprise Server cluster, you can monitor the cluster's health.\n\n* [Monitoring the health of your cluster nodes with Node Eligibility Service](/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering/monitoring-the-health-of-your-cluster-nodes-with-node-eligibility-service)\n\n  You can monitor when nodes in a GitHub Enterprise Server cluster have been offline long enough to cause issues by using Node Eligibility Service.\n\n* [Rebalancing cluster workloads](/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering/rebalancing-cluster-workloads)\n\n  You can force your GitHub Enterprise Server cluster to evenly distribute job allocations for workloads on the cluster's nodes.\n\n* [Replacing a cluster node](/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering/replacing-a-cluster-node)\n\n  Replace a functional or failed node in a GitHub Enterprise Server cluster while preserving the services that the node provides.\n\n* [Configuring high availability replication for a cluster](/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering/configuring-high-availability-replication-for-a-cluster)\n\n  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.\n\n* [Initiating a failover to your replica cluster](/en/enterprise-server@3.21/admin/monitoring-and-managing-your-instance/configuring-clustering/initiating-a-failover-to-your-replica-cluster)\n\n  If your GitHub Enterprise Server cluster fails, you can fail over to the replica."}