0Pricing
Azure Fundamentals · Lekcja

Architektura active-active w wielu regionach

Proszę rozmieścić aplikację internetową w dwóch regionach Azure w konfiguracji active-active, używając Azure Traffic Manager do kierowania użytkowników do najbliższego sprawnego punktu końcowego.

Architektura active-active w wielu regionach to bezpłatna lekcja Azure Fundamentals na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Azure Fundamentals, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Azure Fundamentals zawiera 4 lekcji w sumie.

Poza pojedynczym regionem

Nawet w przypadku korzystania ze stref dostępności obciążenie wdrożone w jednym regionie Azure może zostać dotknięte awarią regionalną — rzadkim, ale możliwym zdarzeniem spowodowanym poważną katastrofą, silną burzą lub rozległą awarią infrastruktury. Aby zapewnić najwyższy poziom dostępności, przedsiębiorstwa wdrażają obciążenia w co najmniej dwóch regionach Azure, dzięki czemu aplikacja może nadal obsługiwać użytkowników, nawet jeśli cały region przestanie działać.

Active-active a active-passive

Istnieją dwa główne wzorce wdrożeń multi-region:

  • Active-active — zasoby w obu regionach jednocześnie obsługują rzeczywisty ruch. Maksymalizuje to dostępność, a także może zmniejszyć opóźnienia dzięki kierowaniu użytkowników do najbliższego regionu.
  • Active-passive — zasoby w regionie pomocniczym pozostają w stanie gotowości i zaczynają otrzymywać ruch dopiero po wystąpieniu zdarzenia przełączenia awaryjnego. To rozwiązanie kosztuje mniej, ale wiąże się z dłuższym czasem odzyskiwania.

Aby zapewnić najwyższą dostępność, preferowanym rozwiązaniem jest active-active.

Przegląd usługi Azure Traffic Manager

Azure Traffic Manager to globalny moduł równoważenia obciążenia oparty na systemie DNS, który rozdziela ruch między punkty końcowe w różnych regionach Azure (lub lokalnie). Używa sond kondycji do monitorowania każdego punktu końcowego oraz metod routingu (wydajnościowej, ważonej, priorytetowej, geograficznej i wielowartościowej) do podejmowania decyzji, dokąd kierować ruch. W konfiguracji active-active należy użyć routingu wydajnościowego, aby kierować użytkowników do najbliższego sprawnego regionu.

# Create a Traffic Manager profile:
az network traffic-manager profile create \
  --resource-group myRG \
  --name myTMProfile \
  --routing-method Performance \
  --unique-dns-name myapp-global

# Add endpoints for each region:
az network traffic-manager endpoint create \
  --resource-group myRG \
  --profile-name myTMProfile \
  --name eastus-endpoint \
  --type azureEndpoints \
  --target-resource-id /subscriptions/.../publicIPAddresses/eastus-pip

Metody routingu Traffic Manager

Traffic Manager obsługuje kilka metod routingu dostosowanych do różnych scenariuszy:

  • Performance — kieruje ruch do punktu końcowego o najmniejszym opóźnieniu (najlepsza metoda dla active-active)
  • Weighted — rozdziela ruch zgodnie z procentowym udziałem wagowym (przydatna podczas stopniowego wdrażania)
  • Priority — wysyła cały ruch do głównego punktu końcowego, a w razie potrzeby przełącza go na pomocniczy (active-passive)
  • Geographic — kieruje użytkowników na podstawie ich położenia geograficznego (suwerenność danych)

Replikacja danych między regionami

W architekturze active-active dane muszą być replikowane między regionami, aby użytkownicy w obu regionach odczytywali spójne dane. Dostępne opcje obejmują:

  • Azure SQL Database z replikacją geograficzną — pomocnicza replika tylko do odczytu w innym regionie
  • Azure Cosmos DB z zapisem w wielu regionach — wszystkie regiony jednocześnie akceptują operacje zapisu
  • Azure Storage z GRS — asynchroniczna replikacja do regionu pomocniczego

Wybór zależy od wymagań dotyczących spójności i dostępności zapisu.

Cosmos DB na potrzeby zapisu w wielu regionach

Azure Cosmos DB doskonale nadaje się do architektur active-active, ponieważ obsługuje zapis w wielu regionach — wszystkie skonfigurowane regiony mogą jednocześnie przyjmować operacje zapisu. Cosmos DB korzysta z konfigurowalnych poziomów spójności (od silnej do ostatecznej), aby zarządzać synchronizacją replik. W scenariuszach active-active często wybiera się spójność sesji lub ograniczoną nieaktualność, które równoważą wydajność i poprawność danych.

# Enable multi-region writes on a Cosmos DB account:
az cosmosdb update \
  --resource-group myRG \
  --name myCosmosAccount \
  --enable-multiple-write-locations true

Front Door a Traffic Manager

Zarówno Traffic Manager, jak i Azure Front Door zapewniają globalne równoważenie obciążenia, ale na różnych poziomach:

  • Traffic Manager działa na poziomie DNS — przekierowuje klienta do właściwego punktu końcowego w regionie, ale połączenie jest nawiązywane bezpośrednio z tym punktem końcowym. Usługa działa w warstwie DNS.
  • Azure Front Door to serwer proxy anycast — kończy połączenie klienta w globalnym punkcie obecności (PoP) i przekazuje żądanie do źródła. Oprócz routingu zapewnia WAF, odciążanie SSL i buforowanie.

Uwzględnianie par regionów

Firma Microsoft wyznacza pary regionów dla każdego regionu Azure — region pomocniczy w tej samej geografii, położony wystarczająco daleko, aby przetrwać katastrofy regionalne. Projektując architektury multi-region, należy w miarę możliwości używać sparowanego regionu jako pomocniczego. Podczas planowanej konserwacji platformy aktualizowany jest tylko jeden region z pary naraz, co ogranicza ryzyko jednoczesnych zakłóceń.

# View Azure region pairs:
az account list-locations --query '[].{Name:name,Pair:metadata.pairedRegion[0].name}' --output table

Stan sesji w konfiguracji active-active

W przypadku wdrożeń active-active żądania użytkownika mogą być obsługiwane przez różne regiony. Jeśli aplikacja przechowuje stan sesji w pamięci serwera internetowego, przełączanie użytkownika między regionami powoduje problemy. Rozwiązaniem jest użycie rozproszonego magazynu sesji — na przykład Azure Cache for Redis z replikacją geograficzną — aby dane sesji były dostępne z każdego regionu.

Aspekty kosztowe konfiguracji active-active

Architektura active-active jest droższa niż wdrożenie w jednym regionie, ponieważ pełna kopia infrastruktury działa w co najmniej dwóch regionach. Dodatkowe koszty obejmują transfer danych między regionami, replikację geograficzną baz danych oraz opłaty za Traffic Manager lub Front Door. Należy przeprowadzić analizę kosztów i korzyści: w przypadku obciążeń o znaczeniu krytycznym koszt przestoju zazwyczaj znacznie przewyższa koszt drugiego regionu.

Testowanie przełączania awaryjnego multi-region

Architekturę active-active należy regularnie testować, aby mieć pewność, że zadziała wtedy, gdy będzie potrzebna. Narzędzia do inżynierii chaosu, takie jak Azure Chaos Studio, umożliwiają celowe wywoływanie awarii — na przykład zatrzymanie wszystkich maszyn wirtualnych w jednym regionie — i obserwowanie reakcji systemu. Regularne testy potwierdzają, że sondy kondycji Traffic Manager wykrywają awarie, przełączenie awaryjne następuje w ramach RTO, a dane pozostają spójne między regionami.

Szybki sprawdzian

Sprawdź swoją wiedzę na temat zagadnień Microsoft Azure Fundamentals (AZ-900) omówionych w tej lekcji.

Podsumowanie lekcji

W tej lekcji poznali Państwo następujące zagadnienia: architektura active-active jednocześnie wdraża działające zasoby w wielu regionach, zapewniając maksymalną dostępność; Azure Traffic Manager kieruje ruchem za pomocą metod wydajnościowej, priorytetowej, ważonej lub geograficznej; a replikacja danych (zapis w wielu regionach Cosmos DB, replikacja geograficzna SQL) jest niezbędna do zapewnienia spójności między regionami. Następnie omówimy sondy kondycji i wzorce kontrolowanego ograniczania funkcjonalności.

Często zadawane pytania

Czy lekcja „Architektura active-active w wielu regionach” jest bezpłatna?

Tak — pełny tekst „Architektura active-active w wielu regionach” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Azure Fundamentals, przejdź na CoddyKit PRO. Kurs Azure Fundamentals zawiera 4 lekcji w sumie.

Co nauczysz się w „Architektura active-active w wielu regionach”?

Proszę rozmieścić aplikację internetową w dwóch regionach Azure w konfiguracji active-active, używając Azure Traffic Manager do kierowania użytkowników do najbliższego sprawnego punktu końcowego. Ćwiczysz Azure Fundamentals z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Azure Fundamentals?

Nie wymagamy żadnego doświadczenia. Azure Fundamentals w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.

Ile czasu zajmuje lekcja „Architektura active-active w wielu regionach”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Azure Fundamentals?

Tak. Każda lekcja Azure Fundamentals zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Umowy SLA Azure i złożone umowy SLA
  2. Zestawy dostępności i strefy dostępności
  3. Architektura active-active w wielu regionach
  4. Sondy kondycji i kontrolowana degradacja
← Powrót do Azure Fundamentals