Назад | Перейти на главную страницу

Keepalived отправляет как одноадресные, так и многоадресные объявления VRRP

У меня есть три кластера серверов поддержки активности, по два экземпляра в каждом кластере, каждый кластер с уникальным VIP и идентификатором маршрутизатора. Два из них отлично работают с одноадресной рекламой VRRP, но один ... нет.

Итак, мы скажем ради этого вопроса, что два кластерных экземпляра machine1.domain и machine2.domain. Вот конфигурация keepalived для machine1.domain:

vrrp_instance VI_1 {
    state MASTER
    notify /usr/local/bin/keepalived-notify.sh
    virtual_router_id 55
    interface eth0
    unicast_src_ip 192.168.0.12
    unicast_peer {
        192.168.0.13
    }
    priority 255
    authentication {
        ...
    }
    virtual_ipaddress {
        192.168.0.14
    }
    track_script {
        chk_haproxy
    }
}

Чтобы прямо заявить об этом, machine1.domain имеет назначенный IP 192.168.0.12 и machine2.domain имеет 192.168.0.13 с VIP-персоной 192.168.0.14.

Когда я бегу tcpdump -i eth0 | grep "vrid 55", вот что я получаю:

sudo tcpdump -i eth0 | grep "vrid 55"
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
14:09:03.386420 IP machine1.domain > machine2.domain: VRRPv2, Advertisement, vrid 55, prio 255, authtype simple, intvl 1s, length 20
14:09:03.738807 IP VIP.domain > vrrp.mcast.net: VRRPv2, Advertisement, vrid 55, prio 100, authtype none, intvl 1s, length 20
14:09:04.387364 IP machine1.domain > machine2.domain: VRRPv2, Advertisement, vrid 55, prio 255, authtype simple, intvl 1s, length 20
14:09:04.740211 IP VIP.domain > vrrp.mcast.net: VRRPv2, Advertisement, vrid 55, prio 100, authtype none, intvl 1s, length 20
14:09:05.388325 IP machine1.domain > machine2.domain: VRRPv2, Advertisement, vrid 55, prio 255, authtype simple, intvl 1s, length 20
14:09:05.740435 IP VIP.domain > vrrp.mcast.net: VRRPv2, Advertisement, vrid 55, prio 100, authtype none, intvl 1s, length 20

Таким образом, keepalived отправляет многоадресные сообщения на VIP и одноадресные сообщения на machine1.domainIP-адрес экземпляра. Я перезапустил службу поддержки активности, перезагрузил ее, остановил, перезапустил экземпляр и т. Д. Он всегда возвращается в широковещательном режиме как при одноадресной, так и при многоадресной передаче.

Кроме того, все экземпляры во всех трех моих кластерах настраиваются через chef. Все они имеют идентичные конфигурации, просто замените три IP-адреса и идентификатор маршрутизатора в конфигурации keepalived.

Спасибо за любую помощь, которую вы можете оказать. Я понятия не имею, что вызвало это, есть идеи?