docker部署系统中的keepalived,在系统重启后不协商问题解决
在系统不重启的情况下能正常切换,重启后,不能重新协商,日志报错:
Keepalived_vrrp[232708]: Netlink: filter function error
Keepalived_healthcheckers[232707]: Netlink: filter function error
原因分析:宿主机系统启动后,由于docker加载接口慢,导致keepalived启动时,网口还未全部UP;如果接口不启动,keepalived会认为错误,导致无法正常启动。
解决:
1.更改宿主机的udev和docker的启动顺序,保证docker在udev之后启动;
2.keepalived启动时,sleep30秒,保证网口启动完毕再启动keepalived。