Назад | Перейти на главную страницу

DNS Round Robin только при выходе из строя?

У меня два сервера, одинаковые возможности по вычислительной мощности и нагрузке. Я пытаюсь сделать следующее: (Я уже владею и использую DNS-серверы, поэтому это не должно быть проблемой).

Сервер A будет обслуживать ВСЕ входящие запросы к sub.domain.com Сервер B будет обслуживать ТОЛЬКО, пока сервер A не работает, и если ему нужно подождать несколько секунд, чтобы решить, это нормально.

Является ли это возможным? Взвешенный циклический алгоритм не работает для того, что мне нужно, как и обычный циклический алгоритм, так как он перейдет к следующему серверу только в случае успешной доставки первого запроса.

Есть ли способ сделать так, чтобы, если sub.domain.com на сервере A недоступен, перенаправлять на сервер B, пока A не подключится к сети?

Спасибо, это действительно поможет в согласованности моего проекта.

Есть ли способ сделать так, чтобы, если sub.domain.com на сервере A недоступен, перенаправлять на сервер B, пока A не подключится к сети?

Не через DNS - по крайней мере, без настраиваемого мониторинга DNS-сервера и изменения записей на лету (что не сработает). Чтобы добиться такого поведения, вам понадобится система между клиентами и серверами, обрабатывающая логику аварийного переключения. HAProxy - всегда хороший вариант, и, если предположить, что это http-трафик, несколько разновидностей обычных веб-серверов (Apache, nginx, lighttpd) также могут делать то, что вам нужно.

Среди прочего, GTM F5 делают именно это. Они проводят тесты на устройствах, чтобы убедиться, что они работают, а затем изменяют записи DNS на соответствующее значение.

Если вы любите приключения, вы можете разрешить динамическое обновление вашей зоны DNS. Затем с хоста B выполните проверку на хосте A, используя какой-то сценарий. Если он обнаруживает, что хост A недоступен / недоступен / не отвечает, он может отправить запрос обновления DNS для изменения IP. Хост A может делать обратное и автоматически устанавливать DNS-запись обратно на свой IP-адрес после определенного времени "работоспособности".

Вы также можете использовать параметры HAProxy или другие параметры высокой доступности, такие как CARP, или посмотреть на Linux-HA.org сайт.

Другой вариант - это что-то вроде CARP. Вы назначаете виртуальный IP-адрес обоим серверам, и они периодически пингуют друг друга, и пока «главный» работает, он будет получать трафик, но если он перестанет отвечать, подчиненный получит этот IP-адрес. Это делает его полностью прозрачным для приложений.

CARP - Общий протокол резервирования адресов