Date: 4月 3, 2025
为什么无存储/无节点仲裁对于集群可用性有害?
一般来说,法定人数是指出席并作出决定的一群人或团体。
在 LifeKeeper 中,Quorum 强制达成共识,使用集群中节点的状态来执行处理集群内节点故障的下一步。LifeKeeperquorum 可以在三种模式下运行;存储、多数和 TCP 远程(TCP 远程仅适用于 LifeKeeper for Linux)。
- 存储 Quorum 使用共享存储设备来跟踪集群中其他系统提供的更新,如果某个系统不提供更新,Quorum 会将该集群标记为失败。
- 多数仲裁依赖于奇数个集群的结构其中一个节点充当见证节点,以确定集群中是否有一个或所有节点无法通信
- 通过指定端口上的 TCP/IP 服务进行 TCP 远程连接,以验证集群中的节点是否可以相互通信。
了解集群中仲裁的重要性
Quorum 的目的是通过采取补救措施来应对意外情况,从而保持应用程序的可用性。它通过降低裂脑情况的风险并通过保持集群中所有节点之间的通信来减少停机时间来实现这一点。
集群中没有仲裁的情况下运行的风险
使用未配置 Quorum 的集群存在风险。以下场景将解决没有 Quorum 的影响以及实施 Quorum 的重要性。
场景 1:减少停机时间
当一个或多个系统由于不可避免的因素(例如崩溃或网络通信暂时故障)而无法使用时,可能会发生意外停机。
有了存储这样的仲裁或 TCP 远程配置,可以使用对存储设备和/或端口的访问来跟踪集群中的通信状态。此附加措施可以防止不必要的故障转移,从而避免造成长时间停机。在其他情况下,Quorum 将采取措施关闭或重新启动服务器以将其恢复到健康状态并避免更长的停机时间。
场景 2:脑裂
一个裂脑是指集群中的多个系统认为自己是主服务器。当主服务器与其辅助服务器失去通信,并且辅助服务器认为主系统已关闭时,就会发生这种情况。这会导致集群中出现两个活动的主系统。
如果配置了多数法定人数,则会提供另一个系统作为见证人,以投票决定哪个系统应该作为主系统,从而防止发生裂脑。
为什么适当的仲裁配置很重要
操作集群缺乏存储或多数仲裁是危险的,因为这会增加因裂脑和/或网络中断而导致数据丢失或长时间停机的风险。使用 Quroum 可以提供反制措施,确保集群始终健康,并适当处理任何不健康的系统。
立即联系 SIOS了解我们的高可用性解决方案如何帮助您以正确的方式配置仲裁并保护您的集群。
作者:Alexus Gore,SIOS Technology Corp. 客户体验软件工程师
经许可转载西欧斯