В настоящее время у нас есть псевдоним, назначенный нашей сетевой карте для управления парой прокси HA.
# cat /etc/sysconfig/network-scripts/ifcfg-eth0:proxy
DEVICE=eth0:proxy
BOOTPROTO=none
ONPARENT=no
TYPE=Ethernet
IPADDR=10.1.1.2
NETMASK=255.255.255.255
NM_CONTROLLED=no
Этот файл существует на обоих узлах. Когда мы хотим переключить, какой прокси обрабатывает трафик, мы делаем ifdown eth0:proxy
на текущих первичных, и ifup eth0:proxy
на вторичном. Это полностью ручной процесс.
Судя по всему, RedHat устарел этот способ назначения нескольких IP-адресов. Вместо этого они рекомендуют просто добавить вторичный IP-адрес к основному интерфейсу:
# ifcfg-eth0
...
IPADDR2=10.1.1.2
...
Но, похоже, не существует «хорошего» способа управлять процессом включения IP-адреса на вторичном блоке и его снижения на первичном, как в моем примере выше.
Мы также не используем NetworkManager. Эта служба была остановлена и отключена.
Есть ли способ переключить активный общедоступный адрес на обоих узлах без редактирования обоих файлов конфигурации и перезапуска сетевой карты, аналогично тому, как мы делали это раньше?
Кроме того, есть ли хороший способ автоматизировать процесс включения / выключения, если, например, первичный перезапускается? Было бы неплохо, если бы вторичный мог обнаружить, что первичный ушел, и автоматически взял на себя VIP.
Мы не хотим, чтобы оба HAProxies обслуживали трафик одновременно с помощью балансировки нагрузки DNS, потому что важна устойчивость внутренних серверов.