AWS Route53: CNAME vs. ALIAS

Der Amazon Web Services DNS-Dienst Route53 ermöglicht nach einer entsprechenden Domänen-Delegation die komplette Verwaltung einer Domäne (A-, MX-, CNAME-Records, etc.).

Neben dem klassischen CNAME-Record gibt es bei AWS Route53 noch eine entsprechende Erweiterung mit dem Namen ALIAS-Record. Wo sind da genau die Unterschiede?

Beide, CNAME- und ALIAS-Records, stellen einen Pointer auf eine andere Adresse dar, bei dem ein zusätzlicher Schritt für entsprechende Auflösung notwendig ist. Der wesentliche Unterschied ist hierbei, wo dieser Schritt und die entsprechende Auflösung stattfindet:

  • Beim CNAME-Record findet dieser zusätzliche Schritt Client-seitig statt. Der DNS-Server gibt lediglich den Wert des CNAME-Records zurück und der Client muss nun in einem zweiten Schritt diesen entsprechend durch eine erneute Anfrage an den DNS-Server in einen A/AAA Record auflösen.
  • Beim ALIAS-Record findet dieser zusätzliche Schritt auf dem DNS-Server (hier AWS Route53) statt. AWS Route53 gibt also direkt nach einem internen Lookup den A/AAAA Record an den Client zurück.

Somit geht die Auflösung eines ALIAS-Records deutlich schneller als die Auflösung eines CNAME-Records.

Dazu kommt noch folgender Vorteil:

  • CNAME-Records können nicht auf eine APEX-Domäne definiert werden.
  • Also kann man bei einem Einsatz einer CloudFront-Distribution oder eines AWS Elastic Load Balancers (beide haben lediglich einen entsprechenden DNS-Namen) nur eine Subdomäne wie www.firma.de via CNAME auf z.B. den Elastic Load Balancer umleiten, für die APEX-Domäne firma.de funktioniert das nicht.
  • Über einen ALIAS-Record von AWS Route53 kann man nun auch die APEX-Domäne direkt auf einen z.B. ELB umlenken.

 

 

 

Route53 and .cy .il .tr .kw

Scheinbar sind wir die ersten die Route53 für diese Länder nutzen …

The error that you are receiving on the Console is related to the Top Level Domains not existing in the Route53 Database.  I have raised a request with our Route53 Service Team to consider adding the following Top Level Domains for you.

  •  .cy
  • .il
  • .tr
  • .kw

 

Amazon AWS Route53 mit Latency based Routing und DNS Failover

Für einen Kunden haben wir weltweit verteilte Content-Video Server aufgesetzt. Dabei sollen dessen User den Content aus der nächstgelegenen AWS Region bekommen. Dies kann man super mit Route53 und Latency based Routing umsetzen. Dabei ist der Root-Content-Server in der EU-Region (irland.*.com) beheimatet und ist redundant ausgelegt (ELB mit 2 EC2-Instanzen in unterschiedlichen Availability-Zonen). Die Server in Tokyo und Virginia sind nicht redundant ausgelegt, allerdings nutzen wir hier das neue DNS-Failover System von Route53. Wenn der Healtcheck (alle 60 Sekunden) fehlschlägt, so werden Tokyo bzw. Virginia nach Irland auf DNS Ebene umgelenkt.

Über content.*.com wird dann einheitlich der Content abgerufen und ihm Rahmen von Latency based Routing automatisch die nächste AWS Region dem Enduser zugeordnet.

Route53-1

Healthcheck für die AWS Regionen mit Single-Servern:

Route53-2

Und warum nutzen wir nicht CloudFront … den ContentDelivery Service von Amazon AWS, um den Content in den Regionen über Edges lokal zur Verfügung zu stellen? Haben wir bereits ausprobiert und gemacht. Das Problem ist, das die Enduser wahllos auf den 2,4 TB Video Content zugreifen und somit das Caching nicht immer greift, was sich in sehr hohen Cache Misses niederschlägt. Und dann müssen die Enduser warten, bis der Content erst wieder aus der EU nach z.B. Tokyo geliefert wird (hohe Latenzzeiten)… aus diesem Grunde haben wir entschieden, den kompletten Content direkt in die Region der Enduser zu bringen.

Amazon AWS Route 53 … very easy

Mit Amazon AWS Route 53 kann man leider erst mal nicht so einfach herum experimentieren, da man eine richtige Domäne braucht, die entsprechend Route 53 zugewiesen wird … also haben wir entschieden für unsere Test-Szenarien und Kunden-WorkShops uns eine eigene Test-Domäne “awstest.de” speziell für Route53-Experimente zu leisten …

mehr … »