Cours Aws

7.80 Les enregistrement CNAME et Alias

Quand on utilise des ressources AWS (Application Load Balancer, CloudFront, etc.), AWS génère automatiquement un nom DNS du type my-alb-1234.elb.amazonaws.com. Pour exposer cette ressource derrière une URL conviviale comme mon-app.mon-domaine.com, deux solutions existent dans Route 53 : l'enregistrement CNAME et l'alias.

CNAME : alias générique mais pas pour le domaine racine

Un CNAME (Canonical Name) pointe un nom de domaine vers un autre nom de domaine. Par exemple, mon-app.mon-domaine.com peut être un CNAME pointant vers my-alb-1234.elb.amazonaws.com. Limitation importante : un CNAME ne peut pas être utilisé pour le domaine racine (mon-domaine.com seul, sans préfixe). Le CNAME fonctionne uniquement pour des sous-domaines.

Alias : spécifique à AWS, gratuit, supporte le domaine racine

L'alias est un enregistrement propre à Route 53 qui redirige vers une ressource AWS. Il fonctionne aussi bien pour le domaine racine que pour un sous-domaine. Il est gratuit (alors que les requêtes CNAME sont facturées), et permet d'évaluer l'état de la cible via health check — option indisponible sur un CNAME.

  • CNAME : fonctionne uniquement sur des sous-domaines, payant à la requête, pas de health check natif
  • Alias : fonctionne aussi sur le domaine racine, gratuit, health check sur la cible, pointe vers des ressources AWS uniquement (ALB, CloudFront, S3 static website, API Gateway, etc.)

Démonstration

Dans Route 53, nous créons d'abord un enregistrement CNAME nommé mon-app.mon-domaine.com pointant vers l'URL DNS de l'ALB. Une fois propagé, l'URL conviviale renvoie bien la page servie par l'instance Irlande. Nous créons ensuite un enregistrement Alias nommé mon-alias.mon-domaine.com en choisissant le type Alias vers un Classic / Application Load Balancer puis en sélectionnant la région et la ressource. L'option d'évaluation de l'état de la cible peut être activée. Les deux URL renvoient la même page, mais l'alias offre les bénéfices natifs Route 53 (gratuité, health check, support du domaine racine).