Route 53 - Délégation croisée des enregistrements APEX

Aug 16 2020

Nous mettons en œuvre une pile sans serveur AWS avec plusieurs environnements. En essayant de suivre les meilleures pratiques, nous avons créé plusieurs comptes à des fins différentes.

Il existe un compte DNS , qui est censé contenir toutes les zones hébergées liées à ce projet. Il a une zone hébergée pour example.org.

Nous avons plusieurs environnements et un compte correspondant pour chacun. Pour l' instant je vais me concentrer sur dev et prod .

Voici à quoi devrait ressembler la configuration de l'hôte:

DÉVELOPPEMENT

  • app.dev.example.org (distribution CloudFront dans le compte de développement)
  • login.dev.example.org (distribution CloudFront pour l'interface utilisateur hébergée Cognito dans le compte de développement)
  • api.dev.example.org (passerelle API dans le compte de développement)
  • cdn.dev.example.org (distribution CloudFront dans le compte de développement)

PRODUCTION

  • example.org (distribution CloudFront dans le compte prod)
  • login.example.org (distribution CloudFront pour l'interface utilisateur hébergée Cognito dans le compte prod)
  • api.example.org (API Gateway dans le compte prod)
  • cdn.example.org (distribution CloudFront dans le compte prod)

dev est simple. Mise en place d' enregistrements NS pour sous - domaine en dev.example.orgutilisant des serveurs NS de zone hébergée dev.example.orgdans dev compte et il est fait.

prod est délicat, car nous aimerions utiliser l'enregistrement APEX de example.org. De plus, login.example.org, api.example.orget cdn.example.orgne dispose pas d' un sous - domaine commun.

À la recherche de solutions possibles, j'ai proposé les options suivantes:

  1. Créez example.orgplutôt une zone hébergée pour le compte de production. Déléguez des sous-domaines à d'autres comptes (c'est-à-dire dev ) à partir de là.
  2. (Pas sûr): créez un jeu de délégation réutilisable. De cette façon, deux zones hébergées pourraient être créées (si j'ai bien compris), une dans le compte DNS et une dans le compte prod . Ils partageraient les mêmes serveurs de noms. Je ne pouvais pas savoir si cela fonctionnait avec plusieurs comptes et je ne l'ai pas encore testé.
  3. (Pas sûr): configuration de zones hébergées dans prod pour chacun login.example.org, api.example.orget cdn.example.org. Cela permettrait de définir des enregistrements APEX de sous-domaines à partir du prodcompte. Ce n'est pas une solution pour l'enregistrement APEX de example.org. En outre, il s'agit de 3 zones hébergées supplémentaires (juste pour accomplir une solution de contournement).

Je voulais voir si quelque chose de fondamental me manquait ici et / ou si quelqu'un avait une situation similaire et une solution alternative / meilleure. Ce cas d'utilisation ne devrait pas être trop exotique?

Réponses

MLu Aug 17 2020 at 05:04

Choisissez 1 - c'est le plus simple.

Ou 4 - Utilisez un accès multi-comptes pour insérer des enregistrements dans la zone du compte "dns" à partir du compte "prod".

Notez également que les enregistrements ALIAS peuvent pointer vers des ressources dans d'autres comptes, ils n'ont pas besoin d'être dans le même.

J'espère que ça t'as aidé :)