如何解决Keepalived 接口 Down-Up 行为
我在 RHEL 6.10 上使用 Keepalived v1.2.23
我有两台服务器。
Server1 配置:
vrrp_script check_database {
script "my_script"
interval 1
timeout 30
}
vrrp_instance VI_1 {
debug 2
interface eth0.460
state BACKUP
nopreempt
virtual_router_id 51
priority 101
unicast_src_ip 192.168.54.4
unicast_peer {
192.168.54.5
}
track_script {
check_database
}
}
Server2 配置:
vrrp_script check_database {
script "my_script"
interval 1
timeout 30
}
vrrp_instance VI_1 {
debug 2
interface eth0.460
state BACKUP
nopreempt
virtual_router_id 51
priority 100
unicast_src_ip 192.168.54.5
unicast_peer {
192.168.54.4
}
track_script {
check_database
}
}
通常情况下,一切正常,当服务器遇到任何问题时,Keepalived 会触发故障转移。但是在一种情况下存在问题。当我在界面测试中使用“ifdown 和 ifup”命令时,我不理解 Keepalived 的行为。
1.测试1
- 初始状态如下:
服务器 1:主
Server2:备份
- 我们假设接口“eth0.460”在 Server2 上崩溃了。
服务器 1:主
Server2:故障
Keepalived_vrrp[8687]: Netlink reflector reports IP 192.168.54.5 removed
Keepalived_healthcheckers[8687]: Netlink reflector reports IP 192.168.54.5 removed
ntpd[1951]: Deleting interface #469 eth0.460,192.168.54.5#123,interface stats: received=0,sent=0,dropped=0,active_time=14594 secs
Keepalived_vrrp[8687]: Kernel is reporting: interface eth0.460 DOWN
Keepalived_vrrp[8687]: Kernel is reporting: interface eth0.460 DOWN
Keepalived_vrrp[8687]: VRRP_Instance(VI_1) Now in FAULT state
- 问题解决后,会出现两种不同的行为。为什么 Server2 想成为 MASTER?
Server2 的第一个行为 - 预期
Keepalived_vrrp[8687]: Kernel is reporting: interface eth0.460 UP
Keepalived_vrrp[8687]: Kernel is reporting: tracked interface are UP
Keepalived_vrrp[8687]: VRRP_Instance(VI_1): Entering BACKUP STATE
Keepalived_vrrp[8687]: Netlink reflector reports IP 192.168.54.5 added.
Keepalived_healthcheckers[8686]: Netlink reflector reports IP 192.168.54.5 added.
Server2 的第二个行为 - 意外
Keepalived_vrrp[31531]: Kernel is reporting: interface eth0.460 UP
Keepalived_vrrp[31531]: VRRP_Instance(VI_1): Entering BACKUP STATE
Keepalived_vrrp[31531]: Netlink reflector reports IP 192.168.54.5 added
Keepalived_healthcheckers[31529]: Netlink reflector reports 192.168.54.5 added
Keepalived_vrrp[31531]: VRRP_Instance(VI_1) **Transition to MASTER STATE**
Keepalived_vrrp[31531]: VRRP_Instance(VI_1) **Received higher prio advert 101**
Keepalived_vrrp[31531]: VRRP_Instance(VI_1) Entering BACKUP STATE
2.测试2
- 初始状态如下:
服务器 1:备份
Server2:主
- 我们假设接口“eth0.460”在 Server1 上崩溃了。
服务器 1:故障
Keepalived_healthcheckers[9898]: Netlink reflector reports IP 192.168.54.4 removed
Keepalived_vrrp[9899]: Netlink reflector reports IP 192.168.54.4 removed
ntpd[1954]: Deleting interface #109 eth0.460,192.168.54.4#123,active_time=79741 secs
Keepalived_vrrp[9899]: Kernel is reporting: interface eth0.460 DOWN
Keepalived_vrrp[9899]: VRRP_Instance(VI_1) Now in FAULT state
Server2:主
- 问题解决后,会出现两种不同的行为。当 Server2 是 MASTER 时,为什么 Server1 变成 MASTER?
Server1 的第一个行为 - 预期
Keepalived_vrrp[9899]: Kernel is reporting: interface eth0.460 UP
Keepalived_vrrp[9899]: VRRP_Instance(VI_1): Entering BACKUP STATE
Keepalived_healthcheckers[9898]: Netlink reflector reports IP 192.168.54.4 added
Keepalived_vrrp[9899]: Netlink reflector reports IP 192.168.54.4 added
ntpd[1954]: Listen normally on 115 eth0.460 192.168.54.4 UDP 123
Server1 的第二个行为 - 意外
Keepalived_vrrp[25026]: Kernel is reporting: interface eth0.460 UP
Keepalived_vrrp[25026]: VRRP_Instance(VI_1): Entering BACKUP STATE
Keepalived_vrrp[25026]: Netlink reflector reports IP 192.168.54.4 added
Keepalived_healthcheckers[25025]: Netlink reflector reports IP 192.168.54.4 added
Keepalived_vrrp[25026]: VRRP_Instance(VI_1) Transition to MASTER STATE
Keepalived_vrrp[25026]: VRRP_Instance(VI_1) Entering MASTER STATE
ntpd[1954]: Listen normally on 99 eth0.460 192.168.54.4 UDP 123
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。