Zuverlässigkeit in Azure DNS privaten Zonen

Private Azure DNS-Zonen bieten eine sichere Namensauflösung innerhalb von Azure-virtuellen Netzwerken. Sie können private DNS-Zonen auf mindestens ein virtuelles Netzwerk beschränken, und Organisationen verwenden diese in der Regel für interne Anwendungen. Die von Ihnen aufgelösten Hostnamen sind lokale DNS-Namen, auf die über das Internet nicht öffentlich zugegriffen werden kann. Die aufgelösten IP-Adressen sind häufig private IP-Adressen, auf die nicht über das Internet zugegriffen werden kann. Azure DNS ist ein globaler Dienst, der nicht an eine bestimmte Verfügbarkeitszone oder einzelne Region gebunden ist.

Wenn Sie Azure verwenden, ist Zuverlässigkeit eine gemeinsame Verantwortung. Microsoft bietet eine Reihe von Funktionen zur Unterstützung von Resilienz und Wiederherstellung. Sie sind dafür verantwortlich, zu verstehen, wie diese Funktionen in allen von Ihnen verwendeten Diensten funktionieren, und die Funktionen auswählen, die Sie benötigen, um Ihre Geschäftsziele und Uptime-Ziele zu erfüllen.

In diesem Artikel wird beschrieben, wie Sie private Azure DNS-Zonen gegenüber verschiedenen potenziellen Ausfällen und Problemen widerstandsfähig machen können, einschließlich vorübergehender Störungen und regionsweiter Ausfälle. Es enthält außerdem wichtige Informationen zum Service Level Agreement (SLA) für den Azure DNS-Dienst für private Zonen.

Empfehlungen für die Produktionsimplementierung für Zuverlässigkeit

Für Produktionsworkloads wird empfohlen, die folgenden Empfehlungen zu befolgen:

  • Konfigurieren Sie die entsprechenden TTL-Werte: Legen Sie TTL-Werte (Time-to-Live) fest, die die Leistung mit der Wiederherstellungszeit ausgleichen. Niedrigere TTL-Werte ermöglichen ein schnelleres Failover, erhöhen aber das Abfragevolumen. Betrachten Sie 300 Sekunden (5 Minuten) als Ausgangspunkt für Produktionsworkloads.

  • Große DNS-Zonen aufteilen: Wenn Sie über eine große DNS-Zone verfügen, sollten Sie erwägen, Ihre Zone aufzuteilen, um Ihre Gesamtzuverlässigkeit und Betriebseffizienz zu verbessern.

Übersicht über die Zuverlässigkeitsarchitektur

In diesem Abschnitt werden einige der wichtigen Aspekte der Funktionsweise des Diensts beschrieben, die aus Zuverlässigkeitsperspektive am relevantesten sind. Im Abschnitt wird die logische Architektur vorgestellt, die einige der Ressourcen und Features enthält, die Sie bereitstellen und verwenden. Außerdem wird die physische Architektur erläutert, die Details zur Funktionsweise des Diensts unter den Deckeln bereitstellt.

Logische Architektur

Die primäre Ressource, die Sie bereitstellen, ist eine Zone, die eine Reihe von DNS-Einträgen darstellt, die Hostnamen (Domänennamen) IP-Adressen zuordnen. Die Hostnamen, die von der Zone aufgelöst werden, sind in der Regel lokale DNS-Namen, die nicht öffentlich über das Internet erreichbar sind.

Sie erstellen private DNS-Zonen als eigenständige Ressourcen und verknüpfen sie mit bestimmten virtuellen Netzwerken, indem Sie virtuelle Netzwerkverbindungen erstellen. Wenn DNS-Anforderungen von Clients innerhalb dieser virtuellen Netzwerke stammen, nehmen die privaten DNS-Zonen am Lösungsprozess teil. Sie können Einträge in einer DNS-Zone manuell erstellen oder die automatische Registrierung von VMs auf virtuellen Netzwerklinks konfigurieren. Private Azure DNS-Zonen unterstützen die DNS-Auflösung zwischen virtuellen Netzwerken über Azure-Regionen hinweg, auch ohne explizites Peering zwischen den virtuellen Netzwerken. Allerdings müssen alle virtuellen Netzwerke mit der privaten DNS-Zone verbunden sein.

Der DNS-Namensauflösungsprozess umfasst mehrere Komponenten, einschließlich DNS-Auflösungen und Zwischenebenen, die Anforderungen verarbeiten, bevor sie die autorisierenden DNS-Server erreichen. Private Zonen verwenden dieselben DNS-Protokolle und -Verhaltensweisen wie öffentliche Zonen, einschließlich TTL-Werte und Zwischenspeicherungsmechanismen.

Important

Die Zuverlässigkeit Ihrer Gesamtlösung hängt von der Konfiguration der Ressourcen ab, auf die Ihre DNS-Einträge verweisen, z. B. virtuelle Computer und Lastenausgleichsgeräte.

In diesem Artikel werden diese Ressourcen nicht behandelt, ihre Verfügbarkeitskonfigurationen wirken sich jedoch direkt auf die Resilienz Ihrer Anwendung aus. Überprüfen Sie die Zuverlässigkeitsleitfäden für Azure-Dienste in Ihrer Lösung , um zu erfahren, wie jeder Dienst Ihre Zuverlässigkeitsanforderungen unterstützt.

Physische Architektur

Azure DNS ist ein nichtregionaler Dienst. Microsoft stellt seine Infrastruktur in mehreren Verfügbarkeitszonen in mehreren Azure Regionen weltweit bereit. Mit diesem Design können Azure DNS während eines Ausfalls einer Verfügbarkeitszone oder Region stabil bleiben, da die Infrastruktur in einer anderen Zone oder Region weiterhin auf Lösungsanforderungen reagiert.

Globale Internetprotokolle wie Anycast, DNS und Border Gateway Protocol (BGP) leiten eingehende DNS-Auflösungsanforderungen automatisch an die nächstgelegene gesunde Azure DNS Infrastruktur weiter.

Resilienz für vorübergehende Fehler

Vorübergehende Fehler sind kurze, zeitweilige Fehler in Komponenten. Sie treten häufig in einer verteilten Umgebung wie der Cloud auf und sind ein normaler Bestandteil von Vorgängen. Vorübergehende Fehler korrigieren sich nach kurzer Zeit. Es ist wichtig, dass Ihre Anwendungen vorübergehende Fehler behandeln können, in der Regel durch Wiederholen betroffener Anforderungen.

Alle in der Cloud gehosteten Anwendungen sollten die Anleitung zur vorübergehenden Fehlerbehandlung von Azure befolgen, wenn sie mit cloudgehosteten APIs, Datenbanken und anderen Komponenten kommunizieren. Weitere Informationen finden Sie unter Empfehlungen zum Umgang mit vorübergehenden Fehlern.

Azure DNS verarbeitet vorübergehende Fehler über die globale DNS-Infrastruktur.

Wenn während der DNS-Auflösung ein vorübergehender Fehler auftritt, sollte der Client oder der Zwischenlöser die Anforderung wiederholen. Konfigurieren Sie die Timeoutwerte angemessen. Ein Timeout von 2 bis 5 Sekunden reicht in der Regel für einen DNS-Client aus.

Die Time to Live (TTL) jedes DNS-Eintrags wirkt sich auch darauf aus, wie Ihre Lösung mit Fehlern umgeht. Wenn die TTL sehr niedrig ist, stellen Clients mehr Anforderungen an Azure DNS, wodurch mehr Möglichkeiten für vorübergehende Fehler entstehen. Wenn die TTL sehr hoch ist, kann es bei Clients im Falle eines tatsächlichen Fehlers auf einem Backend-Server, der eine Umleitung auf eine andere IP-Adresse erforderlich macht, zu Verzögerungen beim Failover kommen, bis die TTL abläuft. Konfigurieren Sie TTLs sorgfältig, um Verfügbarkeit, Latenz und Reaktionsfähigkeit auszugleichen.

Ausfallsicherheit bei Ausfällen von Verfügbarkeitszonen

Verfügbarkeitszonen sind physisch getrennte Gruppen von Rechenzentren innerhalb einer Azure-Region. Wenn eine Zone ausfällt, erfolgt ein Failover der Dienste zu einer der verbleibenden Zonen.

Azure DNS fungiert als nichtregionaler Dienst. Microsoft verteilt ihre Infrastruktur über mehrere Verfügbarkeitszonen in mehreren Azure Regionen und repliziert Änderungen an Ihren privaten DNS-Zonen in dieser Infrastruktur. Sie wählen keine Verfügbarkeitszonen aus oder konfigurieren Zonenredundanz. Während eines Ausfalls der Verfügbarkeitszone reagiert die Infrastruktur in einer anderen Zone oder Region weiterhin auf Lösungsanforderungen.

Wenn eine Ressource, die Sie in einer einzelnen Verfügbarkeitszone bereitstellen, z. B. einem virtuellen Computer (VM), während eines Zonenfehlers nicht verfügbar wird, gibt Azure DNS weiterhin die konfigurierte IP-Adresse der Ressource zurück, da die Endpunktintegrität nicht überwacht wird. Wenn Sie ein Failover auf eine Ressource in einer intakten Zone durchführen, sind Sie dafür verantwortlich, den DNS-Eintrag zu aktualisieren, damit Clients die intakte Ressource verwenden. Alternativ platzieren Sie die Ressourcen hinter einem zonenredundanten Load Balancer, der den Datenverkehr an VMs in funktionsfähigen Zonen weiterleitet.

Widerstandsfähigkeit bei regionalen Ausfällen

Azure DNS privaten Zonen sind widerstandsfähig für Regionsausfälle, da Zonendaten global verfügbar sind. Wenn eine Region von einem Ausfall betroffen ist, sind ihre virtuellen Netzwerke und Ressourcen wie VMs möglicherweise nicht verfügbar, aber die Namensauflösung funktioniert weiterhin.

Das folgende Beispiel zeigt, wie private Zonendaten in mehreren Regionen verfügbar bleiben. Die private Zone azure.contoso.com ist mit virtuellen Netzwerken in drei Regionen verknüpft: Region A, Region B und Region C. Die automatische Registrierung ist in den Regionen A und B aktiviert. Das Diagramm zeigt Region A, die einen Ausfall hat:

Diagramm, das eine private DNS-Zone zeigt, die mit virtuellen Netzwerken in drei Regionen verknüpft ist, während Region A nicht verfügbar ist.

Angenommen, ein temporärer Ausfall erfolgt in Region A. VMs in Regionen B und C können weiterhin DNS-Namen in der privaten Zone abfragen, einschließlich Namen, die automatisch aus Region A registriert werden. Sie können weiterhin die IP-Adresse von VM1 in Region A auflösen, obwohl VM1 nicht verfügbar ist. Eine Dienstunterbrechung in Region A wirkt sich nicht auf die Namensauflösung in den anderen Regionen aus.

Im vorherigen Beispiel wird kein Notfallwiederherstellungsszenario dargestellt, in dem Ihre Lösung bei einem Ausfall auf eine Ersatzinstanz für VM1 in einer anderen Region umschaltet. Da private Zonen jedoch global sind, können Sie VM1 im virtuellen Netzwerk einer anderen Region neu erstellen, um die Workload zu übernehmen.

Wenn Sie virtuelle Netzwerke und Netzwerkressourcen in mehreren Regionen erstellen, müssen Sie Ihre Multiregionsstrategie für Anwendungen planen und implementieren, für die ein regionsübergreifendes Failover erforderlich ist.

Resilienz gegenüber Sicherheitsbedrohungen und Fehlkonfigurationen

Sicherheitsangriffe und Konfigurationsfehler sind zwei der wichtigsten Zuverlässigkeitsrisiken für DNS-Zonen. Mehrere Angriffsklassen zielen speziell auf die DNS-Auflösung ab, und versehentliche Fehlkonfigurationen können Ihre Workloads genauso stark stören.

Eine umfassende Sicherheitsanleitung speziell für private DNS-Zonen finden Sie unter Schützen privater DNS-Zonen und -Einträge.

Ausfallsicherheit bei Serviceausfällen

Azure DNS ist ein hochsicherer Dienst mit einer SLA für die Verfügbarkeit von 100%, wenn Ihre Anwendung bestimmte Bedingungen erfüllt. Dienstausfälle sind äußerst ungewöhnlich, aber Netzwerk- oder andere Infrastrukturprobleme können die Verbindung mit dem Azure DNS Dienst stören.

Überwachen auf Dienstausfälle

Microsoft benachrichtigt Sie nicht automatisch, wenn eine Region abfällt. Sie können jedoch Azure Service Health verwenden, um die allgemeine Integrität des Diensts zu verstehen, einschließlich aller Regionsfehler, und Sie können Dienststatuswarnungen einrichten, um Sie über Probleme zu informieren.

Testen auf Dienstausfälle

Azure Chaos Studio stellt eine Reihe von Fehlern bereit, um Probleme mit der DNS-Auflösung zu simulieren. Beispielsweise stellt der Chaos Studio-Agent den DNS-Fehlertyp bereit, und Azure Kubernetes Service (AKS) Chaos Mesh stellt die DNS-Chaos-Funktion bereit. Sie können diese Fehlertypen verwenden, um zu testen, wie Ihre Anwendungen und Infrastruktur reagieren, wenn DNS-Auflösungsanforderungen fehlschlagen, was während eines teilweisen Netzwerkfehlers auftreten kann.

Widerstandsfähigkeit gegenüber Ausfällen von Portal- und Verwaltungstools

Wenn Sie Ihre DNS-Zone im Azure-Portal verwalten, bereiten Sie sich auf Szenarien vor, in denen Sie nicht darauf zugreifen können, insbesondere, wenn Sie Ihre DNS-Zone während eines Plattformausfalls neu konfigurieren müssen.

Sie können verschiedene Tools verwenden, um Azure DNS privaten Zonen bereitzustellen und zu verwalten. Erfahren Sie, wie Sie Azure CLI oder Azure PowerShell zum Verwalten Ihrer privaten Zone verwenden. Verwenden Sie alternativ die Infrastruktur als Code (IaC), z. B. Bicep oder Terraform, um Ihre private Zone bereitzustellen und zu konfigurieren. Diese Tools bleiben auch dann funktionsfähig, wenn das Azure Portal beeinträchtigt wird.

Sichern und Wiederherstellen

Azure DNS ist ein zustandsloser Dienst. Es stellt keine verwalteten Sicherungen oder Point-in-Time-Wiederherstellungen für private DNS-Zonen bereit.

Um die vollständige Azure Ressourcenkonfiguration beizubehalten, definieren Sie Ihre privaten DNS-Zonen mithilfe von IaC, z. B. Bicep oder Terraform, und speichern Sie die Definitionen in der Quellcodeverwaltung. Testen Sie die Definitionen regelmäßig, damit Sie sie verwenden können, um Ihre Konfiguration erneut bereitzustellen.

Resilienz gegenüber Wartungsarbeiten an Diensten

Microsoft wendet regelmäßig Dienstupdates an und führt andere Wartungen durch. Die Azure Plattform übernimmt diese Aktivitäten automatisch, um sicherzustellen, dass die Wartung nahtlos und transparent für Sie ist. Bei Wartungsereignissen wird keine Ausfallzeit erwartet, es sei denn, Sie wurden über die geplante Wartung in Azure Service Health informiert.

Service-Level-Vereinbarung

Der Service level agreement (SLA) für Azure-Dienste beschreibt die erwartete Verfügbarkeit jedes Diensts und die Bedingungen, die Ihre Lösung erfüllen muss, um diese Verfügbarkeitserwartungen zu erreichen. Weitere Informationen finden Sie unter Dienstleistungsvereinbarungen für Onlinedienste.

Azure DNS stellt eine SLA mit 100% Verfügbarkeit für gültige DNS-Abfrageantworten bereit, wenn Sie bestimmte Bedingungen erfüllen. Zu diesen Bedingungen gehören die Wiederholung fehlgeschlagener Anforderungen für mindestens 60 aufeinander folgende Sekunden. Überprüfen Sie das SLA-Dokument für die detaillierten Bedingungen.