如何通过分析 Keepalived 日志快速定位双机热备 VIP 漂移异常根因

千晨同学_7778

千晨同学_7778

2026-05-23

706人浏览

原创

直接分析keepalived日志中的状态变更、vrrp通信失败、认证异常和脚本返回值四类关键信息,结合journalctl过滤与tcpdump等验证手段,可快速定位vip漂移故障根因。

如何通过分析 keepalived 日志快速定位双机热备 vip 漂移异常根因

直接看日志里的关键状态变化和错误提示,比盲目查配置更高效。Keepalived 日志默认输出到系统日志(syslog),核心线索集中在状态切换、VRRP 报文收发失败、脚本执行结果和认证异常这几类信息上。

关注四类关键日志条目

Keepalived 启动或运行中产生的日志里,真正影响 VIP 漂移的只有少数几类。重点盯住以下内容:

  • 状态变更记录:如 Entering MASTER STATE、Entering BACKUP STATE、Transition to MASTER STATE。若主备节点日志中都出现 Entering MASTER STATE,基本可判定已发生双主;若备机始终没这条日志,说明它根本没完成状态提升。
  • VRRP 通信失败提示:常见如 Received advert with lower priority, ignoring(收到低优先级通告,忽略)、No VRRP advertisements received(未收到任何通告)、Lost communication with master(与主节点失联)。后两者往往指向网络不通或防火墙拦截。
  • 认证失败信息:如 Authentication failure 或 Invalid authentication type。说明主备节点的 authentication 块配置不一致(比如一个用 PASS,一个用 AH;或密码长度超限、含不可见字符)。
  • 脚本跟踪异常:如果用了 vrrp_script + track_script,留意类似 Track script returned 1 或 Script result: 0 (OK) 的输出。返回非 0 值会触发 weight 调整,可能意外拉低主节点优先级,导致其降为 BACKUP。

用 journalctl 快速过滤有效信息

别翻完整日志。用带时间范围和关键词的命令直击问题时段:

  • 查最近5分钟所有 Keepalived 状态变化:journalctl -u keepalived --since "5 minutes ago" | grep -E "(MASTER|BACKUP|advert|auth|script)"
  • 对比主备节点是否同步看到对方通告:journalctl -u keepalived --since "10 minutes ago" | grep "Received advert" —— 主节点日志应有“Received advert from X.X.X.X”,备节点也应有类似记录;若只有一方有,说明单向通信中断。
  • 检查启动阶段是否报错:journalctl -u keepalived --no-pager -n 50,看最末尾几十行有没有 invalid、syntax error、interface not found 类提示。

结合日志交叉验证网络与配置

日志只是线索,需配合基础检查确认根因:

  • 若日志显示 No VRRP advertisements received,立刻在两节点执行:tcpdump -i eth0 -n port 112 -c 5,确认是否有 VRRP 报文进出。没有则查防火墙、rp_filter、交换机组播限制。
  • 若日志频繁出现 Authentication failure,直接比对主备配置中 authentication { auth_type PASS; auth_pass 123456; } 是否完全一致(注意空格、换行、特殊字符)。
  • 若日志里 track_script 返回值异常,手动执行对应脚本(如 /etc/keepalived/check_nginx.sh),看退出码和输出是否符合预期。

留意 silent fail 场景:日志里“没报错”反而是线索

有些问题不会报错,但日志会暴露异常沉默:

  • 主节点日志持续刷 Send advert,但备节点日志里完全没 Received advert —— 典型网络隔离,不是配置问题。
  • 重启后两节点日志几乎同时出现 Entering MASTER STATE,且无任何 Lost communication 提示 —— 很可能是双 BACKUP 配置 + 启动竞争,而非网络故障。
  • 日志中长期只有 Using LinkWatch kernel netlink reflector 类初始化信息,后续再无状态更新 —— 可能 keepalived 进程卡住或被 systemd 限制了资源(查 systemctl show keepalived | grep Memory)。
PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.15

457

5

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

2023.09.08

940

5

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2023.09.19

3072

5

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.09

1016

5

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.17

909

5

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

2023.10.17

474

3

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

2796

4

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

2023.10.20

5232

4

宽带如何接入服务器
宽带如何接入服务器

宽带接入服务器的方法有ADSL宽带接入服务器、光纤接入服务器、无线接入服务器和以太网接入服务器等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.20

827

5

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.7万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.9万人学习