keepalived组播故障排查

虚拟机无法接收keepalived的vrrp组播

现象:

在Ubuntu1404的系统下安装了三台虚拟机,然后配置了一个简单的keepalived+haproxy服务。

结果启动后发现三台虚拟机都配上vip,keepalived.log日志中也未看见error的报错信息。

排查过程:

这些典型的脑裂(split brain)现象,一般来说先检查配置文件是否配的有问题。注意下virtual_router_id 的值。两边是否一样。

然后就是大杀器tcpdump出马了。

首先分别在三台机器执行

tcpdump -nn -c 20 -i any host 224.0.0.18

抓取20个VRRP包,正常输出应该如下:

15:30:25.406369 IP 192.168.70.99 > 224.0.0.18: VRRPv2, Advertisement, vrid 71, prio 1, authtype simple, intvl 1s, length 20
15:30:25.406440 IP 192.168.70.99 > 224.0.0.18: VRRPv2, Advertisement, vrid 71, prio 1, authtype simple, intvl 1s, length 20
15:30:25.406369 IP 192.168.70.99 > 224.0.0.18: VRRPv2, Advertisement, vrid 71, prio 1, authtype simple, intvl 1s, length 20

如果有输出,查看IP后面字段,在本次故障中,这里只有本机的IP,这说明vrrp包是正常发送出去的,但是没有收到其他机器的vrrp包,说明可能接收组播有问题。

然后再找一台同网段的机器,执行:

tcpdump -nn  -i any host 224.0.0.18

收集一段时间(这时候也可以注意下vrid有没有与别人的冲突),发现三台机的vrrp包都抓到了,说明三台机都能成功发出组播来,但是各自都没有收到。

由于手上也没有iperf工具,也没有做其他的排查,但是基本上也知道是内核参数的设置或者网卡的问题了。

原因:

由于这个系统在其他机器上是正常的,检查发现是在使用virt-manager新建虚拟机的时候,选择nat网卡模式,这种情况需要手动新建br网卡,再使用桥接模式才能成功。

补充:

防火墙开放vrrp包:

#iptables -I INPUT -i eth0 -d 224.0.0.0/8 -p vrrp -j ACCEPT
# iptables -I OUTPUT -o eth0 -d 224.0.0.0/8 -p vrrp -j ACCEPT

内核开启转发:

# echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
# sysctl -p
时间: 2024-08-02 10:47:35

keepalived组播故障排查的相关文章

keepalived 组播的配置

keepalived 组播的配置 准备主机2台 server hostname ip keepalived s1 172.20.27.10 keepalived s2 172.20.27.11 S1节点配置 修改keepalived配置文件 [[email protected] ~]# vim /etc/keepalived/keepalived.conf ! Configuration File for keepalived global_defs { notification_email {

keepalived漂移VIP故障

keepalived + lvs  172.16.30.31  master 172.16.30.32  backup 172.16.30.10  vip 故障:监控显示keepalived master主机故障:通过ping查看vip存在.master重启以后,VIP漂移回master. 偶然间,重启master网卡发现,vip漂移backup以后,无法漂移回master:需重启master-keealived服务,VIP才可漂移回master. master: message May  9 

mDNS故障排查(译)

Troubleshoot and Understand mDNS Gateway on Wireless LAN Controller (WLC) 第一部分:介绍 这篇文档描述了Bonjour协议在WLC上的操作,该文档旨在协助工程师理解该工作流量的原理以及提供故障排查的指导. 第二部分:需求和前提 知识需求: Cisco建议你对Bonjour协议.在WLC配置mDNS.以及多播路由有一定的基础知识,以便你能更好的理解. 设备组件: 该文档是基于如下设备和相关软件版本完成的: AIR-CT250

51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程(高俊峰)

51CTO学习笔记--Linux运维故障排查思路与系统调优技巧视频课程 第一课 Linux运维经验分享与思路 1.一般把主机名,写到hosts下    127.0.0.1    hostname,因为很多应用要解析到本地.oracle没有这个解析可能启动不了. 2.注释掉UUID以及MAC地址,需要绑定网卡的时候,这个可能会有影响. 3.磁盘满了无法启动,  var下木有空间,无法创创建PID等文件,导致文件无法启动,按e   进入single  然后b  重启进入单用户模式. 4.ssh登陆系

[linux]df 磁盘100%Used告警,du显示目录状态良好的故障排查

1.回顾: 某在线主机深夜连续接到告警系统的disk Used 超限告警. 登陆主机查看却遇到了困惑:在检查磁盘使用量 df –h 出来的磁盘使用量确实和告警信息一样,已经被100%占用,但是查看目录大小 du 时,却显示实际目录大小并非这样,而是有很大空闲空间. 如图:磁盘用量 df –h 结果为100%Used, 目录实际总大小 du –h –max-depth=1,显示总目录大小为60k,几乎可以忽略的使用比例. [知识准备] [linux] lsof 命令了解: lsof(list op

Rsync 12种故障排查及思路

Rsync 故障排查整理 Rsync服务常见问题汇总讲解: ============================================================================================== 1 客户端的错误现象:No route to host rsync服务端开启的iptables防火墙 [[email protected] tmp]# rsync -avz /etc/hosts [email protected]::backup r

RPC、RMI与MOM与组播 通信原理

转:http://blog.csdn.net/you12345678901234567/article/details/7625797 远程过程调用(RPC): 即对远程站点机上的过程进行调用.当站点机A上的一个进程调用另一个站点机上的过程时,A上的调用进程挂起,B上的被调用过程执行,并将结果返回给调用进程,使调用进程继续执行[B上的被调用过程的参数和执行结果在调用和被调用进程之间是通过消息传递来实现的,表现为C/S关系] 为实现不同站点机上的RPC,调用和被调用进程各方都要保留一个用于存放过程

SQL Server 2008性能故障排查(一)——概论

原文:SQL Server 2008性能故障排查(一)--概论 备注:本人花了大量下班时间翻译,绝无抄袭,允许转载,但请注明出处.由于篇幅长,无法一篇博文全部说完,同时也没那么快全部翻译完,所以按章节发布.由于本人水平有限,翻译结果肯定存在问题,为了不造成误导,在每篇结尾处都附上原文,供大家参考,也希望能指出我的问题,以便改进.谢谢. 另外,本文写给稍微有经验的数据库开发人员或者DBA看,初学者可能会看不懂.在此请见谅 作者:Sunil Agarwal, Boris Baryshnikov, K

SQL Server 2008性能故障排查(二)——CPU

原文:SQL Server 2008性能故障排查(二)--CPU 承接上一篇:SQL Server 2008性能故障排查(一)--概论 说明一下,CSDN的博客编辑非常不人性化,我在word里面都排好了版,贴上来就乱得不成样了.建议CSDN改进这部分.也请大家关注内容不要关注排版.同时在翻译的过程中本人也整理了一次思路,所以还似乎非常愿意翻译,虽然有点自娱自乐,但是分享给大家也是件好事 CPU 瓶颈: CPU瓶颈可能因为某个负载所需的硬件资源不足而引起.但是过多的CPU使用通常可以通过查询优化(