keepalived脑裂现象解决

keepalived脑裂现象解决

首页休闲益智脑裂更新时间:2024-04-29

在上一篇文章中,我们上面可以看到,MASTER和BACKUP上执行ip addr都可以看到VIP,很明显是有问题的。

数据包抓取看看

安装tcpdump命令(没有的话)

yum install tcpdump

[root@localhost sbin]# tcpdump -i ens33 vrrp -n tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes 04:13:38.770655 IP 192.168.192.12 > 224.0.0.18: VRRPv2, Advertisement, vrid 13, prio 80, authtype simple, intvl 2s, length 20 04:13:39.484837 IP 192.168.192.11 > 224.0.0.18: vrrpv2, Advertisement, vrid 13, prio 110, authtype simple, intvl 2s, length

检查发现 11和12都在对224.0.0.18发送消息。Keepalived使用vrrp组播,默认地址是224.0.0.18.但是在正常情况下,备节点如果收到主节点的心跳消息时,优先级高于自己,就不会主动对外发送消息。

考虑到,该主机启用了firewalld防火墙,因此要防火墙配置放过vrrp协议。

firewall-cmd --direct --permanent --add-rule ipv4 filter INPUT 0 --destination 224.0.0.18 --protocol vrrp -j ACCEPT firewall-cmd --direct --permanent --add-rule ipv4 filter OUTPUT 0 --destination 224.0.0.18 --protocol vrrp -j ACCEPT firewall-cmd --reload

完成后再用ip addr查看,集群已经正常了,只有主节点绑定虚拟IP,备份节点不会绑定了。

tcpdump -i ens33 vrrp -n

[root@localhost sbin]# tcpdump -i ens33 vrrp -n tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on ens33, link-type EN10MB (Ethernet), capture size 262144 bytes 04:25:26.669848 IP 192.168.192.11 > 224.0.0.18: VRRPv2, Advertisement, vrid 13, prio 110, authtype simple, intvl 2s, length 20 04:25:28.679560 IP 192.168.192.11 > 224.0.0.18: VRRPv2, Advertisement, vrid 13, prio 110, authtype simple, intvl 2s, length 20

发现12就不会对224.0.0.18发送消息了。

再看ip addr 发现只有11Master才有虚拟IP 13了。

查看全文
大家还看了
也许喜欢
更多游戏

Copyright © 2024 妖气游戏网 www.17u1u.com All Rights Reserved