У нас есть установка с двумя серверами на основе Redhat, оба из которых имеют хосты за виртуальным IP-адресом.
используя drdb и heartbeat, он настроен на запуск одного хоста в качестве основного, а другой в режиме ожидания. Если основной выходит из строя, то резервный сервер становится основным и берет на себя управление ... Очень стандартно в этом отношении.
наш сервер обработки журналов (etl_server) подключается к серверу данных и запускает ежечасные процессы.
Мы используем ssh_keys для подключения (хотя это не важная информация для этого).
Когда dataserver_ha1 переключается на ha2, etl_server больше не может подключиться из-за предупреждения человека посередине об изменении ключей хоста.
AFAIK, я могу сделать несколько вещей:
1) отключить строгую проверку на ssh-клиентах (не хочу этого делать) 2) добавить записи для обоих физических ключей хоста в файл authorized_keys на клиенте 3) отразить все файлы / etc / sshd / hosts *
Но я чувствую, что должен иметь возможность сообщить хостам, чтобы они информировали запрос клиента ssh, что можно использовать один из двух допустимых ключей хоста. Когда у меня будет немного времени, я протестирую это с помощью VirtualBox или чего-то подобного. А пока я ищу информацию по этому поводу не в том месте ...
Используйте одинаковые закрытые ключи на двух ваших серверах данных.
С первичного ...
scp /etc/ssh/*key* dataserver_ha2:/etc/ssh/
После этого перезапустите демон ssh на dataserver_ha2 с помощью service sshd restart
.
Это решит проблемы с идентификацией вашего хоста самым быстрым и чистым способом.