Рейтинг:0

CNAME, указывающий на 2 разные записи A, настроенные с первичной/вторичной маршрутизацией при отказе?

флаг cn

Учитывая такие записи:

host.example.com как CNAME для:

host01.example.com и host02.example.com

(на двух отдельных записях).

Я хочу настроить эти записи A так, чтобы они соответствовали политике маршрутизации при отказе.

Имя записи Тип Дифференциатор маршрутизации Маршрутизация трафика на
--------------------------------------------- ----------------
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? Или может быть лучшее решение?

Рейтинг:2
флаг cn

host.example.com в качестве CNAME для: host01.example.com и host02.example.com

Это невозможно, так как у вас не может быть 2 записей CNAME с одним и тем же именем. (поскольку вы не можете иметь запись CNAME, чтобы сосуществовать с любыми другими записями в этом отношении - кроме записей DNSSEC).

Если host01.example.com не работает по какой-либо причине, я хочу, чтобы запросы к host.example.com по-прежнему выполнялись, но просто указывали на host02.example.com.

ДНС так не работает. По умолчанию он обеспечивает балансировку нагрузки, а не отработку отказа. Вы можете иметь различные частичные способы, используя короткие TTL, динамический DNS для быстрой смены IP-адресов, произвольную передачу DNS, чередование IP-адресов в ответ или, что более важно, решать проблему на следующем уровне, где это имеет смысл, например, HTTPS или что-то еще. Все балансировщики нагрузки предоставляют механизмы аварийного переключения (но тогда вам также нужно выяснить, как обеспечить аварийное переключение для самих балансировщиков нагрузки).

Для обработки «жестких» случаев DNS см. dnsdist, который вы можете поместить перед каким-либо авторитетным сервером имен, но который дает вам гораздо более богатый способ создания ответов.

флаг cn
Я вижу, что ты говоришь. Кажется странным, что Route 53 позволил мне тогда настроить две записи CNAME и сохранить конфигурацию. Как бы он узнал, что решать - только то, что сработает первым? Интересно, будет ли это проблемой. Я думаю, может быть, было бы более разумно указать на host01 через cname и просто включить его в качестве аварийного переключения.
Patrick Mevzek avatar
флаг cn
«Откуда ему знать, к какому из них обращаться — только к тому, что сработает первым?» Вам нужно будет обратиться к своему провайдеру DNS. 2 Записи `CNAME` на заданное имя явно противоречат спецификации DNS, так что если кто так делает, то только он может ответить, как это работает, или если кто знает здесь и написать другой ответ.Возможно, отказоустойчивость — это основная услуга, предоставляемая здесь вашим провайдером DNS, но мой ответ носит общий характер, поскольку я думаю, что полагаться на нестандартные вещи DNS может быть опасно, по крайней мере, это усложнит переход к другому провайдеру DNS.
флаг cn
Спасибо, Патрик - еще раз, если кто-то читает эти комментарии, повторюсь: это через Route 53.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.