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

Перенаправить PowerDNS при сбое

Я искал, но не нашел ответа, поэтому прошу прощения, если об этом спрашивали здесь раньше.

У меня было два сервера PowerDNS - ns1 и ns2 (которые находятся в разных датацентрах). Оба подключаются к MySQL на локальном хосте, но MySQL на обоих серверах является подчиненными устройствами репликации главного сервера MySQL. db. Это работает очень хорошо, так как обновление базы данных DNS на db будет копировать в ns1 и ns2, а затем powerdns будет правильно отображать записи DNS в обоих местах.

То, что я пытаюсь выполнить, но не могу понять, - это как справиться с ситуацией, когда хост mysql на любом ns1 или ns2 вылетает. Если mysql не работает, как я могу сказать powerdns временно пересылать DNS-запросы на другой сервер (пока mysql не вернется в сеть)? Я просмотрел pdns-recursor, но не вижу, как настроить его только для работы, когда mysql не работает.

Я открыт для творческих решений, таких как использование pdns на ненормальном порте, а затем nginx для «прокси» соединения с другим портом на сервере, а также разрешение nginx уведомлять об ошибке mysql и перенаправлять на другой сервер. Проблема в том, что я не знаю, с чего начать что-то подобное! Мне интересно (а) что является лучшим / наиболее надежным и (б) как конкретно я это делаю!

Я думаю, вы пытаетесь создать избыточность на неправильном уровне, поскольку у вас уже есть избыточные серверы имен.

Если MySQL выйдет из строя на NS1, PowerDNS тоже перестанет отвечать, верно? Когда распознаватель не получает ответа от NS1, тогда включается встроенная избыточность в протоколе DNS, и распознаватель повторно отправляет свой запрос на альтернативный полномочный сервер имен NS2.