Udostępnij przez


Automatyzuj uaktualnienia obrazów Kubernetes i węzłów w wielu klastrach za pomocą Azure Kubernetes Fleet Manager

Dotyczy: ✔️ Fleet Manager ✔️ Fleet Manager z klastrem koncentratora

Zapewnienie, że klastry są aktualizowane w odpowiednim czasie i bezpieczny sposób, jest kluczowym problemem administratorów platformy. Gdy administrator wdroży przebiegi aktualizacji i strategie usługi Azure Kubernetes Fleet Manager, może użyć profilów automatycznej aktualizacji w celu zautomatyzowania wykonywania przebiegów aktualizacji po wydaniu nowych wersji Kubernetes lub obrazów węzłów.

W tym artykule opisano, jak używać profilów automatycznego uaktualniania do automatycznego tworzenia i wykonywania przebiegów aktualizacji, gdy nowe wersje obrazów Kubernetes lub obrazów węzłów są udostępniane przez AKS.

Uwaga

Automatyczne aktualizacje wywołane procesem uaktualniania uwzględniają planowane terminy konserwacji, które konfigurujesz na poziomie klastra AKS. Aby uzyskać więcej informacji, zobacz Planowana konserwacja w wielu klastrach członkowskich, która wyjaśnia, w jaki sposób procesy aktualizacji zarządzają klastrami członkowskimi z zaplanowanymi oknami konserwacji.

Zanim rozpoczniesz

  • Zapoznaj się z koncepcyjnym omówieniem profilów automatycznego uaktualniania, który zawiera wyjaśnienie konfiguracji, do których odwołuje się ten przewodnik.

  • Musisz mieć menedżera floty z co najmniej jednym klastrem członkowskim. Jeśli nie, postępuj zgodnie z szybkim startem, aby utworzyć Fleet Manager i przystąpić do klastrów usługi Azure Kubernetes Service (AKS) jako członków.

  • Aby użyć strategii aktualizacji, skonfiguruj jedną, korzystając z instrukcji w artykule z instrukcjami dotyczącymi uruchamiania aktualizacji. Identyfikator zasobu strategii aktualizacji jest potrzebny do użycia z profilem automatycznego aktualizowania podczas korzystania z interfejsu wiersza polecenia platformy Azure.

Tworzenie profilów automatycznego uaktualniania

Zacznij od wykonania tych kroków, aby upewnić się, że środowisko jest poprawnie skonfigurowane.

  • Ustaw następujące zmienne środowiskowe:

    export GROUP=<resource-group>
    export FLEET=<fleet-name>
    export AUTOUPGRADEPROFILE=<upgrade-profile-name>
    # Optional
    export STRATEGYID=<strategy-id>
    export CLUSTER=<aks-cluster-name>
    
  • Musisz mieć zainstalowaną wersję Azure CLI 2.70.0 lub nowszą. Aby zainstalować lub uaktualnić, zobacz Instalowanie interfejsu wiersza polecenia platformy Azure.

  • Potrzebujesz również rozszerzenia interfejsu wiersza polecenia platformy fleet Azure w wersji 1.5.0 lub nowszej, które można zainstalować, uruchamiając następujące polecenie:

    az extension add --name fleet
    

    Uruchom następujące polecenie, aby zaktualizować do najnowszej wersji wydanego rozszerzenia:

    az extension update --name fleet
    

az fleet autoupgradeprofile create Użyj polecenia , aby utworzyć profile, jak pokazano poniżej.

Profil wyłączonego automatycznego uaktualniania można utworzyć, przekazując --disabled argument podczas korzystania z create polecenia . Aby włączyć profil automatycznego uaktualniania, należy ponownie uruchomić całe create polecenie i pominąć --disabled argument.

Uwaga

Wyłączenie profilu automatycznej aktualizacji nie wpływa na trwające aktualizacje, jednak żadne nowe uruchomienia aktualizacji nie są generowane do momentu ponownego włączenia profilu.

Aktualizacje stabilnego kanału Kubernetes

Zaktualizuj do najnowszej obsługiwanej wersji poprawki Kubernetes w wersji pomocniczej N-1, gdzie N jest najnowszą obsługiwaną wersją pomocniczą.

Aktualizuj klastry składowe sekwencyjnie jeden po jednym.

az fleet autoupgradeprofile create \
  --resource-group $GROUP \
  --fleet-name $FLEET \
  --name $AUTOUPGRADEPROFILE \
  --channel Stable

Zaktualizuj klastry członkowskie przy użyciu istniejącej strategii aktualizacji.

az fleet autoupgradeprofile create \
  --resource-group $GROUP \
  --fleet-name $FLEET \
  --name $AUTOUPGRADEPROFILE \
  --update-strategy-id $STRATEGYID \
  --channel Stable

Zaktualizuj klastry członkowskie przy użyciu istniejącej strategii aktualizacji, zapewniając, że ta sama wersja obrazu węzła jest używana w każdym regionie świadczenia usługi Azure. Wszystkie klastry członkowskie uruchamiają tę samą wersję obrazu węzła.

az fleet autoupgradeprofile create \
  --resource-group $GROUP \
  --fleet-name $FLEET \
  --name $AUTOUPGRADEPROFILE \
  --update-strategy-id $STRATEGYID \
  --channel Stable \
  --node-image-selection Consistent

Zaktualizuj klastry członkowskie przy użyciu istniejącej strategii aktualizacji przy użyciu najnowszej dostępnej wersji obrazu węzła dla każdego regionu świadczenia usługi Azure. Klastry członkowskie mogą uruchamiać wiele wersji obrazu węzła.

az fleet autoupgradeprofile create \
  --resource-group $GROUP \
  --fleet-name $FLEET \
  --name $AUTOUPGRADEPROFILE \
  --update-strategy-id $STRATEGYID \
  --channel Stable \
  --node-image-selection Latest

Docelowe aktualizacje pomniejszej wersji platformy Kubernetes (wersja zapoznawcza)

Zaktualizuj do zdefiniowanej docelowej wersji pomocniczej platformy Kubernetes przy użyciu parametru --target-kubernetes-version , podając wersję w formacie {wersja główna}.{ wersja pomocnicza} (na przykład 1.33). Automatyczne uaktualnianie floty automatycznie uaktualnia klastry członkowskie do najnowszej wersji poprawki określonej wersji docelowej, gdy poprawka jest dostępna.

Ważne

Funkcje usługi Azure Kubernetes Fleet Manager w wersji zapoznawczej są dostępne na zasadzie samoobsługi. Wersje zapoznawcze są udostępniane w wersji "as is" i "jako dostępne" i są wykluczone z umów dotyczących poziomu usług i ograniczonej gwarancji. Wersje zapoznawcze usługi Azure Kubernetes Fleet Manager są częściowo objęte pomocą techniczną w oparciu o najlepsze nakłady pracy. W związku z tym te funkcje nie są przeznaczone do użytku produkcyjnego.

Uwaga

  • W przypadku korzystania z kanału TargetKubernetesVersion musisz określić parametr --target-kubernetes-version. W przypadku innych kanałów (Rapid, Stable, NodeImage) ten parametr nie jest obsługiwany.

  • Flaga --long-term-support (LTS) jest dostępna tylko w przypadku korzystania z kanału TargetKubernetesVersion . W przypadku innych kanałów ta flaga musi być ustawiona na wartość False.

  • Nie można ustawić docelowej wersji rozwiązania Kubernetes na przyszłą wersję platformy Kubernetes, która nie została jeszcze wydana przez usługę AKS.

  • Dla profilu automatycznego uaktualniania można wybrać tylko wersje LTS Kubernetes (N-2), przekazując flagę --long-term-support . Aby automatyczne uaktualnianie floty działało w tym scenariuszu, należy również upewnić się, że klastry w wygenerowanym przebiegu aktualizacji mają włączoną obsługę LTS. Klastry inne niż LTS powodują, że uruchomienie aktualizacji kończy się niepowodzeniem po napotkaniu pierwszego klastra innego niż LTS.

Automatycznie aktualizuj klastry członkowskie do najnowszej poprawki rozwiązania Kubernetes w wersji 1.33.

az fleet autoupgradeprofile create \
  --resource-group $GROUP \
  --fleet-name $FLEET \
  --name $AUTOUPGRADEPROFILE \
  --channel TargetKubernetesVersion \
  --target-kubernetes-version "1.33"

Automatycznie aktualizuj klastry członkowskie z włączonym LTS do najnowszej poprawki Kubernetes w wersji 1.29, która jest obecnie dostępna tylko przez AKS LTS.

az fleet autoupgradeprofile create \
  --resource-group $GROUP \
  --fleet-name $FLEET \
  --name $AUTOUPGRADEPROFILE \
  --channel TargetKubernetesVersion \
  --target-kubernetes-version "1.29" \
  --long-term-support

Aktualizacje obrazu węzła

Zaktualizuj węzły przy użyciu nowo poprawionego obrazu maszyny zawierającego poprawki zabezpieczeń i poprawki błędów.

Zaktualizuj obrazy węzłów dla klastrów członkowskich, przetwarzając klastry sekwencyjnie jeden po jednym.

az fleet autoupgradeprofile create \
  --resource-group $GROUP \
  --fleet-name $FLEET \
  --name $AUTOUPGRADEPROFILE \
  --channel NodeImage

Aktualizacja obrazów węzłów dla klastrów członkowskich, przetwarzanie klastrów przy użyciu istniejącej strategii aktualizacji.

az fleet autoupgradeprofile create \
  --resource-group $GROUP \
  --fleet-name $FLEET \
  --name $AUTOUPGRADEPROFILE \
  --update-strategy-id $STRATEGYID \
  --channel NodeImage 

Wyświetl profil automatycznej aktualizacji

Możesz użyć polecenia az fleet autoupgradeprofile list lub az fleet autoupgradeprofile show, aby wyświetlić profil automatycznego uaktualniania.

Wyświetl listę wszystkich profilów automatycznego uaktualniania dla floty.

az fleet autoupgradeprofile list \
  --resource-group $GROUP \
  --fleet-name $FLEET

Pokaż określony profil automatycznego uaktualniania dla floty.

az fleet autoupgradeprofile list \
  --resource-group $GROUP \
  --fleet-name $FLEET \
  --name $AUTOUPGRADEPROFILE

Usuwanie profilu automatycznego uaktualniania

Użyj polecenia , az fleet autoupgradeprofile delete aby usunąć istniejący profil automatycznego uaktualniania. Zostanie wyświetlony monit o potwierdzenie usunięcia. Jeśli chcesz natychmiast usunąć profil, dołącz element --yes.

az fleet autoupgradeprofile delete \
  --resource-group $GROUP \
  --fleet-name $FLEET \
  --name $AUTOUPGRADEPROFILE

Uwaga

Usunięcie profilu automatycznego uaktualniania nie ma wpływu na żadne procesy aktualizacji w toku.

Tworzenie profilów automatycznego uaktualniania

  1. W witrynie Azure Portal przejdź do zasobu usługi Azure Kubernetes Fleet Manager.

  2. W menu serwisowym, w obszarze Ustawienia, wybierz Aktualizacja wielu klastrów>Profile automatycznego uaktualniania.

  3. Wybierz pozycję Utwórz, wprowadź nazwę profilu, a następnie wybierz, czy profil jest włączony , czy nie. Wyłączone profile automatycznego uaktualniania nie są wyzwalane po wydaniu nowych wersji.

  4. Wybierz sekwencję aktualizacji etapów lub jeden po jednym.

    Zrzut ekranu przedstawiający okienko witryny Azure Portal usługi Azure Kubernetes Fleet Manager służące do tworzenia profilu automatycznego uaktualniania, który aktualizuje klastry przy użyciu strategii.

  5. Wybierz jedną z następujących opcji kanału:

    • Stabilne — aktualizowanie klastrów przy użyciu poprawek dla wersji pomocniczej N-1 Kubernetes, która jest ogólnie dostępna.
    • Szybkie — aktualizacja klastrów przy użyciu poprawek dla najnowszej (N) ogólnie dostępnej wersji mniejszej platformy Kubernetes.
    • Obraz węzła — zaktualizuj tylko wersję obrazu węzła.
    • Docelowa wersja drugorzędna Kubernetes (wersja zapoznawcza) — zaktualizuj klastry do najnowszej wersji poprawki dla określonej docelowej wersji drugorzędnej Kubernetes, gdy tylko poprawka stanie się dostępna.

    Zrzut ekranu przedstawiający okienko witryny Azure Portal usługi Azure Kubernetes Fleet Manager służące do tworzenia profilu automatycznego uaktualniania, definiując sposób wyzwalania aktualizacji.

  6. Jeśli wybierzesz kanał Docelowa pomocnicza wersja Kubernetes (wersja zapoznawcza), możesz wybrać pomocniczą wersję Kubernetes do użycia jako wyzwalacz:

    • Zezwalaj na wersje pomocnicze LTS: Umożliwia wybór wersji pomocniczych Kubernetes dostępnych tylko dla klastrów AKS z długoterminowym wsparciem (LTS).
    • Docelowa wersja pomocnicza platformy Kubernetes: wybierz wyzwalacz wersji pomocniczej platformy Kubernetes. Klastry o niższej wersji pomocniczej są najpierw aktualizowane, a dopiero potem stosuje się tylko aktualizacje poprawek.

    Zrzut ekranu przedstawiający okienko portalu Azure usługi Azure Kubernetes Fleet Manager, służące do tworzenia profilu automatycznego uaktualniania, który definiuje, którą wersję minor Kubernetes użyć jako wyzwalacz.

    Uwaga

    Opcja Zezwalaj na wersje pomocnicze LTS obsługuje tylko przebiegi aktualizacji ze wszystkimi klastrami, które mają włączony LTS. Napotkanie klastra innego niż LTS powoduje niepowodzenie przebiegu aktualizacji.

  7. Jeśli wybierzesz kanał Stabilny, Szybki lub Docelową wersję Kubernetes w wersji pomocniczej (wersja zapoznawcza), możesz wybrać sposób stosowania aktualizacji obrazów węzłów:

    • Najnowszy obraz: aktualizuje każdy klaster usługi AKS w profilu automatycznego uaktualniania do najnowszego obrazu dostępnego dla tego klastra w regionie świadczenia usługi Azure.
    • Spójny obraz: istnieje możliwość automatycznego uaktualnienia klastrów usługi AKS w wielu regionach świadczenia usługi Azure, w których najnowsze dostępne obrazy węzłów mogą być różne (sprawdź monitor wersji usługi AKS , aby uzyskać więcej informacji). Wybranie tej opcji gwarantuje, że automatyczne uaktualnianie wybiera najnowszy wspólny obraz we wszystkich regionach świadczenia usługi Azure, aby osiągnąć spójność.

    Uwaga

    Kanał obrazu węzła zawsze używa spójnego obrazu.

  8. Jeśli wybrano sekwencję aktualizacji przy użyciu Etapów, wybierz lub utwórz Strategię.

    Zrzut ekranu przedstawiający okienko witryny Azure Portal usługi Azure Kubernetes Fleet Manager służące do tworzenia profilu automatycznego uaktualniania, wybierając strategię aktualizacji do użycia.

  9. Wybierz pozycję Utwórz , aby utworzyć profil automatycznego uaktualniania.

Wyświetl profil automatycznej aktualizacji

  1. W witrynie Azure Portal przejdź do zasobu usługi Azure Kubernetes Fleet Manager.

  2. W menu serwisowym, w obszarze Ustawienia, wybierz Aktualizacja wielu klastrów>Profile automatycznego uaktualniania.

    Zrzut ekranu przedstawiający okienko witryny Azure Portal usługi Azure Kubernetes Fleet Manager umożliwiające wyświetlenie dostępnych profilów automatycznego uaktualniania.

  3. Aby wyświetlić jego konfigurację, wybierz żądany profil automatycznego uaktualniania.

    Zrzut ekranu panelu portalu Azure Kubernetes Fleet Manager pokazujący konfigurację pojedynczego profilu automatycznego uaktualniania.

Usuwanie profilu automatycznego uaktualniania

  1. W witrynie Azure Portal przejdź do zasobu usługi Azure Kubernetes Fleet Manager.

  2. W menu serwisowym, w obszarze Ustawienia, wybierz Aktualizacja wielu klastrów>Profile automatycznego uaktualniania.

    Zrzut ekranu przedstawiający okienko witryny Azure Portal usługi Azure Kubernetes Fleet Manager umożliwiające wyświetlenie dostępnych profilów automatycznego uaktualniania.

  3. Wybierz odpowiedni profil z listy, a następnie wybierz pozycję Usuń , aby usunąć profil.

Uwaga

Usunięcie profilu automatycznego uaktualniania nie ma wpływu na żadne procesy aktualizacji w toku.

Weryfikowanie automatycznego uaktualniania

Automatyczne uaktualnianie ma miejsce tylko wtedy, gdy są udostępniane nowe obrazy kubernetes lub węzłów. Po wyzwoleniu automatycznego uaktualniania zostanie utworzony połączony przebieg aktualizacji, dzięki czemu można użyć przebiegu zarządzania aktualizacjami, aby wyświetlić wyniki automatycznego uaktualniania.

Istniejące wersje można również sprawdzić jako punkt odniesienia w następujący sposób.

# Get Kubernetes version for a member cluster
az aks show \
  --resource-group $GROUP \
  --name $CLUSTER \
  --query currentKubernetesVersion
# Get NodeImage version for a member cluster
az aks show \
  --resource-group $GROUP \
  --name $CLUSTER \
  --query "agentPoolProfiles[].{name:name,mode:mode, nodeImageVersion:nodeImageVersion, osSku:osSku, osType:osType}"

Po zakończeniu przebiegów aktualizacji można ponownie uruchomić te polecenia i wyświetlić zaktualizowane wersje, które są wdrożone.

Generowanie procesu aktualizacji na podstawie profilu automatycznej aktualizacji

Podczas tworzenia profilu automatycznej aktualizacji może upłynąć trochę czasu, zanim nowa wersja obrazu Kubernetes lub węzła wyzwoli automatyczną aktualizację w celu przeprowadzenia i wykonania aktualizacji.

Automatyczna aktualizacja umożliwia generowanie nowej sesji aktualizacji w dowolnym momencie za pomocą polecenia az fleet autoupgradeprofile generate-update-run. Proces aktualizacji jest oparty na bieżącej wersji obrazu Kubernetes opublikowanej przez AKS lub wersji obrazu węzła.

Aby uzyskać więcej informacji na temat tworzenia aktualizacji na żądanie z profilu automatycznego uaktualniania, zobacz generowanie przebiegu aktualizacji z profilu automatycznego uaktualniania.

Dalsze kroki