Могу ли я в Heartbeat настроить его так, чтобы виртуальные IP-адреса на разных интерфейсах были связаны вместе, когда дело доходит до аварийного переключения? Например с:
foo1 8.8.8.1/24/eth0 10.0.0.1/24/eth1
Если eth0
если произойдет сбой, и foo2 подхватит его, то же самое произойдет и с eth1
так как eth0
не смогли. То же самое будет верно и для обратного.
Да. У меня есть набор внешних VIP, «соединенных» с набором внутренних VIP, которые имеют то же самое требование. У меня тоже работает отработка отказа в обоих направлениях.
Вот посмотрите на мою конфигурацию и некоторые пояснения. Я отредактировал публичные IP-адреса.
server1 10.0.9.1/24/eth0/10.0.9.255
server2 10.0.9.4/24/eth0/10.0.9.255
server1 x.y.z.2/27/eth0/x.y.z.31
server2 x.y.z.25/27/eth0/x.y.z.31
Итак, есть два внутренних плавающих VIP: 10.0.9.1/24 и 10.0.9.4/24. 10.0.9.1/24 является основным на server1, а 10.0.9.4/24 является основным на server2.
Для внешних виртуальных IP-адресов x.y.z.2 / 27 является основным на server1, а x.y.z.25 / 27 является основным на server2.
Я только что понял это, но я без проблем использую интерфейс eth0 для всех этих IP-адресов. На самом деле сеть x.y.z.0 / 27 физически подключается к eth1. Дать ему шанс.
РЕДАКТИРОВАТЬ:
Смотрите также keepalived / vrrpd и vrrp_sync_groups: