Einblick in Azure Container Apps

In diesem Artikel wird die Unterstützung für Zuverlässigkeit in Azure Container Apps beschrieben, wobei sowohl regionale Resilienz mittels Verfügbarkeitszonen als auch regionsübergreifende Resilienz mittels Notfallwiederherstellung behandelt wird. Eine ausführlichere Übersicht über die Zuverlässigkeit in Azure finden Sie unter Azure-Zuverlässigkeit.

Unterstützung für Verfügbarkeitszonen

Azure-Verfügbarkeitszonen sind mindestens drei physisch getrennte Gruppen von Rechenzentren innerhalb jeder Azure-Region. Die Rechenzentren innerhalb jeder Zone sind mit unabhängiger Stromversorgung, Kühlung und Netzwerkinfrastruktur ausgestattet. Bei einem Fehler in der lokalen Zone sind Verfügbarkeitszonen so konzipiert, dass regionale Dienste, Kapazität und Hochverfügbarkeit von den verbleibenden beiden Zonen unterstützt werden, wenn eine Zone betroffen ist.

Ausfälle können von Software- und Hardwareausfällen bis hin zu Ereignissen wie Erdbeben, Überflutungen und Bränden reichen. Fehlertoleranz wird durch Redundanz und logische Isolierung von Azure-Diensten erreicht. Ausführlichere Informationen zu Verfügbarkeitszonen in Azure finden Sie unter Regionen und Verfügbarkeitszonen.

Azure-Dienste mit Unterstützung von Verfügbarkeitszonen bieten das richtige Maß an Zuverlässigkeit und Flexibilität. Für die Konfiguration gibt es zwei Möglichkeiten. Sie können entweder zonenredundant mit automatischer zonenübergreifender Replikation oder zonenbasiert mit Instanzen sein, die an eine bestimmte Zone angeheftet werden. Sie können diese Ansätze auch kombinieren. Weitere Informationen zur zonalen im Vergleich zur zonenredundanten Architektur finden Sie unter Empfehlungen für die Verwendung von Verfügbarkeitszonen und Regionen.

Azure Container Apps verwendet Verfügbarkeitszonen in Regionen, in denen sie verfügbar sind, um Hochverfügbarkeitsschutz für Ihre Anwendungen und Daten vor Rechenzentrumsausfällen bereitzustellen.

Durch Aktivieren der Zonenredundanz-Funktion von Container Apps werden Replikate automatisch über die Zonen in der Region verteilt. Der Datenverkehr wird zwischen den Replikaten ausgeglichen. Wenn ein Zonenausfall auftritt, wird der Datenverkehr automatisch zu den Replicas in den verbleibenden Zonen geleitet.

Hinweis

Es fallen keine zusätzlichen Gebühren für die Aktivierung der Zonenredundanz an. Die Nutzung dieser Funktion ist allerdings erst dann sinnvoll, wenn Sie mehr als 2 Replikate haben. Da die meisten Regionen, die Zonenredundanz unterstützen, über 3 Zonen verfügen, ist die Nutzung besonders sinnvoll, wenn Sie 3 oder mehr Replikate haben.

Voraussetzungen

Azure Container Apps bieten unabhängig vom Plantyp die gleiche Zuverlässigkeitsunterstützung.

Azure Container Apps verwendet Verfügbarkeitszonen in Regionen, in denen sie verfügbar sind. Eine Liste von Regionen, die Verfügbarkeitszonen unterstützen, finden Sie unter Dienst- und Regionsunterstützung für Verfügbarkeitszonen.

SLA-Verbesserungen

Es gibt keine erhöhten SLAs für Azure Container Apps. Weitere Informationen zu den SLAs für Azure Container Apps finden Sie unter Vereinbarung zum Servicelevel für Azure Container Apps.

Erstellen einer Ressource mit aktivierter Verfügbarkeitszone

Richten Sie Zonenredundanz in Ihrer Azure Container Apps-Umgebung ein

Um Verfügbarkeitszonen nutzen zu können, müssen Sie die Zonenredundanz aktivieren, wenn Sie eine Azure Container Apps-Umgebung erstellen. Die Umgebung muss ein virtuelles Netzwerk mit einem verfügbaren Subnetz enthalten. Um die ordnungsgemäße Verteilung von Replikaten sicherzustellen, legen Sie die Mindestreplikatanzahl Ihrer App auf drei fest.

Aktivieren der Zonenredundanz über das Azure-Portal

So erstellen Sie eine Container-App in einer Umgebung mit aktivierter Zonenredundanz über das Azure-Portal:

  1. Navigieren Sie zum Azure-Portal.
  2. Suchen Sie im oberen Suchfeld nach Azure Container Apps.
  3. Wählen Sie Azure Container Apps aus.
  4. Wählen Sie im Feld Azure Container Apps-Umgebung die Option Neu erstellen, um den Bereich Container-Apps-Umgebung erstellen zu öffnen.
  5. Geben Sie den Umgebungsnamen ein.
  6. Wählen Sie Aktiviert für das Feld Zonenredundanz aus.

Zonenredundanz erfordert ein virtuelles Netzwerk mit einem Infrastruktursubnetz. Wählen Sie ein vorhandenes virtuelles Netzwerk aus, oder erstellen Sie ein neues. Beim Erstellen eines neuen virtuellen Netzwerks können Sie die bereitgestellten Werte übernehmen oder die Einstellungen anpassen.

  1. Wählen Sie die Registerkarte Netzwerk aus.
  2. Um dem virtuellen Netzwerk einen benutzerdefinierten Namen zuzuweisen, wählen Sie im Feld Microsoft Azure Virtual Network die Option Neu erstellen aus.
  3. Um einen benutzerdefinierten Infrastruktur-Subnetznamen zuzuweisen, wählen Sie im Feld Infrastruktur-Subnetz die Option Neu erstellen aus.
  4. Sie können Intern oder Extern für die virtuelle IP auswählen.
  5. Klicken Sie auf Erstellen.

Screenshot of Networking tab in Create Container Apps Environment page.

Aktivieren Sie die Zonenredundanz mit der Azure CLI

Erstellen Sie ein virtuelles Netzwerk und ein Infrastruktur-Subnetz, das in die Azure Container Apps-Umgebung eingeschlossen werden soll.

Wenn Sie diese Befehle verwenden, ersetzen Sie das <PLACEHOLDERS> durch Ihre Werte.

Hinweis

Die Umgebung „Nur Verbrauch“ erfordert ein dediziertes Subnetz mit einem CIDR-Bereich von /23 oder höher. Die Umgebung „Arbeitsauslastungsprofile“ erfordert ein dediziertes Subnetz mit einem CIDR-Bereich von /27 oder höher. Weitere Informationen zur Subnetzgröße finden Sie in der Übersicht über die Netzwerkarchitektur.

az network vnet create \
  --resource-group <RESOURCE_GROUP_NAME> \
  --name <VNET_NAME> \
  --location <LOCATION> \
  --address-prefix 10.0.0.0/16
az network vnet subnet create \
  --resource-group <RESOURCE_GROUP_NAME> \
  --vnet-name <VNET_NAME> \
  --name infrastructure \
  --address-prefixes 10.0.0.0/21

Fragen Sie als Nächstes die Subnetz-ID der Infrastruktur ab.

INFRASTRUCTURE_SUBNET=`az network vnet subnet show --resource-group <RESOURCE_GROUP_NAME> --vnet-name <VNET_NAME> --name infrastructure --query "id" -o tsv | tr -d '[:space:]'`

Erstellen Sie abschließend die Umgebung mit dem --zone-redundant Parameter. Der Standort muss derselbe sein, der beim Erstellen des virtuellen Netzwerks verwendet wurde.

az containerapp env create \
  --name <CONTAINER_APP_ENV_NAME> \
  --resource-group <RESOURCE_GROUP_NAME> \
  --location "<LOCATION>" \
  --infrastructure-subnet-resource-id $INFRASTRUCTURE_SUBNET \
  --zone-redundant
Überprüfen der Zonenredundanz mit der Azure CLI

Hinweis

Das Azure-Portal zeigt nicht an, ob Zonenredundanz aktiviert ist.

Verwenden Sie den Befehl az container app env show, um die Zonenredundanz für Ihre Container Apps-Umgebung zu überprüfen.

az containerapp env show \
  --name <CONTAINER_APP_ENV_NAME> \
  --resource-group <RESOURCE_GROUP_NAME> \
  --subscription <SUBSCRIPTION_ID>

Der Befehl gibt eine JSON-Antwort zurück. Überprüfen Sie, ob die Antwort "zoneRedundant": true enthält.

Sichere Bereitstellungsverfahren

Wenn Sie Zonenredundanz in Ihrer Container-App einrichten, werden Replikate automatisch über die Zonen in der Region verteilt. Nachdem die Replikate verteilt wurden, wird ein Lastenausgleich des Datenverkehrs zwischen ihnen vorgenommen. Bei einem Zonenausfall wird der Datenverkehr automatisch zu den Replikaten in den verbleibenden Zonen geleitet.

Sie sollten weiterhin sichere Bereitstellungstechniken wie Blau-Grün-Bereitstellung verwenden. Azure Container Apps bietet keine Bereitstellung oder Upgrades jeweils nur eine Zone.

Wenn Sie Sitzungsaffinität aktiviert haben und eine Zone abläuft, werden Clients für diese Zone an neue Replikate weitergeleitet, da die vorherigen Replikate nicht mehr verfügbar sind. Jeder Status, der den vorherigen Replikaten zugeordnet ist, geht verloren.

Migration der Verfügbarkeitszone

Um Verfügbarkeitszonen nutzen zu können, aktivieren Sie die Zonenredundanz, wenn Sie die Azure Container Apps-Umgebung erstellen. Die Umgebung muss ein virtuelles Netzwerk mit einem verfügbaren Subnetz enthalten. Sie können eine vorhandene Container Apps-Umgebung nicht von der Unterstützung für Nichtverfügbarkeitszonen zur Unterstützung für Verfügbarkeitszonen migrieren.

Regionsübergreifende Notfallwiederherstellung und Geschäftskontinuität

Bei der Notfallwiederherstellung (DR) geht es um die Wiederherstellung nach Ereignissen mit schwerwiegenden Auswirkungen, z. B. Naturkatastrophen oder fehlerhaften Bereitstellungen, die zu Downtime und Datenverlust führen. Unabhängig von der Ursache ist das beste Mittel gegen einen Notfall ein gut definierter und getesteter Notfallplan und ein Anwendungsdesign, die Notfallwiederherstellung aktiv unterstützt. Bevor Sie mit der Erstellung Ihres Notfallwiederherstellungsplans beginnen, lesen Sie die Empfehlungen zum Entwerfen einer Notfallwiederherstellungsstrategie.

Bei DR verwendet Microsoft das Modell der gemeinsamen Verantwortung. In einem Modell der gemeinsamen Verantwortung stellt Microsoft sicher, dass die grundlegenden Infrastruktur- und Plattformdienste verfügbar sind. Gleichzeitig replizieren viele Azure-Dienste nicht automatisch Daten oder greifen automatisch auf eine ausgefallene Region zurück, um eine regionsübergreifende Replikation in eine andere aktivierte Region durchzuführen. Für diese Dienste sind Sie dafür verantwortlich, einen Notfallwiederherstellungsplan zu erstellen, der für Ihre Workload geeignet ist. Die meisten Dienste, die auf Azure Platform as a Service (PaaS)-Angeboten laufen, bieten Funktionen und Anleitungen zur Unterstützung von Notfallwiederherstellung und Sie können dienstspezifische Funktionen zur Unterstützung einer schnellen Wiederherstellung nutzen, um Ihren Notfallwiederherstellungsplan zu entwickeln.

Im unwahrscheinlichen Fall eines vollständigen Ausfalls in der Region haben Sie die Möglichkeit, eine der beiden folgenden Strategien zu verwenden:

  • Manuelle Wiederherstellung: Stellen Sie Umgebungen und Apps manuell in einer neuen Region bereit oder warten Sie, bis die Region wiederhergestellt ist. Stellen Sie dann alle Umgebungen und Apps manuell erneut bereit.

  • Resiliente Wiederherstellung: Stellen Sie zunächst Ihre Container-Apps in mehreren Regionen im Voraus bereit. Verwenden Sie als Nächstes Azure Front Door oder Azure Traffic Manager, um eingehende Anforderungen zu bearbeiten und den Datenverkehr auf Ihre primäre Region zu verweisen. Wenn dann ein Ausfall auftritt, können Sie den Datenverkehr aus der betroffenen Region umleiten. Weitere Informationen finden Sie unter Regionsübergreifende Replikation in Azure.

Hinweis

Unabhängig davon, welche Strategie Sie wählen, müssen Sie sicherstellen, dass Sich Ihre Bereitstellungskonfigurationsdateien in der Quellcodeverwaltung befinden, sodass bei Bedarf problemlos eine erneute Bereitstellung möglich ist.

Weitere Leitfäden

Mit den folgenden Ressourcen können Sie Ihren eigenen Notfallwiederherstellungsplan erstellen:

Nächste Schritte