Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zestawy dostępności to logiczne grupy maszyn wirtualnych, które mają słabe antykoligacyjne relacje, co zapewnia równomierne rozmieszczenie ich wewnątrz dostępnych domen błędów w klastrze fizycznym. Domena błędów w tym kontekście jest hostem fizycznym lub grupą hostów fizycznych. Dzięki zestawom dostępności usługa AKS Arc może zwiększyć dostępność i dystrybucję obciążeń platformy Kubernetes. Zestawy dostępności mogą uniknąć scenariuszy, w których awaria pojedynczego węzła może spowodować, że wiele maszyn wirtualnych przestanie działać lub stanie się niezrównoważone.
Omówienie
Zestawy dostępności oferują kilka korzyści dla usługi AKS dla użytkowników lokalnych platformy Azure, takich jak:
- Zwiększa dostępność i odporność aplikacji, unikając scenariuszy, w których wiele maszyn wirtualnych w ramach tej samej puli węzłów lub płaszczyzny sterowania ulegnie awarii lub stanie się niezrównoważone z powodu awarii jednego węzła.
- Optymalizuje użycie zasobów i wydajność klastra, zapewniając równomierną dystrybucję maszyn wirtualnych w dostępnych węzłach i nie koncentruje się na jednym węźle lub podzestawie węzłów.
- Jest zgodna z najlepszymi rozwiązaniami i oczekiwaniami klientów i partnerów, którzy szukają niezawodnego i spójnego środowiska lokalnego platformy Kubernetes.
Włącz zestawy dostępności
Dzięki usłudze AKS w usłudze Azure Local funkcja zestawów dostępności jest domyślnie włączona podczas tworzenia puli węzłów. Za pomocą usługi AKS w systemie Windows Server można włączyć funkcję zestawów dostępności, dodając -enableAvailabilitySet parametr podczas tworzenia klastra usługi AKS, na przykład New-AksHciCluster -Name <name> -controlPlaneNodeCount 3 -osType Linux -kubernetesVersion $kubernetesVersion -enableAvailabilitySet.
Jak działają zestawy dostępności w usłudze AKS z obsługą Azure Arc
Podczas tworzenia nowego klastra AKS Arc, AKS Arc automatycznie tworzy zestawy dostępności: jeden dla maszyn wirtualnych warstwy sterującej i kolejny dla każdej puli węzłów w klastrze Kubernetes. Każda pula węzłów ma własny zestaw dostępności. Dzięki temu układowi usługa AKS Arc gwarantuje, że maszyny wirtualne tej samej roli (płaszczyzny sterowania lub puli węzłów) nigdy nie znajdują się na tym samym hoście fizycznym i że są dystrybuowane między dostępne węzły w klastrze.
Po utworzeniu zestawów dostępności i przypisaniu maszyn wirtualnych system automatycznie umieszcza je w odpowiednich węzłach fizycznych. Jeśli węzeł ulegnie awarii, system automatycznie przełączy maszyny wirtualne w tryb failover do innych węzłów i ponownie je zrównoważy po odzyskaniu węzła. Dzięki temu można osiągnąć wysoką dostępność i optymalną dystrybucję obciążeń Kubernetes bez ręcznej interwencji.
Rozważ użycie usługi AKS w klastrze lokalnym platformy Azure z dwoma fizycznymi maszynami hosta A i hostem B, trzema maszynami wirtualnymi płaszczyzny sterowania i dwie maszynami wirtualnymi węzłów roboczych, Nodepool1VM1 i Nodepool1VM2. Aby zapewnić wysoką dostępność aplikacji Kubernetes, maszyny wirtualne puli węzłów nigdy nie muszą współużytkować tego samego hosta, chyba że jeden z hostów jest tymczasowo niedostępny w przypadku planowanej konserwacji lub problemu z pojemnością, co może spowodować tymczasowe umieszczenie maszyny wirtualnej (maszyny wirtualnej) na alternatywnym hoście.
Na poniższym diagramie każdy kolor reprezentuje grupę anty-afinity:
Jeśli host B zrestartuje się, Control Plane VM2, Control Plane VM3 i Nodepool1VM2 przełączą się do hosta A jak pokazano na poniższej ilustracji. Zakładając, że Twoja aplikacja działa na zasobnikach w NodePoolVM1, ten ponowny rozruch nie wpływa na aplikację.
W starej architekturze, jeśli host B wrócił do trybu online po ponownym uruchomieniu, nie było gwarancji, że maszyny wirtualne zostaną przeniesione z hosta A do hosta B (ponowne równoważenie), co zmusza obciążenia do pozostania na tym samym hoście i utworzenia pojedynczego punktu awarii, jak pokazano na poniższym diagramie:
Zestawy dostępności dla usługi AKS Arc mogą pomóc w ponownym równoważeniu maszyn wirtualnych po odzyskaniu hosta po tymczasowym przestoju. W tym przykładzie ControlPlaneVM2, ControlPlaneVM3 i Nodepool1VM2 zostaną automatycznie przeniesione do hosta B, jak pokazano poniżej:
Ważne
Zestawy dostępności w usłudze AKS Arc to nowa funkcja, która jest w trakcie rozwoju i doskonalenia. Nie obsługujemy jeszcze ręcznej konfiguracji domen błędów ani zestawów dostępności. Nie można zmienić domen błędów zestawu dostępności po jego utworzeniu. Maszyny wirtualne są przypisywane do zestawu dostępności podczas tworzenia klastra i nie można ich migrować do innego zestawu dostępności.
Dodawanie lub usuwanie maszyn
W scenariuszu usuwania hosta host nie jest już uważany za część klastra. To usunięcie danych zwykle występuje, gdy zastępujesz maszynę z powodu problemów sprzętowych lub zmniejszasz lokalny klaster platformy Azure z innych przyczyn. Podczas awarii węzła węzeł pozostaje częścią klastra lokalnego platformy Azure, ale jest wyświetlany jako Wyłączony.
Jeśli maszyna fizyczna (domena błędów) zostanie trwale usunięta z klastra, konfiguracja zestawu dostępności nie zostanie zmodyfikowana w celu zmniejszenia liczby domen błędów. W tym scenariuszu zestaw dostępności wprowadza stan złej kondycji. Zalecamy ponowne wdrożenie klastrów Kubernetes w taki sposób, aby zestaw dostępności został zaktualizowany przy użyciu odpowiedniej liczby domen błędów.
Po dodaniu nowej maszyny fizycznej (domeny błędów) do klastra konfiguracja zestawu dostępności zostanie automatycznie rozszerzona w celu uwzględnienia nowej maszyny. Jednak istniejące maszyny wirtualne nie są ponownie równoważone, aby zastosować tę nową konfigurację, ponieważ są już przypisane do zestawów dostępności. Zalecamy ponowne wdrożenie klastrów Kubernetes w taki sposób, aby zestaw dostępności został zaktualizowany przy użyciu odpowiedniej liczby domen błędów.