, рассматривая такие записи, как :
host.example.com
, как CNAME для:
host01.example.com
иhost02.example.com
(на двух отдельных записях).
Я хочу настроить эти записи A так, чтобы они соответствовали политике маршрутизации при отказе.
Record Name Type Routing Differentiator Route traffic to
------------------------------------------------------------------
host.example.com CNAME Failover Primary host01.example.com
host.example.com CNAME Failover Secondary host02.example.com
Если host01.example.com
не работает по какой-либо причине, я хочу, чтобы запросы к host.example.com
по-прежнему выполнялись, но просто указывали на host02.example.com
. Это правильный способ реализации такой политики в Route 53? Или может быть лучшее решение?
host.example.com в качестве CNAME для: host01.example.com и host02.example.com
Это невозможно, так как у вас не может быть 2 записей CNAME для одного и того же имени. (поскольку вы не можете иметь запись CNAME, чтобы сосуществовать с любыми другими записями в этом отношении - кроме записей DNSSEC).
Если host01.example.com по какой-либо причине недоступен, я хочу, чтобы запросы к host.example.com по-прежнему выполнялись, но просто указывали на host02.example.com.
DNS так не работает. По умолчанию он обеспечивает балансировку нагрузки, а не отработку отказа. Вы можете иметь различные частичные способы, используя короткие TTL, динамический DNS для быстрой смены IP-адресов, произвольную передачу DNS, чередование IP-адресов в ответ или, что более важно, решать проблему на следующем уровне, где это имеет смысл, например, HTTPS или что-то еще. Все балансировщики нагрузки предоставляют механизмы аварийного переключения (но тогда вам также нужно выяснить, как обеспечить аварийное переключение для самих балансировщиков нагрузки).
Для обработки «жестких» случаев DNS посмотрите на dnsdist
, который вы можете поместить перед каким-либо авторитетным сервером имен, но который дает вам гораздо более богатый способ создания ответов.