一、脑裂问题

同时在keepalived高可用集群中,出现了两个虚拟IP地址信息,这种情况就称为脑裂

1. 脑裂情况出现原因:

  • 心跳线出现问题
  • 网卡配置有问题
  • 交换设备有问题
  • 线缆连接有问题
  • 有防火墙软件阻止问题
  • virtual_router_id配置数值不正确

总之:只要备服务器收不到组播包,就会成为主,而主资源没有释放,就会出现脑裂

2. 控制思路

只要备用设备上有VIP了,就表示要么主备切换了,要么脑裂了,这两种情况都是我们需要监控的情况,所以可以利用zabbix或shell脚本监控备机上的VIP,一旦发现,立即告警

二、实现1:shell脚本

1
2
3
4
5
6
7
8
cat >/server/scripts/nginx_check.sh <<"EOF"
#!/bin/bash
check_info=$(ip a|grep -c 10.0.0.3)
if [ $check_info -ne 0 ]
then
echo "keepalived server error!!!"
fi
EOF

三、实现2:zabbix监控