Udostępnij przez


Modele wdrażania w wielu regionach dla usługi Azure Kubernetes Service (AKS)

Usługa Azure Kubernetes Service (AKS) udostępnia zarządzane środowisko Kubernetes do wdrażania i skalowania konteneryzowanych aplikacji oraz zarządzania nimi. Aby zapewnić odporność na awarie regionalne dla aplikacji działających w usłudze AKS, można zaimplementować różne modele wdrażania w wielu regionach. Ten artykuł zawiera omówienie tych modeli, ich zalet i wad oraz najlepszych rozwiązań dotyczących utrzymania czasu pracy aplikacji.

Usługa AKS oferuje szereg funkcji, które obsługują zarówno wysoką dostępność ,wysoką dostępność, jak i odzyskiwanie po awarii (DR) dla klastra i aplikacji działających w usłudze AKS. Aby uzyskać więcej informacji na temat obsługi wymagań dotyczących niezawodności usługi AKS, zobacz Niezawodność w usłudze AKS.

Rozważania

Poniżej przedstawiono kilka ważnych zagadnień dotyczących implementowania modeli wdrażania w wielu regionach w usłudze AKS:

Zasoby regionalne i globalne

Zasoby regionalne są aprowizowane w ramach sygnatury wdrożenia w jednym regionie świadczenia usługi Azure. Te zasoby nie współużytkują żadnych zasobów w innych regionach i mogą zostać niezależnie usunięte lub zreplikowane w innych regionach. Aby uzyskać więcej informacji, zobacz Zasoby regionalne.

Zasoby globalne współdzielą okres istnienia systemu i mogą być dostępne globalnie w kontekście wdrożenia w wielu regionach. Aby uzyskać więcej informacji, zobacz Zasoby globalne.

Globalne równoważenie obciążenia

Globalne usługi równoważenia obciążenia dystrybuują ruch między regionalnymi zapleczami, chmurami lub hybrydowymi usługami lokalnymi. Te usługi kierują ruch użytkowników końcowych do najbliższego dostępnego zaplecza. Reagują również na zmiany w niezawodności usługi lub wydajności, aby zmaksymalizować dostępność i wydajność. Następujące usługi platformy Azure zapewniają globalne równoważenie obciążenia:

Definicja zakresu

Czas pracy aplikacji staje się ważny podczas zarządzania klastrami usługi AKS. Domyślnie usługa AKS zapewnia wysoką dostępność przy użyciu wielu węzłów w zestawie skalowania maszyn wirtualnych, ale te węzły nie chronią systemu przed awarią regionu. Aby zmaksymalizować czas pracy, zaplanuj ciągłość działania i przygotuj się do odzyskiwania po awarii, korzystając z następujących najlepszych rozwiązań:

  • Planowanie klastrów usługi AKS w wielu regionach.
  • Kierowanie ruchu między wieloma klastrami przy użyciu usługi Azure Traffic Manager.
  • Użyj replikacji geograficznej dla rejestrów obrazów kontenera.
  • Planowanie stanu aplikacji w wielu klastrach.
  • Replikowanie magazynu w wielu regionach.

Implementacje modelu wdrażania w wielu regionach

Poniższa tabela zawiera podsumowanie trzech głównych modeli wdrażania w wielu regionach w usłudze AKS wraz z ich zaletami i wadami:

Model wdrażania Zalety Minusy
Aktywne-aktywne • Brak utraty lub niespójności danych podczas pracy w trybie failover
• Wysoka odporność
• Lepsze wykorzystanie zasobów o wyższej wydajności
• Złożone wdrażanie i zarządzanie
• Wyższy koszt
• Wymaga modułu równoważenia obciążenia i formy routingu ruchu
Aktywny-pasywny • Prostsza implementacja i zarządzanie
• Niższe koszty
• Nie wymaga modułu równoważenia obciążenia ani usługi Traffic Manager
• Potencjalna utrata lub niespójność danych podczas pracy w trybie failover
• Dłuższy czas odzyskiwania i przestoje
• Niedostateczne wykorzystanie zasobów
Pasywne zimne • Najniższy koszt
• Nie wymaga synchronizacji, replikacji, modułu równoważenia obciążenia ani usługi Traffic Manager
• Nadaje się do obciążeń o niskim priorytcie, niekrytycznym
• Wysokie ryzyko utraty lub niespójności danych podczas pracy w trybie failover
• Najdłuższy czas odzyskiwania i przestój
• Wymaga ręcznej interwencji w celu aktywowania klastra i wyzwalania kopii zapasowej

Model wdrażania o wysokiej dostępności aktywny-aktywny

W modelu wdrażania wysokiej dostępności aktywne-aktywne (HA) istnieją dwa niezależne klastry usługi AKS wdrożone w dwóch różnych regionach świadczenia usługi Azure (zazwyczaj sparowane regiony, takie jak Kanada Środkowa i Kanada Wschodnia lub Wschodnie stany USA 2 i Środkowe stany USA), które aktywnie obsługują ruch.

W przypadku tej przykładowej architektury:

  • Dwa klastry usługi AKS są wdrażane w oddzielnych regionach świadczenia usługi Azure.
  • Podczas normalnych operacji ruch sieciowy jest kierowany między obydwoma regionami. Jeśli jeden region stanie się niedostępny, ruch automatycznie kieruje się do regionu znajdującego się najbliżej użytkownika, który wystawił żądanie.
  • Istnieje wdrożona para piasty i szprych dla każdego regionalnego wystąpienia usługi AKS. Zasady usługi Azure Firewall Manager zarządzają regułami zapory w różnych regionach.
  • Usługa Azure Key Vault jest aprowizowana w każdym regionie do przechowywania wpisów tajnych i kluczy.
  • Usługa Azure Front Door równoważy obciążenie i kieruje ruch do regionalnego wystąpienia usługi aplikacja systemu Azure Gateway, które znajduje się przed każdym klastrem usługi AKS.
  • Regionalne wystąpienia usługi Log Analytics przechowują regionalne metryki sieci i dzienniki diagnostyczne.
  • Obrazy kontenerów dla obciążenia są przechowywane w zarządzanym rejestrze kontenerów. Pojedynczy rejestr kontenerów platformy Azure jest używany dla wszystkich wystąpień platformy Kubernetes w klastrze. Replikacja geograficzna dla usługi Azure Container Registry umożliwia replikowanie obrazów do wybranych regionów świadczenia usługi Azure i zapewnia stały dostęp do obrazów, nawet jeśli w regionie wystąpi awaria.

Aby utworzyć model wdrażania aktywny-aktywny w usłudze AKS, wykonaj następujące kroki:

  1. Utwórz dwa identyczne wdrożenia w dwóch różnych regionach świadczenia usługi Azure.

  2. Utwórz dwa wystąpienia aplikacji internetowej.

  3. Utwórz profil usługi Azure Front Door z następującymi zasobami:

    • Punkt końcowy.
    • Dwie grupy źródeł, z których każdy ma priorytet.
    • Trasa.
  4. Ogranicz ruch sieciowy do aplikacji internetowych tylko z wystąpienia usługi Azure Front Door. 5 Skonfiguruj wszystkie inne usługi platformy Azure zaplecza, takie jak bazy danych, konta magazynu i dostawcy uwierzytelniania.

  5. Wdrażanie kodu w obu aplikacjach internetowych przy użyciu ciągłego wdrażania.

Aby uzyskać więcej informacji, zobacz Omówienie zalecanego rozwiązania o wysokiej dostępności aktywne-aktywne dla usługi AKS.

Model wdrażania odzyskiwania po awarii aktywny-pasywny

W modelu wdrażania odzyskiwania po awarii aktywne-pasywne (DR) istnieją dwa niezależne klastry usługi AKS wdrożone w dwóch różnych regionach świadczenia usługi Azure (zazwyczaj sparowanych regionach, takich jak Kanada Środkowa i Kanada Wschodnia lub Wschodnie stany USA 2 i Środkowe stany USA), które aktywnie obsługują ruch. Tylko jeden z klastrów aktywnie obsługuje ruch w danym momencie. Drugi klaster zawiera te same dane konfiguracji i aplikacji co aktywny klaster, ale nie akceptuje ruchu, chyba że jest kierowany przez usługę Traffic Manager.

W przypadku tej przykładowej architektury:

  • Dwa klastry usługi AKS są wdrażane w oddzielnych regionach świadczenia usługi Azure.
  • Podczas normalnych operacji ruch sieciowy kieruje się do podstawowego klastra usługi AKS, który został ustawiony w konfiguracji usługi Azure Front Door.
    • Należy ustawić priorytet z zakresu od 1 do 5 , a 1 jest najwyższym i 5 najniższym.
    • Można ustawić wiele klastrów na ten sam poziom priorytetu i określić wagę każdego z nich.
  • Jeśli klaster podstawowy stanie się niedostępny (wystąpi awaria), ruch automatycznie kieruje się do następnego regionu wybranego w usłudze Azure Front Door.
    • Cały ruch musi przechodzić przez usługę Azure Front Door Traffic Manager, aby ten system działał.
  • Usługa Azure Front Door kieruje ruch do bramy aplikacja systemu Azure w regionie podstawowym (klaster musi być oznaczony priorytetem 1). Jeśli ten region zakończy się niepowodzeniem, usługa przekierowuje ruch do następnego klastra na liście priorytetów.
    • Reguły pochodzą z usługi Azure Front Door.
  • Para piasty i szprych jest wdrażana dla każdego regionalnego wystąpienia usługi AKS. Zasady usługi Azure Firewall Manager zarządzają regułami zapory w różnych regionach.
  • Usługa Azure Key Vault jest aprowizowana w każdym regionie do przechowywania wpisów tajnych i kluczy.
  • Regionalne wystąpienia usługi Log Analytics przechowują regionalne metryki sieci i dzienniki diagnostyczne.
  • Obrazy kontenerów dla obciążenia są przechowywane w zarządzanym rejestrze kontenerów. Pojedynczy rejestr kontenerów platformy Azure jest używany dla wszystkich wystąpień platformy Kubernetes w klastrze. Replikacja geograficzna dla usługi Azure Container Registry umożliwia replikowanie obrazów do wybranych regionów świadczenia usługi Azure i zapewnia stały dostęp do obrazów, nawet jeśli w regionie wystąpi awaria.

Aby utworzyć model wdrażania aktywne-pasywne w usłudze AKS, wykonaj następujące kroki:

  1. Utwórz dwa identyczne wdrożenia w dwóch różnych regionach świadczenia usługi Azure.

  2. Skonfiguruj reguły skalowania automatycznego dla aplikacji pomocniczej, aby była skalowana do tej samej liczby wystąpień co podstawowa, gdy region podstawowy stanie się nieaktywny. Nieaktywny nie musi być skalowany w górę. Pomaga to zmniejszyć koszty.

  3. Utwórz dwa wystąpienia aplikacji internetowej z jednym w każdym klastrze.

  4. Utwórz profil usługi Azure Front Door z następującymi zasobami:

    • Punkt końcowy.
    • Grupa pochodzenia z priorytetem jednego dla regionu podstawowego.
    • Druga grupa pochodzenia z priorytetem dwóch dla regionu pomocniczego.
    • Trasa.
  5. Ogranicz ruch sieciowy do aplikacji internetowych tylko z wystąpienia usługi Azure Front Door.

  6. Skonfiguruj wszystkie inne usługi platformy Azure zaplecza, takie jak bazy danych, konta magazynu i dostawcy uwierzytelniania.

  7. Wdrażanie kodu w obu aplikacjach internetowych przy użyciu ciągłego wdrażania.

Aby uzyskać więcej informacji, zobacz Zalecane rozwiązanie do odzyskiwania po awarii aktywne-pasywne — omówienie usługi AKS.

Model wdrażania pasywnego trybu failover

Model wdrażania pasywnego trybu failover w trybie pasywnym jest skonfigurowany w taki sam sposób, jak model wdrażania odzyskiwania po awarii aktywny-pasywny, z wyjątkiem klastrów, dopóki użytkownik nie aktywuje ich w razie awarii. Rozważamy takie podejście poza zakresem , ponieważ obejmuje on podobną konfigurację do aktywne-pasywne, ale z dodatkową złożonością ręcznej interwencji w celu aktywowania klastra i wyzwalania kopii zapasowej.

W przypadku tej przykładowej architektury:

  • Utworzysz dwa klastry usługi AKS, najlepiej w różnych regionach lub strefach, aby zapewnić lepszą odporność.
  • Po przejściu w tryb failover należy aktywować wdrożenie, aby przejąć przepływ ruchu.
  • W przypadku awarii podstawowego pasywnego klastra należy ręcznie aktywować zimny klaster, aby przejąć przepływ ruchu.
  • Ten warunek musi być ustawiany przez ręczne dane wejściowe za każdym razem lub przez określone przez Ciebie zdarzenie.
  • Usługa Azure Key Vault jest aprowizowana w każdym regionie do przechowywania wpisów tajnych i kluczy.
  • Regionalne wystąpienia usługi Log Analytics przechowują regionalne metryki sieci i dzienniki diagnostyczne dla każdego klastra.

Aby utworzyć pasywny model wdrażania trybu failover w usłudze AKS, wykonaj następujące kroki:

  1. Utwórz dwa identyczne wdrożenia w różnych strefach/regionach.
  2. Skonfiguruj reguły skalowania automatycznego dla aplikacji pomocniczej, aby była skalowana do tej samej liczby wystąpień co podstawowa, gdy region podstawowy stanie się nieaktywny. Nieaktywny nie musi być skalowany w górę, co pomaga zmniejszyć koszty.
  3. Utwórz dwa wystąpienia aplikacji internetowej z jednym w każdym klastrze.
  4. Skonfiguruj wszystkie inne usługi platformy Azure zaplecza, takie jak bazy danych, konta magazynu i dostawcy uwierzytelniania.
  5. Ustaw warunek po wyzwoleniu klastra zimnego. Jeśli potrzebujesz, możesz użyć modułu równoważenia obciążenia.

Aby uzyskać więcej informacji, zobacz Omówienie zalecanego rozwiązania pasywnego trybu failover dla usługi AKS.

Aby uzyskać więcej informacji, zobacz następujące artykuły: