У нас есть небольшой центр обработки данных с около ста хостами, указывающими на 3 внутренних DNS-сервера (bind 9). Наша проблема возникает, когда один из внутренних серверов DNS становится недоступным. В этот момент все клиенты, которые указывают на этот сервер, начинают работать очень медленно.
Похоже, проблема в том, что в стандартном средстве разрешения проблем linux отсутствует концепция «переключения при сбое» на другой DNS-сервер. Вы можете настроить время ожидания и количество повторных попыток, которые он использует (и установить поворот, чтобы он работал через список), но независимо от того, какие настройки используются нашими службами, они работают намного медленнее, если основной DNS-сервер становится недоступным. На данный момент это один из крупнейших источников перебоев в обслуживании для нас.
Мой идеальный ответ - что-то вроде «RTFM: настроить /etc/resolv.conf как этот ...», но если это вариант, я его не видел.
Мне было интересно, как другие люди справились с этой проблемой?
Я вижу 3 возможных типа решений:
Используйте linux-ha / Pacemaker и ips отработки отказа (чтобы IP-адреса DNS «всегда» были доступны). Увы, у нас нет хорошей инфраструктуры фехтования, а без фехтования кардиостимулятор работает не очень хорошо (по моему опыту, кардиостимулятор снижает доступность без фехтования).
Запустите локальный DNS-сервер на каждом узле и укажите resolv.conf на localhost. Это будет работать, но даст нам гораздо больше услуг для мониторинга и управления.
Запустите локальный кеш на каждом узле. Люди, кажется, считают nscd «неработающим», но dnrd, похоже, имеет правильный набор функций: он помечает DNS-серверы как включенные или выключенные и не использует «выключенные» DNS-серверы.
Любое приведение, кажется, работает только на уровне маршрутизации ip и зависит от обновлений маршрута при сбое сервера. Многоадресная рассылка казалась идеальным ответом, но связывание не поддерживает широковещательную или многоадресную рассылку, и документы, которые я мог найти, указывают на то, что многоадресный DNS больше ориентирован на обнаружение и автоматическую настройку службы, чем на обычное разрешение DNS. ,
Я пропускаю очевидное решение?