高可用性集群

高可用性集群(英语:High-availability clusters,也称为HA集群故障转移集群)是以最短的中断时间为目标而可靠地运作的,支撑服务器应用的一组计算机。它们通过使用高可用性软件来管理集群中的冗馀计算机,当系统组件出现故障时,这些计算机可以继续提供服务。在没有集群的情况下,如果运行特定应用的服务器崩溃,那么在崩溃的服务器得到修复之前,应用将不可用。HA集群通过检测硬件/软件故障,并立即在另一个系统上重新启动应用程序来补救这种情况,而不需要进行人工干预,这个过程称为故障转移。作为这个过程的一部分,集群软件可能会在启动节点上的应用之前对节点进行配置。例如,可能需要导入和挂载适当的文件系统,可能需要配置网络硬件,还可能需要运行一些支撑应用。[1]

HA集群通常用于关键数据库、网络上的文件共享、业务应用和客户服务(如电子商务网站)。

HA集群实现试图在集群中建立冗余以消除单点故障,包括连接多个网络,以及通过存储区域网络冗余连接一些数据存储。

HA集群通常使用心跳专用网络连接,用于监视集群中每个节点的健康状况和状态。所有集群软件必须能够处理的一个不明显但严重的情况是脑裂问题,这种情况发生在所有专用链路同时中断,但集群节点仍在运行时。如果发生这种情况,集群中的每个节点都可能会错误地判断其他节点已经停机,并尝试启动其他节点仍在运行的服务。重复服务实例可能会导致共享存储上的数据损坏。

HA集群通常也使用仲裁见证存储(本地或云)来避免这种情况。见证设备无法在裂开后的集群的两半之间共享,因此,在所有集群成员都无法相互通信(如心跳失败)的情况下,如果某个成员无法访问见证,该设备将无法激活。

  1. ^ van Vugt, Sander (2014), Pro Linux High Availability Clustering, p.3, Apress, ISBN 978-1484200803