热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

KeepalivedVIP漂移故障分析与解决

在分析和解决KeepalivedVIP漂移故障的过程中,我们发现主备节点配置如下:主节点IP为172.16.30.31,备份节点IP为172.16.30.32,虚拟IP为172.16.30.10。故障表现为监控系统显示Keepalived主节点状态异常,导致VIP漂移到备份节点。通过详细检查配置文件和日志,我们发现主节点上的Keepalived进程未能正常运行,最终通过优化配置和重启服务解决了该问题。此外,我们还增加了健康检查机制,以提高系统的稳定性和可靠性。
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 10:47:06 sd3031 Keepalived_healthcheckers[31967]: Netlink reflector reports IP 172.16.30.31 removed
May  9 10:47:06 sd3031 Keepalived_vrrp[31968]: Netlink reflector reports IP 172.16.30.31 removed
May  9 10:47:06 sd3031 Keepalived_vrrp[31968]: Netlink reflector reports IP 172.16.30.10 removed
May  9 10:47:06 sd3031 Keepalived_healthcheckers[31967]: Netlink reflector reports IP 172.16.30.10 removed
May  9 10:47:06 sd3031 avahi-daemon[3924]: Withdrawing address record for 172.16.30.31 on eth0.
May  9 10:47:06 sd3031 avahi-daemon[3924]: Leaving mDNS multicast group on interface eth0.IPv4 with address 172.16.30.31.
May  9 10:47:06 sd3031 avahi-daemon[3924]: Joining mDNS multicast group on interface eth0.IPv4 with address 172.16.30.10.
May  9 10:47:06 sd3031 avahi-daemon[3924]: IP_ADD_MEMBERSHIP failed: No such device
May  9 10:47:06 sd3031 avahi-daemon[3924]: Withdrawing address record for 172.16.30.10 on eth0.
May  9 10:47:06 sd3031 avahi-daemon[3924]: Interface eth0.IPv4 no longer relevant for mDNS.
May  9 10:47:06 sd3031 kernel: bnx2 0000:0b:00.0: eth0: using MSIX
May  9 10:47:06 sd3031 Keepalived_vrrp[31968]: Kernel is reporting: interface eth0 DOWN
May  9 10:47:06 sd3031 Keepalived_vrrp[31968]: VRRP_Instance(VI_1) Entering FAULT STATE
May  9 10:47:06 sd3031 Keepalived_vrrp[31968]: VRRP_Instance(VI_1) removing protocol VIPs.
May  9 10:47:06 sd3031 Keepalived_vrrp[31968]: Netlink: error: Cannot assign requested address, type=(21), seq=1494298005, pid=0
May  9 10:47:06 sd3031 Keepalived_vrrp[31968]: VRRP_Instance(VI_1) Now in FAULT state
May  9 10:47:07 sd3031 Keepalived_healthcheckers[31967]: TCP socket bind failed. Rescheduling.
May  9 10:47:09 sd3031 kernel: bnx2 0000:0b:00.0: eth0: NIC Copper Link is Up, 1000 Mbps full duplex
May  9 10:47:09 sd3031 Keepalived_healthcheckers[31967]: TCP socket bind failed. Rescheduling.
May  9 10:47:09 sd3031 last message repeated 2 times
May  9 10:47:10 sd3031 Keepalived_vrrp[31968]: Kernel is reporting: interface eth0 UP
May  9 10:47:10 sd3031 Keepalived_vrrp[31968]: cant do IP_ADD_MEMBERSHIP errno=No such device (19)
May  9 10:47:10 sd3031 Keepalived_vrrp[31968]: Netlink reflector reports IP 172.16.30.31 added
May  9 10:47:10 sd3031 Keepalived_healthcheckers[31967]: Netlink reflector reports IP 172.16.30.31 added
May  9 10:47:10 sd3031 avahi-daemon[3924]: New relevant interface eth0.IPv4 for mDNS.
May  9 10:47:10 sd3031 avahi-daemon[3924]: Joining mDNS multicast group on interface eth0.IPv4 with address 172.16.30.31.
May  9 10:47:10 sd3031 avahi-daemon[3924]: Registering new address record for 172.16.30.31 on eth0.
master重启网卡以后,keepalived在eth0网卡up状态,但是未获取到ip地址的时候,无法进行组播。
出现异常
May  9 10:47:10 sd3031 Keepalived_vrrp[31968]: Kernel is reporting: interface eth0 UP
May  9 10:47:10 sd3031 Keepalived_vrrp[31968]: cant do IP_ADD_MEMBERSHIP errno=No such device (19)
May  9 10:47:10 sd3031 Keepalived_vrrp[31968]: Netlink reflector reports IP 172.16.30.31 added
keepalived进行服务之间内部通信,需要网卡IP做支撑,此出,网卡未有IP,keepalived之间通信失败。
master与backup之间通信失败,导致vip未进行漂移。
修改了keepalived.conf
vrrp_instance ** {
advert_int 2          #修改此项,为keepalived之间组播间隔时间。
}
将默认1修改为2
重启master网卡
master_message.log
May  9 11:03:30 sd3031 Keepalived_healthcheckers[5463]: Netlink reflector reports IP 172.16.30.31 removed
May  9 11:03:30 sd3031 avahi-daemon[3924]: Withdrawing address record for 172.16.30.31 on eth0.
May  9 11:03:30 sd3031 Keepalived_healthcheckers[5463]: Netlink reflector reports IP 172.16.30.10 removed
May  9 11:03:30 sd3031 avahi-daemon[3924]: Leaving mDNS multicast group on interface eth0.IPv4 with address 172.16.30.31.
May  9 11:03:30 sd3031 Keepalived_vrrp[5464]: Netlink reflector reports IP 172.16.30.31 removed
May  9 11:03:30 sd3031 Keepalived_vrrp[5464]: Netlink reflector reports IP 172.16.30.10 removed
May  9 11:03:30 sd3031 avahi-daemon[3924]: Joining mDNS multicast group on interface eth0.IPv4 with address 172.16.30.10.
May  9 11:03:30 sd3031 avahi-daemon[3924]: IP_ADD_MEMBERSHIP failed: No such device
May  9 11:03:30 sd3031 avahi-daemon[3924]: Withdrawing address record for 172.16.30.10 on eth0.
May  9 11:03:30 sd3031 avahi-daemon[3924]: Interface eth0.IPv4 no longer relevant for mDNS.
May  9 11:03:30 sd3031 Keepalived_vrrp[5464]: Kernel is reporting: interface eth0 DOWN
May  9 11:03:30 sd3031 Keepalived_vrrp[5464]: VRRP_Instance(VI_1) Entering FAULT STATE
May  9 11:03:30 sd3031 Keepalived_vrrp[5464]: VRRP_Instance(VI_1) removing protocol VIPs.
May  9 11:03:30 sd3031 Keepalived_vrrp[5464]: Netlink: error: Cannot assign requested address, type=(21), seq=1494298989, pid=0
May  9 11:03:30 sd3031 Keepalived_vrrp[5464]: VRRP_Instance(VI_1) Now in FAULT state
May  9 11:03:30 sd3031 kernel: bnx2 0000:0b:00.0: eth0: using MSIX
May  9 11:03:32 sd3031 Keepalived_healthcheckers[5463]: TCP socket bind failed. Rescheduling.
May  9 11:03:33 sd3031 kernel: bnx2 0000:0b:00.0: eth0: NIC Copper Link is Up, 1000 Mbps full duplex
May  9 11:03:34 sd3031 Keepalived_healthcheckers[5463]: TCP socket bind failed. Rescheduling.
May  9 11:03:34 sd3031 Keepalived_healthcheckers[5463]: TCP socket bind failed. Rescheduling.
May  9 11:03:34 sd3031 Keepalived_healthcheckers[5463]: Netlink reflector reports IP 172.16.30.31 added
May  9 11:03:34 sd3031 Keepalived_vrrp[5464]: Netlink reflector reports IP 172.16.30.31 added
May  9 11:03:34 sd3031 avahi-daemon[3924]: New relevant interface eth0.IPv4 for mDNS.
May  9 11:03:34 sd3031 avahi-daemon[3924]: Joining mDNS multicast group on interface eth0.IPv4 with address 172.16.30.31.
May  9 11:03:35 sd3031 avahi-daemon[3924]: Registering new address record for 172.16.30.31 on eth0.
May  9 11:03:37 sd3031 Keepalived_vrrp[5464]: Kernel is reporting: interface eth0 UP
May  9 11:03:37 sd3031 Keepalived_vrrp[5464]: VRRP_Instance(VI_1) Transition to MASTER STATE
May  9 11:03:37 sd3031 Keepalived_vrrp[5464]: VRRP_Instance(VI_1) Entering MASTER STATE
May  9 11:03:37 sd3031 Keepalived_vrrp[5464]: VRRP_Instance(VI_1) setting protocol VIPs.
May  9 11:03:37 sd3031 Keepalived_vrrp[5464]: VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for 172.16.30.10
May  9 11:03:37 sd3031 Keepalived_healthcheckers[5463]: Netlink reflector reports IP 172.16.30.10 added
May  9 11:03:37 sd3031 avahi-daemon[3924]: Registering new address record for 172.16.30.10 on eth0.
May  9 11:03:37 sd3031 Keepalived_vrrp[5464]: Netlink reflector reports IP 172.16.30.10 added
backup_message-log
May  9 11:03:35 sd3032 Keepalived_vrrp[26277]: VRRP_Instance(VI_1) Transition to MASTER STATE
May  9 11:03:35 sd3032 Keepalived_vrrp[26277]: VRRP_Instance(VI_1) Entering MASTER STATE
May  9 11:03:35 sd3032 Keepalived_vrrp[26277]: VRRP_Instance(VI_1) setting protocol VIPs.
May  9 11:03:35 sd3032 Keepalived_vrrp[26277]: VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for 172.16.30.10
May  9 11:03:35 sd3032 Keepalived_vrrp[26277]: Netlink reflector reports IP 172.16.30.10 added
May  9 11:03:35 sd3032 Keepalived_healthcheckers[26275]: Netlink reflector reports IP 172.16.30.10 added
May  9 11:03:35 sd3032 avahi-daemon[3963]: Registering new address record for 172.16.30.10 on eth0.
May  9 11:03:40 sd3032 Keepalived_vrrp[26277]: VRRP_Instance(VI_1) Sending gratuitous ARPs on eth0 for 172.16.30.10
May  9 11:04:05 sd3032 Keepalived_vrrp[26277]: VRRP_Instance(VI_1) Received higher prio advert
May  9 11:04:05 sd3032 Keepalived_vrrp[26277]: VRRP_Instance(VI_1) Entering BACKUP STATE
May  9 11:04:05 sd3032 Keepalived_vrrp[26277]: VRRP_Instance(VI_1) removing protocol VIPs.
May  9 11:04:05 sd3032 Keepalived_healthcheckers[26275]: Netlink reflector reports IP 172.16.30.10 removed
May  9 11:04:05 sd3032 Keepalived_vrrp[26277]: Netlink reflector reports IP 172.16.30.10 removed
May  9 11:04:05 sd3032 avahi-daemon[3963]: Withdrawing address record for 172.16.30.10 on eth0.
VIP正常漂移

本文出自 “运维笔记” 博客,请务必保留此出处http://phospherus.blog.51cto.com/7824598/1923725

keepalived漂移VIP故障


推荐阅读
  • 本文介绍了SIP(Session Initiation Protocol,会话发起协议)的基本概念、功能、消息格式及其实现机制。SIP是一种在IP网络上用于建立、管理和终止多媒体通信会话的应用层协议。 ... [详细]
  • 本文将从基础概念入手,详细探讨SpringMVC框架中DispatcherServlet如何通过HandlerMapping进行请求分发,以及其背后的源码实现细节。 ... [详细]
  • importjava.io.*;importjava.util.*;publicclass五子棋游戏{staticintm1;staticintn1;staticfinalintS ... [详细]
  • 本文详细探讨了BCTF竞赛中窃密木马题目的解题策略,重点分析了该题目在漏洞挖掘与利用方面的技巧。 ... [详细]
  • 在1995年,Simon Plouffe 发现了一种特殊的求和方法来表示某些常数。两年后,Bailey 和 Borwein 在他们的论文中发表了这一发现,这种方法被命名为 Bailey-Borwein-Plouffe (BBP) 公式。该问题要求计算圆周率 π 的第 n 个十六进制数字。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • publicclassBindActionextendsActionSupport{privateStringproString;privateStringcitString; ... [详细]
  • 本文介绍了如何通过C#语言调用动态链接库(DLL)中的函数来实现IC卡的基本操作,包括初始化设备、设置密码模式、获取设备状态等,并详细展示了将TextBox中的数据写入IC卡的具体实现方法。 ... [详细]
  • 如何在PHP中安装Xdebug扩展
    本文介绍了如何从PECL下载并编译安装Xdebug扩展,以及如何配置PHP和PHPStorm以启用调试功能。 ... [详细]
  • 心理学经典:《思考致富》
    《思考致富》是由美国著名成功学大师拿破仑·希尔撰写的一部重要著作,该书基于希尔长达20年的深入研究和访谈,探讨了个人成功的核心要素。书中不仅揭示了成功的关键,还提供了一系列实用的方法和策略。 ... [详细]
  • empty,isset首先都会检查变量是否存在,然后对变量值进行检测。而is_null只是直接检查变量值,是否为null,因此如果变量未定义就会出现错误!检测一个变量是否是null ... [详细]
  • 在处理大数据量的SQL分页查询时,通常需要执行两次查询来分别获取数据和总记录数。本文介绍了一种优化方法,通过单次查询同时返回分页数据和总记录数,从而提高查询效率。 ... [详细]
  • 本文通过一个具体的实例,介绍如何利用TensorFlow框架来计算神经网络模型在多分类任务中的Top-K准确率。代码中包含了随机种子设置、模拟预测结果生成、真实标签生成以及准确率计算等步骤。 ... [详细]
  • 嵌套列表的扁平化处理
    本文介绍了一种方法,用于遍历嵌套列表中的每个元素。如果元素是整数,则将其添加到结果数组中;如果元素是一个列表,则递归地遍历这个列表。此方法特别适用于处理复杂数据结构中的嵌套列表。 ... [详细]
  • 1#include2#defineM1000103#defineRGregister4#defineinf0x3f3f3f3f5usingnamespacestd;6boolrev ... [详细]
author-avatar
勋酥-osh海州吴氏
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有