Skip to main content

配置群集与高可用性 (HA) 之间的差异

了解构成 GitHub Enterprise Server 实例的虚拟机 (VM) 部署拓扑之间的差异。

谁可以使用此功能?

GitHub 确定聚类分析的资格,并且必须为实例的许可证启用配置。 聚类分析需要仔细规划和额外的管理开销。 有关详细信息,请参阅“关于集群”。

关于 GitHub Enterprise Server 的部署拓扑

可以根据环境和用户需求,在不同的拓扑中为 GitHub Enterprise Server 实例部署虚拟机。

  • 若要支持灾难恢复和补充备份的计划,或为地理位置分散的用户提高网络和写入性能,可以配置高可用性。 在高可用性配置中,一个节点充当主节点,而另一个节点充当副本节点。 有关详细信息,请参阅“关于高可用性配置”。

  • 若要为拥有数万名开发人员的环境提供水平缩放,可以使用群集拓扑。 群集可解决单个主节点经常遇到资源耗尽的情况。 此配置需要仔细规划和额外的管理开销。 GitHub 将与你一起确定你的群集资格。 有关详细信息,请参阅“关于集群”。

故障场景

高可用性 (HA) 和群集都通过消除作为故障点的单个节点来提供冗余。 它们能够在这些场景中提供可用性:

  • 软件崩溃,操作系统失败或不可恢复的应用程序所致。
  • 硬件故障,包括存储硬件、CPU、RAM、网络接口等。
  • 虚拟化主机系统故障,包括 AWSAzureGCP 上未计划和计划性维护事件。
  • 逻辑或物理服务网络(如果故障转移设备在不受故障影响的单独网络上)。

可伸缩性

集群通过跨多个节点分配负载而提供更好的可扩展性。 这种横向扩展能力可能更适合某些拥有数万名开发者的组织。 在 HA 中,设备的规模完全取决于主节点,并且负载不会分发到副本服务器。

故障切换方法和配置方面的差异

功能故障切换配置故障转移方法
高可用性配置TTL 较低的 DNS 记录指向主设备或负载均衡器。您必须在 DNS 故障切换和负载均衡器配置中手动升级副本设备。
群集DNS 记录必须指向负载均衡器。如果负载均衡器后面的节点发生故障,流量将自动发送到其他正常运行的节点。

备份和灾难恢复

HA 或群集都不应被视为常规备份的替代品。 有关详细信息,请参阅“在实例上配置备份”。

监视

可用性功能,尤其是具有自动故障切换的功能(如群集)可以屏蔽故障,因为在发生故障时通常不会中断服务。 无论你使用的是 HA 还是群集,监视每个实例的健康状况都十分重要,这样你就可以了解何时发生了故障。 有关监视的详细信息,请参阅“建议的警报阈值”和“监视群集的运行状况”。