Отказоустойчивый DNS

Оригинальное название: Failover DNS

Коротко

Схема, при которой DNS-провайдер регулярно проверяет доступность сервера и при его отказе автоматически переключает домен на резервный IP-адрес.

Что такое «Отказоустойчивый DNS»

Обычная DNS-запись статична: в ней указан один адрес, и если сервер с этим адресом упал, посетители видят ошибку, пока администратор не исправит запись вручную. Отказоустойчивый DNS добавляет к записи мониторинг. Провайдер раз в несколько секунд или минут обращается к сайту по HTTP, HTTPS или TCP, и если основной сервер перестал отвечать, начинает выдавать в ответах адрес резервного.

Такую функцию предлагают крупные DNS-сервисы — например, маршрутизация с проверками здоровья в Amazon Route 53 или балансировка в Cloudflare. Её используют магазины и сервисы, для которых час простоя ощутимо дороже резервного сервера.

Как работает переключение

Ключевой параметр — TTL записи. Резолверы хранят ответ, пока не истечёт TTL, и только потом спрашивают снова. Поэтому для записей с failover ставят короткое время жизни — от 30 секунд до нескольких минут:

; основной сервер, пока он жив
example.com.  60  IN  A  203.0.113.10
; после срабатывания проверки провайдер отдаёт
example.com.  60  IN  A  198.51.100.20

Даже с коротким TTL переключение не мгновенно: часть резолверов и браузеров держит старый ответ дольше положенного, а пользователи с открытой вкладкой могут ещё какое-то время стучаться на упавший сервер.

Ограничения, о которых забывают

  • Резервный сервер должен быть готов принять трафик: с актуальным кодом, базой и файлами. Без репликации переключение приведёт посетителей на сайт недельной давности.
  • Если оба сервера стоят в одном дата-центре, авария площадки выключит оба.
  • Сам DNS-провайдер тоже не должен быть единой точкой отказа.
  • Возврат на основной сервер после восстановления лучше делать под контролем, иначе данные, записанные на резерве, потеряются.

Чем отличается от вторичного DNS

Вторичный DNS защищает саму службу имён: если один NS-сервер недоступен, на запросы отвечает другой. Failover DNS защищает сайт: имена отвечают всегда, но ответ меняется в зависимости от того, жив ли веб-сервер. На практике их используют вместе. А для небольшого сайта разумнее начать с мониторинга и надёжного резервного копирования: без актуальной копии резервному серверу нечего показывать.

Обновлено:

Все термины раздела «Доменные имена и DNS»

Что будем искать? Например,Продвижение