Разделить мозг с помощью Keepalived

У меня есть keepalived, который пытается удерживать VIP в конфигурации главный / подчиненный на 2 серверах.

Главный конфиг:

vrrp_script chk_haproxy {
   script "/usr/bin/killall -0 haproxy"
   interval 2
   weight 2
}

vrrp_instance NAME {
        interface ens224
        state MASTER
        virtual_router_id 70
        priority 104

        virtual_ipaddress {
            SOME_IP
        }

        track_script {
            chk_haproxy
        }

}

Конфигурация ведомого:

vrrp_script chk_haproxy {
   script "/usr/bin/killall -0 haproxy"
   interval 2
   weight 2
}

vrrp_instance scc_elastic {
        interface ens224
        state BACKUP
        virtual_router_id 70
        priority 103

        virtual_ipaddress {
            SOME_IP
        }

        track_script {
            chk_haproxy
        }

}

Но это вызывает расщепление мозга... то есть каждый из серверов показывает IP-адрес в "ip addr show". Как я могу предотвратить это? Я не знаю, как это диагностировать. У меня нет большого опыта работы с сетями.

Посмотрел таблицы ip:

Цепочка INPUT (policy ACCEPT) target prot opt ​​source destination

Цепочка FORWARD (policy ACCEPT) target prot opt ​​source destination

Цепочка OUTPUT (policy ACCEPT) target prot opt ​​source destination

Правил нет.

1 ответ

  1. Убедитесь, что у вас правильная конфигурация ядра:

    sudo sysctl -p

Результат:

net.ipv4.ip_forward = 1
net.ipv4.ip_nonlocal_bind = 1
net.ipv4.vs.conntrack = 1
  1. Вам необходимо убедиться, что трафик vrrp поступает на ведомое устройство от ведущего устройства, например

    sudo tcpdump -i ens224 host master_ip_address && proto vrrp

Результат:

 14:45:25.207338 IP master_ip_address > vrrp.mcast.net: VRRPv2, Advertisement, vrid 51, prio 101, authtype simple, intvl 10s, length
  1. Убедитесь, что iptables разрешает VRRP и многоадресную рассылку, за исключением случаев, когда вы используете одноадресную рассылку:

    sudo iptables -I INPUT -d 224.0.0.0/8 -j ПРИНЯТЬ

    sudo iptables -I INPUT -p vrrp -j ACCEPT

Другие вопросы по тегам