Niezawodność w usłudze Azure Container Apps
W tym artykule opisano obsługę niezawodności w usłudze Azure Container Apps i opisano zarówno odporność regionalną ze strefami dostępności, jak i odpornością między regionami w przypadku odzyskiwania po awarii. Aby uzyskać bardziej szczegółowe omówienie niezawodności na platformie Azure, zobacz Niezawodność platformy Azure.
Obsługa strefy dostępności
Strefy dostępności są fizycznie oddzielnymi grupami centrów danych w każdym regionie świadczenia usługi Azure. Gdy jedna strefa ulegnie awarii, usługi mogą przejść w tryb failover do jednej z pozostałych stref.
Aby uzyskać więcej informacji na temat stref dostępności na platformie Azure, zobacz Co to są strefy dostępności?.
Usługa Azure Container Apps używa stref dostępności w regionach, w których są dostępne w celu zapewnienia wysokiej dostępności ochrony aplikacji i danych z awarii centrum danych.
Dzięki włączeniu funkcji nadmiarowości strefy usługi Container Apps repliki są automatycznie dystrybuowane między strefami w regionie. Ruch jest zrównoważony wśród replik. Jeśli wystąpi awaria strefy, ruch jest automatycznie kierowany do replik w pozostałych strefach.
Uwaga
Nie ma dodatkowych opłat za włączenie nadmiarowości strefy, ale zapewnia korzyści tylko wtedy, gdy masz co najmniej 2 repliki, a 3 lub więcej jest idealnym rozwiązaniem, ponieważ większość regionów obsługujących nadmiarowość stref ma 3 strefy.
Wymagania wstępne
Usługa Azure Container Apps oferuje taką samą obsługę niezawodności niezależnie od typu planu.
Usługa Azure Container Apps używa stref dostępności w regionach, w których są dostępne. Aby uzyskać listę regionów obsługujących strefy dostępności, zobacz Regiony platformy Azure ze strefami dostępności.
Ulepszenia umowy SLA
Brak zwiększonych umów SLA dla usługi Azure Container Apps. Aby uzyskać więcej informacji na temat umów SLA usługi Azure Container Apps, zobacz Umowa dotycząca poziomu usług dla usługi Azure Container Apps.
Tworzenie zasobu z włączoną strefą dostępności
Konfigurowanie nadmiarowości strefy w środowisku usługi Container Apps
Aby korzystać ze stref dostępności, należy włączyć nadmiarowość strefy podczas tworzenia środowiska usługi Container Apps. Środowisko musi zawierać sieć wirtualną z dostępną podsiecią. Aby zapewnić właściwą dystrybucję replik, ustaw minimalną liczbę replik aplikacji na trzy.
Włączanie nadmiarowości strefy za pośrednictwem witryny Azure Portal
Aby utworzyć aplikację kontenera w środowisku z włączoną nadmiarowością strefy przy użyciu witryny Azure Portal:
- Przejdź do Portalu Azure.
- Wyszukaj pozycję Container Apps w górnym polu wyszukiwania.
- Wybierz pozycję Aplikacje kontenera.
- Wybierz pozycję Utwórz nowy w polu Środowisko aplikacji kontenera, aby otworzyć panel Tworzenie środowiska aplikacji kontenera.
- Wprowadź nazwę środowiska.
- Wybierz pozycję Włączone dla pola Nadmiarowość strefy.
Nadmiarowość strefy wymaga sieci wirtualnej z podsiecią infrastruktury. Możesz wybrać istniejącą sieć wirtualną lub utworzyć nową. Podczas tworzenia nowej sieci wirtualnej możesz zaakceptować podane wartości lub dostosować ustawienia.
- Wybierz kartę Sieć.
- Aby przypisać niestandardową nazwę sieci wirtualnej, wybierz pozycję Utwórz nowy w polu Sieć wirtualna .
- Aby przypisać niestandardową nazwę podsieci infrastruktury, wybierz pozycję Utwórz nowy w polu Podsieć infrastruktury.
- Dla wirtualnego adresu IP można wybrać opcję Wewnętrzny lub Zewnętrzny.
- Wybierz pozycję Utwórz.
Włączanie nadmiarowości strefy za pomocą interfejsu wiersza polecenia platformy Azure
Utwórz sieć wirtualną i podsieć infrastruktury do uwzględnienia w środowisku usługi Container Apps.
W przypadku używania tych poleceń zastąp wartości <PLACEHOLDERS>
wartościami .
Uwaga
Środowisko Zużycie wymaga dedykowanej podsieci z zakresem /23
CIDR lub większym. Środowisko profilów obciążeń wymaga dedykowanej podsieci z zakresem CIDR lub /27
większym. Aby dowiedzieć się więcej o określaniu rozmiaru podsieci, zobacz omówienie architektury sieci.
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
Następnie wykonaj zapytanie dotyczące identyfikatora podsieci infrastruktury.
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:]'`
Na koniec utwórz środowisko za pomocą parametru --zone-redundant
. Lokalizacja musi być tą samą lokalizacją używaną podczas tworzenia sieci wirtualnej.
az containerapp env create \
--name <CONTAINER_APP_ENV_NAME> \
--resource-group <RESOURCE_GROUP_NAME> \
--location "<LOCATION>" \
--infrastructure-subnet-resource-id $INFRASTRUCTURE_SUBNET \
--zone-redundant
Weryfikowanie nadmiarowości strefy za pomocą interfejsu wiersza polecenia platformy Azure
Uwaga
Witryna Azure Portal nie pokazuje, czy jest włączona nadmiarowość strefy.
Użyj polecenia , az container app env show
aby sprawdzić, czy nadmiarowość strefy jest włączona dla środowiska usługi Container Apps.
az containerapp env show \
--name <CONTAINER_APP_ENV_NAME> \
--resource-group <RESOURCE_GROUP_NAME> \
--subscription <SUBSCRIPTION_ID>
Polecenie zwraca odpowiedź JSON. Sprawdź, czy odpowiedź zawiera "zoneRedundant": true
.
Bezpieczne techniki wdrażania
Po skonfigurowaniu nadmiarowości strefy w aplikacji kontenera repliki są automatycznie dystrybuowane między strefy w regionie. Po rozproszeniu replik ruch jest między nimi zrównoważony. Jeśli wystąpi awaria strefy, ruch automatycznie kieruje się do replik w pozostałej strefie.
Nadal należy używać bezpiecznych technik wdrażania, takich jak wdrożenie niebiesko-zielone. Usługa Azure Container Apps nie zapewnia jednostrefowego wdrożenia ani uaktualnień.
Jeśli włączono koligację sesji, a strefa ulegnie awarii, klienci dla tej strefy są kierowani do nowych replik, ponieważ poprzednie repliki nie są już dostępne. Wszystkie stany skojarzone z poprzednimi replikami zostaną utracone.
Migracja strefy dostępności
Aby korzystać ze stref dostępności, włącz nadmiarowość strefy podczas tworzenia środowiska usługi Container Apps. Środowisko musi zawierać sieć wirtualną z dostępną podsiecią. Nie można migrować istniejącego środowiska usługi Container Apps z obsługi stref niedostępności do obsługi stref dostępności.
Odzyskiwanie po awarii między regionami i ciągłość działania
Odzyskiwanie po awarii dotyczy odzyskiwania po wystąpieniu zdarzeń o dużym wpływie, takich jak klęski żywiołowe lub nieudane wdrożenia, które powodują przestoje i utratę danych. Niezależnie od przyczyny najlepszym rozwiązaniem dla awarii jest dobrze zdefiniowany i przetestowany plan odzyskiwania po awarii oraz projekt aplikacji, który aktywnie obsługuje odzyskiwanie po awarii. Zanim zaczniesz myśleć o tworzeniu planu odzyskiwania po awarii, zobacz Zalecenia dotyczące projektowania strategii odzyskiwania po awarii.
Jeśli chodzi o odzyskiwanie po awarii, firma Microsoft korzysta z modelu wspólnej odpowiedzialności. W modelu wspólnej odpowiedzialności firma Microsoft zapewnia dostępność infrastruktury bazowej i usług platformy. Jednocześnie wiele usług platformy Azure nie replikuje automatycznie danych ani nie wraca z regionu, w którym wystąpił błąd, aby przeprowadzić replikację krzyżową do innego regionu z włączoną obsługą. W przypadku tych usług ponosisz odpowiedzialność za skonfigurowanie planu odzyskiwania po awarii, który działa dla obciążenia. Większość usług uruchamianych na platformie Azure jako usługa (PaaS) oferuje funkcje i wskazówki dotyczące obsługi odzyskiwania po awarii. Funkcje specyficzne dla usługi umożliwiają szybkie odzyskiwanie w celu ułatwienia opracowania planu odzyskiwania po awarii.
W mało prawdopodobnym przypadku awarii pełnego regionu możesz użyć jednej z dwóch strategii:
Odzyskiwanie ręczne: ręcznie wdróż w nowym regionie lub poczekaj na odzyskanie regionu, a następnie ręcznie ponownie wdróż wszystkie środowiska i aplikacje.
Odzyskiwanie odporne: najpierw wdróż aplikacje kontenerów z wyprzedzeniem w wielu regionach. Następnie użyj usługi Azure Front Door lub Azure Traffic Manager do obsługi żądań przychodzących, wskazując ruch do regionu podstawowego. Następnie, jeśli wystąpi awaria, możesz przekierować ruch z dala od objętego regionu. Aby uzyskać więcej informacji, zobacz Replikacja między regionami na platformie Azure.
Uwaga
Niezależnie od wybranej strategii upewnij się, że pliki konfiguracji wdrożenia znajdują się w kontroli źródła, aby w razie potrzeby można było łatwo wdrożyć je ponownie.
Więcej wskazówek
Następujące zasoby mogą pomóc w utworzeniu własnego planu odzyskiwania po awarii:
- Failure and disaster recovery for Azure applications (Awarie i odzyskiwanie po awariach w aplikacjach platformy Azure)
- Odporność platformy Azure — wskazówki techniczne