У меня есть два сервера, каждый с физическим IP-адресом на физическом сетевом интерфейсе:
Server A: 192.168.0.1 (eth0) - PRIMARY
Server B: 192.168.0.2 (eth0) - BACKUP
Я хочу запустить приложение на сервере A в качестве основного и то же приложение на сервере B в качестве резервного. Приложение не имеет состояния, поэтому мне не нужно синхронизировать данные между ними. Система, отправляющая запросы к приложению, ожидает отправки их на один IP-адрес. Итак, мне нужно настроить третий IP-адрес:
192.168.0.3 (eth0:1)
... который будет привязан к серверу A. В случае сбоя в приложении на сервере A будет подан сигнал тревоги, и в ответ на это я хочу выполнить ifdown eth0:1
на сервере A и ifup eth0:1
на сервере B перенос виртуального IP-адреса на другой сервер, чтобы он начал обрабатывать запросы без необходимости перенастраивать системы, отправляющие запросы.
У меня вопрос, как мне это настроить на RHEL 4? Сложно искать информацию об этом в Google, поскольку я не совсем уверен, как будет называться этот тип конфигурации, а «Virtual IP RHEL» просто дает очень широкий спектр тем.
Linux HA будет делать именно это; это одна из его основных функций. Вам не нужно будет создавать виртуальный интерфейс вручную, просто введите haresources
файл
primary.example.com 192.168.0.3/24/eth0
Настройка высокой доступности для обработки отказа приложения как отказа узла кластера может быть сложной задачей. Поскольку вы говорите, что у вас уже есть процесс сигнализации, я был бы склонен добавить к логике сигнализации, чтобы она выполняла hb_standby
(или современный эквивалент оболочки crm) на первичном сервере, который автоматически откроет интерфейс на вторичном.