如题所示,keepalived安装配置好之后能够正常启动,但是虚IP并没有生成。接着检查防火墙(iptables)发现也没有相关的限制。稍微郁闷了一下之后,查看了keepalived日志文件,这次成功发现了问题所在:
keepalived的日志文件路径:/var/log/messages
相关的日志信息如下:
可以发现,出现这个问题的原因在于我在keepalived.conf配置文件中将virtual_router_id参数设置了默认id——51,然后同一内网内还有其它keepalived集群也设置了51这个默认路由id,因此keepalived报“目前xxx这个虚拟IP不能绑定到51这个路由id上”的错误。
解决方案
将keepalived.conf文件中的virtual_router_id参数设置成其它即可,如:79、89、101。只要取值范围在取值0-255就行。
注:修改之后的keepalived.conf文件如下:
! Configuration File for keepalived global_defs {
notification_email {
acassen@firewall.loc
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from Alexandre.Cassen@firewall.loc
#smtp_server 192.168.100.1
#smtp_connect_timeout
router_id LVS_DEVEL
vrrp_skip_check_adv_addr
vrrp_strict
vrrp_garp_interval
vrrp_gna_interval
} vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id 79
priority
advert_int
nopreempt
authentication {
auth_type PASS
auth_pass
}
virtual_ipaddress {
192.168.100.10
}
} virtual_server 192.168.100.10 {
delay_loop
lb_algo rr
lb_kind DR
persistence_timeout
protocol TCP real_server 192.168.100.1 {
weight
notify_down /etc/keepalived/kill_keepalived.sh
TCP_CHECK {
connect_timeout
nb_get_retry
delay_before_retry
connect_port
}
}
}