Маршрут 53 — делегирование записи APEX между счетами

Маршрут 53 — делегирование записи APEX между счетами

Мы внедряем стек AWS serverless с несколькими средами. Стараясь следовать лучшим практикам, мы создали несколько учетных записей для разных целей.

ЕстьДНСаккаунт, который должен содержать все размещенные зоны, связанные с этим проектом. Он имеет размещенную зону для example.org.

У нас есть несколько сред и соответствующий аккаунт для каждой. Сейчас я сосредоточусь надевипродукт.

Вот как должна выглядеть конфигурация хоста:

РАЗРАБОТКА

  • app.dev.example.org (дистрибуция CloudFront в аккаунте разработчика)
  • login.dev.example.org (дистрибутив CloudFront для Cognito Hosted UI в учетной записи разработчика)
  • api.dev.example.org (API Gateway в учетной записи разработчика)
  • cdn.dev.example.org (дистрибуция CloudFront в аккаунте разработчика)

ПРОИЗВОДСТВО

  • example.org (дистрибуция CloudFront в аккаунте prod)
  • login.example.org (дистрибутив CloudFront для Cognito Hosted UI в учетной записи prod)
  • api.example.org (API Gateway в учетной записи prod)
  • cdn.example.org (дистрибуция CloudFront в учетной записи prod)

девпросто. Настройка NS-записей для поддомена dev.example.orgс использованием NS-серверов из размещенной зоны dev.example.orgвдевсчет и все готово.

продуктэто сложно, так как мы хотели бы использовать запись APEX example.org. Кроме того, login.example.orgи api.example.orgне cdn.example.orgимеют общего поддомена.

В поисках возможных решений я пришел к следующим вариантам:

  1. Вместо этого создайте размещенную зону для example.orgучетной записи в производстве. Делегируйте поддомены другим учетным записям (т.е.дев) оттуда.
  2. (Не уверен): Создайте повторно используемый набор делегирования. Таким образом можно создать две размещенные зоны (если я правильно понял), одну вДНСсчет и один впродуктаккаунт. Они будут использовать одни и те же серверы имен. Я не смог выяснить, работает ли это между аккаунтами, и пока не проверял.
  3. (Не уверен): Настройка размещенных зон впродуктдля каждого login.example.org, api.example.orgи cdn.example.org. Это позволит устанавливать записи APEX поддоменов из prodучетной записи. Это не решение для записи APEX example.org. Кроме того, это 3 дополнительные размещенные зоны (только для выполнения обходного пути).

Я хотел посмотреть, не упустил ли я чего-то фундаментального и/или у кого-то была похожая ситуация и альтернативное/лучшее решение. Этот вариант использования не должен быть слишком экзотическим?

решение1

Выберите 1 — это самый простой вариант.

Или 4 — используйте кросс-аккаунтный доступ для вставки записей в зону в учетной записи «dns» из учетной записи «prod».

Также обратите внимание, что записи ALIAS могут указывать на ресурсы в других учетных записях, они не обязательно должны находиться в одной и той же.

Надеюсь, это поможет :)

Связанный контент