如题所示,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 30 router_id LVS_DEVEL vrrp_skip_check_adv_addr vrrp_strict vrrp_garp_interval 0 vrrp_gna_interval 0 } vrrp_instance VI_1 { state BACKUP interface eth0 virtual_router_id 79 priority 100 advert_int 1 nopreempt authentication { auth_type PASS auth_pass 1111 } virtual_ipaddress { 192.168.100.10 } } virtual_server 192.168.100.10 3306 { delay_loop 6 lb_algo rr lb_kind DR persistence_timeout 50 protocol TCP real_server 192.168.100.1 3306 { weight 3 notify_down /etc/keepalived/kill_keepalived.sh TCP_CHECK { connect_timeout 10 nb_get_retry 3 delay_before_retry 3 connect_port 3306 } } }