AWS: Route53, DNS отказоустойчивость, Active-Passive

в 17:34, , рубрики: Amazon Web Services, AWS, DNS, Route53, Облачные вычисления, системное администрирование, метки: , ,

Пару недель назад AWS анонсировали такую новую и весьма полезную функциональность в Route53 как DNS Failover. Это хорошая новость не только, для тех кто пользуется амазоновским облаком, но и для всех остальных, кто желает отказоустойчивости на уровне DNS. Разберемся как это работает, и сделаем тестовый пример в конфигурации Active-Passive, с бекапом вашего сайта на S3.

Немного деталей.

На конечную точку, доступность которой вы хотите проверять, настраивается health-check. Проверки идут из разных локаций по всему миру, и ваш хост признается не работоспособным, если не отвечал в течении 30 секунд: он автоматически убирается из выдачи IP клиентам. Чеки можно осуществлять по http и tcp, https не поддерживается. Также пока еще ведутся работы по интеграции с ELB. TTL советуют выставить в районе 60 секунд.

Рабочий пример с бекапом на S3.

Самый простой вариант как вы можете это использовать — держать Primary запись для своего основного сервера, а Secondary отправлять на S3 статический сайт, если первый упадет.

Итак, у вас обычная А запись для вашего домена.

AWS: Route53, DNS отказоустойчивость, Active Passive

Добавим для него health-check.

AWS: Route53, DNS отказоустойчивость, Active Passive

Увидим, что чек добавился.

AWS: Route53, DNS отказоустойчивость, Active Passive

Вернемся назад к Hosted Zones, выберем нашу запись и Routing Policy: Failover, Failover Record Type:Primary, и Health Check to Associate: 205.251.195.209:80/

AWS: Route53, DNS отказоустойчивость, Active Passive

Делаем Secondary запись, выбираем предварительно настроеный S3 bucket, Failover Record Type: Secondary, и на этом все.

AWS: Route53, DNS отказоустойчивость, Active Passive

Также проверки можно связать с LBR или Weighted политиками, делать Active-Passive-Passive, Active-Active и т.д. Мы в продакшне уже успешно используем Active-Active для внутренней балансировки.

Автор: astlock

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js