keepalived脑裂

keepalived脑裂

什么是脑裂?

脑裂(split-brain):指在一个高可用(HA)集群中,当联系着的两个节点断开联系时,本来为一个整体的系统,分裂为两个独立节点,这时两个节点开始争抢共享资源,结果会导致系统混乱,数据损坏。

:对有状态服务(比如MySQL)的HA,必须要严格防止脑裂。

keepalived脑裂

在keepalived集群中,backup node与master node失去联系,不能确定master node是否存活,给自己也配置一个VIP,使得整个系统存在两个VIP地址。

keepalived脑裂产生原因

①master node和backup node心跳线链路发生故障,导致无法正常通信。

②master node和backup node开启了iptables防火墙阻挡了心跳消息传输。

③master node和backup node心跳网卡地址等信息配置不正确,导致发送心跳失败。

④其他服务配置不当等原因,如心跳方式不同,心跳广插冲突、软件Bug等。

⑤Keepalived配置里同一 VRRP实例如果virtual_router_id两端参数配置不一致也会导致裂脑问题发生。

keepalived脑裂的解决办法

(1)硬件设施网线:

  • 同时使用串行电缆和以太网电缆连接,同时用两条心跳线路,这样一条线路坏了,另一个还是好的,依然能传送心跳消息。

(2)划分一个专门的VLAN用于master node和backup node发送心跳
keepalived脑裂_第1张图片

  • 专门的VLAN,让master node和backup node检测交换机的网关IP等
  • 或者master node和backup node直连,另一个网卡设备专用检测。

(3)仲裁设备

  • 第三方设备检测,做好对裂脑的监控报警(如邮件及手机短信等或值班).在问题发生时人为第一时间介入仲裁,降低损失。

你可能感兴趣的:(keepalived)