微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法使用 keepalived 和 VRRP 设置浮动 IP

如何解决无法使用 keepalived 和 VRRP 设置浮动 IP

我有一台托管两个虚拟机的 ubuntu 机器,每个虚拟机都运行一个应用程序,为此我需要提供高可用性,所以我使用 keepalived 和 VRRP 实现了一个浮动 IP,但是我无法使用虚拟机 ping 主虚拟机来自主机的 IP,它说目标主机无法访问。

VM1 的keepalived.conf:

vrrp_instance VI_1 { 
    interface enp1s0 
    state MASTER                  #BACKUP here for VM2
    virtual_router_id 51 
    priority 200                  #100 in case of VM2
    advert_int 2 
    authentication { 
        auth_type PASS
        auth_pass monkey 
    } 
    virtual_ipaddress { 
        192.168.122.150/24
    }
}

当我启动 keepalived 服务时,它显示以下消息:

Dec 19 14:31:37 secondaryvm Keepalived_vrrp[1419]: UnkNown keyword '}'
Dec 19 14:31:37 secondaryvm Keepalived_vrrp[1419]: UnkNown keyword 'virtual_ipaddress'
Dec 19 14:31:37 secondaryvm Keepalived_vrrp[1419]: UnkNown keyword '192.168.122.150'
Dec 19 14:31:37 secondaryvm Keepalived_vrrp[1419]: UnkNown keyword '}'
Dec 19 14:31:37 secondaryvm Keepalived_vrrp[1419]: UnkNown keyword '}'
Dec 19 14:31:37 secondaryvm Keepalived_vrrp[1419]: Using LinkWatch kernel netlink reflector...
Dec 19 14:31:37 secondaryvm systemd[1]: Started Keepalive Daemon (LVS and VRRP).
Dec 19 14:31:39 secondaryvm Keepalived_vrrp[1419]: VRRP_Instance(VI_1) Transition to MASTER STATE
Dec 19 14:31:41 secondaryvm Keepalived_vrrp[1419]: VRRP_Instance(VI_1) Entering MASTER STATE
Dec 20 01:55:40 secondaryvm Keepalived_vrrp[1419]: VRRP_Instance(VI_1) Received advert with lower priori
~

解决方法

回答有点晚,但我自己也遇到了类似的问题。我一直收到一条错误消息,指出“vrrp_track_process”是一个未知关键字,即使在 1 个 VM 上工作而不是在其他 VM 上工作也是如此。 在查看“man keepalived.conf”时,我注意到一个虚拟机的文档中有“vrrp_track_process”,而其他虚拟机没有。因此需要更新包/回购。 很可能当前安装的软件包版本不支持使用的关键字。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。