本节介绍了高可用性 (HA) 在 NSX Advanced Load Balancer 控制器 集群中的运行方式。
仲裁数
控制器级 HA 需要启动仲裁数量的 NSX Advanced Load Balancer 控制器 节点。在三节点控制器集群中,如果启动了三个控制器节点中的至少两个节点,则可以保持仲裁。如果其中的一个控制器发生故障,其余两个节点将继续工作,并且 NSX Advanced Load Balancer 继续运行。不过,如果三个节点中的两个节点关闭,则整个集群将关闭,并且 NSX Advanced Load Balancer 停止工作。
故障切换
集群中的每个控制器节点使用 TCP 端口 22(如果作为 Docker 容器运行,则使用端口 5098)通过加密的 SSH 隧道定期向集群中的其他控制器节点发送检测信号消息。
检测信号间隔为 10 秒。可以丢失的最大连续检测信号消息数为四个。如果其中的一个控制器在 40 秒内没有从另一个控制器收到检测信号(丢失四个检测信号),则认为另一个控制器已关闭。
如果仅一个节点关闭,则仍会保持仲裁,并且集群可以继续运行。
如果从属节点关闭,但主节点保持启动状态,则可以继续访问虚拟服务而不会发生任何中断。
如果主节点关闭,成员节点将组成新的仲裁并选举集群主节点。选举过程大约需要 50-60 秒的时间,在此期间,对数据平面没有任何影响。SE 将继续以 Headless mode 运行,但无法使用控制平面服务。在此期间,您无法通过 LBaaS 创建 VIP,也无法使用 NSX Advanced Load Balancer 用户界面、API 或 CLI。