Migrowanie z zestawów dostępności w usłudze Azure Kubernetes Service (AKS)

W tym artykule szczegółowo opisano, jak usługa Azure Kubernetes Service (AKS) cofa obsługę zestawów dostępności maszyn wirtualnych (VMAS) na rzecz maszyn wirtualnych. Zalecamy używanie pul węzłów Virtual Machine dla maszyn wirtualnych zoptymalizowanych pod AKS.

Pule węzłów maszyny wirtualnej:

  • Zezwalaj na centralne zarządzanie, konfigurowanie i aktualizowanie wystąpień maszyn wirtualnych.
  • Zezwalaj na zwiększenie lub zmniejszenie liczby wystąpień maszyn wirtualnych w odpowiedzi na zapotrzebowanie lub zdefiniowany harmonogram.
  • Zezwalaj na kontrole na poziomie jednego węzła oraz mieszanie węzłów różnej wielkości w obrębie tej samej rodziny, co zwiększa elastyczność i poprawia spójność.

Ważne

Od 30 września 2025 r. usługa Azure Kubernetes Service (AKS) nie obsługuje już zestawów dostępności. Klastry z zestawami dostępności po tej dacie są uznawane za niewspierane. Przed tą datą przeprowadź migrację wszystkich obciążeń do pul węzłów maszyn wirtualnych , aby zapewnić ciągłą pomoc techniczną i korzystać z rozszerzonych funkcji zarządzania. Aby uzyskać więcej informacji na temat tego wycofania, zobacz zgłoszenie dotyczące wycofania na GitHubie. Aby być na bieżąco z ogłoszeniami i aktualizacjami, śledź notatki o wydaniu AKS.

Omówienie zestawów dostępności

Zestawy dostępności to logiczne grupowania maszyn wirtualnych (VM), które zmniejszają prawdopodobieństwo, że skorelowane awarie spowodują jednoczesne wyłączenie powiązanych VM. Zestawy dostępności umieszczają maszyny wirtualne w różnych domenach błędów w celu zapewnienia lepszej niezawodności.

Wycofywanie zestawów dostępności

Od 2019 r. nie dodajemy już innych funkcji do zestawów dostępności w usłudze AKS. Wszystkie funkcje wprowadzone od 2019 r., takie jak kopia zapasowa usługi AKS, nie są obsługiwane w zestawach dostępności.

Migrowanie z zestawów dostępności do pul węzłów maszyn wirtualnych

Można teraz użyć skryptu do migracji klastra AKS z używania zestawów dostępności do pul węzłów zasobów maszyn wirtualnych. Ten skrypt automatycznie uaktualnia podstawowe moduły równoważenia obciążenia w klastrze do poziomu standardowego.

Ważne

Ten proces umożliwia również migrowanie podstawowego adresu IP do standardowego adresu IP przy zachowaniu adresów IP dla ruchu przychodzącego skojarzonego z modułem równoważenia obciążenia. Podczas tego procesu tworzony jest nowy publiczny adres IP skojarzony z regułami ruchu wychodzącego usługi Load Balancer w warstwie Standardowa w celu obsługi ruchu wychodzącego klastra.

Aby uzyskać więcej informacji i często zadawane pytania dotyczące aktualizacji z jednostki równoważenia obciążenia w warstwie Podstawowej do warstwy Standardowej, zobacz Uaktualnianie z podstawowego modułu równoważenia obciążenia w usłudze Azure Kubernetes Service.

Przed rozpoczęciem

Wymagania

  • Minimalna wersja platformy Kubernetes dla tego skryptu to 1.27. Jeśli chcesz uaktualnić klaster usługi AKS, zobacz Uaktualnianie klastra usługi AKS.
  • Potrzebny jest zainstalowany interfejs wiersza polecenia platformy Azure w wersji 2.76.0.
  • Jeśli klaster korzysta z usługi zarządzania kluczami z prywatnym magazynem kluczy, usługa zarządzania kluczami musi zostać wyłączona podczas całej migracji.
  • Jeśli klaster korzysta z dowolnego ValidatingAdmissionWebhooks lub MutatingAdmissionWebhooks, te webhooki muszą zostać wyłączone przed migracją. Domyślne webhooki płaszczyzny sterowania nie powinny być wyłączone. Na przykład aks-node-mutating-webhook, webhook-admission-controlleri aks-node-validating-webhook.

Przygotowywanie do migracji

  • Utwórz plan migracji na potrzeby planowanych przestojów.
  • Po rozpoczęciu migracji cofnięcie nie jest możliwe.

Uruchamianie skryptu migracji na potrzeby migracji zestawu dostępności

W poniższych poleceniach zastąp <myResourceGroup> i <myAKSCluster> nazwą grupy zasobów oraz nazwą klastra AKS.

  1. pl-PL: Następujące polecenie inicjuje skrypt do migracji klastra z użycia zestawów dostępności na pule węzłów maszyn wirtualnych przy użyciu polecenia az aks update i ustawienia --migrate-vmas-to-vms. Ten skrypt uaktualnia również Podstawowy Load Balancer i Podstawowy IP do Standardowego Load Balancera i Standardowego IP, jeśli ma to zastosowanie.

    az aks update \
      --name <myAKSCluster> \
      --resource-group <myResourceGroup> \
      --migrate-vmas-to-vms \
    
  2. Sprawdź, czy migracja zakończyła się pomyślnie, używając az aks show polecenia . Dane wyjściowe polecenia zawierają szczegóły klastra.

    az aks show \
      --name <myAKSCluster> \
      --resource-group <myResourceGroup>
    

    Pomyślna migracja może zostać zweryfikowana, gdy szczegóły klastra przy użyciu polecenia az aks show zawierają type ustawiony na VirtualMachines oraz loadbalancerSku ustawiony na Standard.

      "type": "VirtualMachines"
      "loadBalancerSku": "standard",
    
  3. Sprawdź, czy wszystkie zasobniki i usługi są uruchomione pomyślnie przy użyciu poleceń kubectl get pods i kubectl get svc.

    kubectl get svc -A \
    kubectl get pods -A
    
  4. Nowe adresy IP skojarzone z regułami ruchu wychodzącego można potwierdzić, poprzez wylistowanie adresów IP ruchu wychodzącego. Ten krok jest wykonywany przez potwierdzenie identyfikatorów zasobów dla adresów IP, a następnie wyświetlenie listy adresów IP.

    Użyj następującego polecenia, aby uzyskać identyfikator zasobu dla wychodzących adresów IP:

    # Get the outbound IP Resource ID
    az aks show \
      --resource-group <myResourceGroup> \
      --name <myAKSCluster> \
      --query networkProfile.loadBalancerProfile.effectiveOutboundIPs[].id
    

    Użyj następującego polecenia, aby pobrać każdy adres IP identyfikatora zasobu i zastąpić <IPResourceID> identyfikatorem zasobu z poprzedniego polecenia:

    # get the new IP for each IP Resource ID
    az network public-ip show --ids <IPResourceID> --query ipAddress -o tsv