Udostępnij przez


Aktualizacje obrazu węzła na potrzeby automatycznej aprowizacji węzłów (NAP) w usłudze Azure Kubernetes Service (AKS)

Ten artykuł zawiera omówienie aktualizacji obrazów węzłów na potrzeby automatycznej aprowizacji węzłów (NAP) w usłudze Azure Kubernetes Service (AKS), w tym o tym, jak to działa, zalecane okna obsługi i przykłady umożliwiające rozpoczęcie pracy.

Jak działają aktualizacje obrazów dla węzłów automatycznej aprowizacji?

Domyślnie maszyny wirtualne (VM) puli węzłów [NAP] są automatycznie aktualizowane, gdy dostępna jest nowa wersja obrazu. Możesz skonfigurować okno serwisowe harmonogramu uaktualniania systemu operacyjnego węzła zarządzanego przez AKS, aby kontrolować, kiedy nowe obrazy są pobierane i stosowane do węzłów AKS, lub użyj budżetów zakłóceń węzłów Karpenter i budżetów zakłóceń podów, aby kontrolować, jak i kiedy występują zakłócenia podczas uaktualnień.

Uwaga / Notatka

System NAP wymusza użycie najnowszej wersji obrazu, jeśli obecna wersja obrazu węzła ma więcej niż 90 dni. Spowoduje to obejście wszelkich istniejących okien obsługi.

Okna obsługi uaktualniania systemu operacyjnego Node dla ochrony dostępu do sieci

Możesz użyć funkcji planowanej konserwacji usługi AKS z kanałem automatycznej aktualizacji systemu operacyjnego węzła aby skonfigurować aksManagedNodeOSUpgradeSchedule okno konserwacyjne, które kontroluje, kiedy należy wykonać poprawki zabezpieczeń systemu operacyjnego węzła zaplanowane przez wyznaczony kanał automatycznej aktualizacji systemu operacyjnego węzła.

Zachowanie i zagadnienia dotyczące konserwacji i aktualizacji systemu operacyjnego Node

Podczas konfigurowania okna konserwacji aktualizacji systemu operacyjnego węzła dla NAP należy pamiętać o następujących informacjach:

  • Konfiguracja aksManagedNodeOSUpgradeSchedule konserwacji określa okno, w którym NAP aktualizuje nowy obraz. Ta konfiguracja nie musi określać, kiedy istniejące węzły są zakłócane.
  • Mechanizm uaktualniania i kryteria podejmowania decyzji są specyficzne dla NAP/Karpenter i są oceniane przez logikę odchyleń NAP. NAP szanuje Budżety zakłóceń węzłów Karpenter i Budżety zakłóceń Zasobników. Aby uzyskać więcej informacji na temat dryfu, zobacz dokumentację dryfu Karpentera.
  • Te decyzje dotyczące uaktualniania NAP są oddzielone od klastra NodeImage i kanałów SecurityPatch. aksManagedNodeOSUpgradeSchedule Jednak konfiguracja konserwacji stosuje je również.
  • W celu zapewnienia niezawodnej operacji zalecamy użycie okna obsługi trwającego co najmniej cztery godziny.
  • Jeśli nie istnieje żadna konfiguracja konserwacji, usługa AKS może użyć harmonogramu rezerwowego do pobrania nowych obrazów, co może spowodować, że obrazy będą odbierane w nieoczekiwanych godzinach. Możesz uniknąć nieoczekiwanego czasowania nowych obrazów i aktualizacji, definiując jawny aksManagedNodeOSUpgradeScheduleelement.
  • Poczekaj co najmniej 30 minut między utworzeniem lub zaktualizowaniem konfiguracji konserwacji a zaplanowanym czasem rozpoczęcia, aby upewnić się, że AKS ma czas na przeprowadzenie uzgodnienia nowej konfiguracji.

Zalecamy następujący wzorzec harmonogramu dla węzłów zarządzanych przez NAP:

  • Cykl tygodniowy: zalecany dla rutynowych wdrożeń obrazów węzłów (na przykład co tydzień w niedzielę).

Przykład tworzenia harmonogramu konserwacji systemu operacyjnego węzła

W poniższych sekcjach pokazano, jak utworzyć tygodniowe okno obsługi konserwacyjnej dla węzłów zarządzanych przez NAP przy użyciu interfejsu wiersza polecenia platformy Azure i pliku konfiguracji JSON oraz jak aktualizować, przeglądać, wyświetlać listę i usuwać konfigurację konserwacji.

Tworzenie konfiguracji konserwacji

  1. Utwórz plik JSON o nazwie nodeosMaintenance.json z cotygodniowym oknem konserwacji (na przykład: niedziela o 01:00 UTC przez 4 godziny).

    {
      "properties": {
        "maintenanceWindow": {
          "durationHours": 4,
          "schedule": {
            "weekly": {
              "intervalWeeks": 1,
              "dayOfWeek": "Sunday"
            }
          },
          "startDate": "2025-01-01",
          "startTime": "01:00",
          "utcOffset": "+00:00"
        }
      }
    }
    
  2. Dodaj konfigurację konserwacji do klastra przy użyciu polecenia az aks maintenanceconfiguration add.

    az aks maintenanceconfiguration add \
      --resource-group $RESOURCE_GROUP \
      --cluster-name $CLUSTER_NAME \
      --name aksManagedNodeOSUpgradeSchedule \
      --config-file ./nodeosMaintenance.json
    

Aktualizować, wyświetlić, wymienić lub usunąć konfigurację konserwacji

Za pomocą następujących poleceń można aktualizować, wyświetlać, wymieniać lub usuwać konfigurację konserwacji dla węzłów zarządzanych przez NAP.

  • Zaktualizuj konfigurację konserwacji, modyfikując plik JSON, a następnie uruchamiając az aks maintenanceconfiguration update polecenie .

    az aks maintenanceconfiguration update \
      --resource-group $RESOURCE_GROUP \
      --cluster-name $CLUSTER_NAME \
      --name aksManagedNodeOSUpgradeSchedule \
      --config-file ./nodeosMaintenance.json
    
  • Aby wyświetlić szczegóły konfiguracji konserwacji, użyj polecenia az aks maintenanceconfiguration show.

    az aks maintenanceconfiguration show \
      --resource-group $RESOURCE_GROUP \
      --cluster-name $CLUSTER_NAME \
      --name aksManagedNodeOSUpgradeSchedule
    
  • Wyświetl listę wszystkich konfiguracji konserwacji dla klastra przy użyciu polecenia az aks maintenanceconfiguration list.

    az aks maintenanceconfiguration list \
      --resource-group $RESOURCE_GROUP \
      --cluster-name $CLUSTER_NAME
    
  • Usuń konfigurację konserwacji przy użyciu az aks maintenanceconfiguration delete polecenia .

    az aks maintenanceconfiguration delete \
      --resource-group $RESOURCE_GROUP \
      --cluster-name $CLUSTER_NAME \
      --name aksManagedNodeOSUpgradeSchedule
    

Aby uzyskać pełne szczegóły, przykłady oraz zaawansowane scenariusze, zobacz Zarządzanie oknami konserwacyjnymi w klastrze AKS za pomocą planowanej konserwacji.

Budżety zakłóceń węzłów w Karpenter i budżety zakłóceń zasobników dla NAP

Aby uzyskać więcej informacji na temat konfigurowania budżetów zakłóceń węzłów Karpenter i budżetów zakłóceń zasobników dla NAP, zobacz następujące zasoby z oficjalnej dokumentacji Karpentera:

Dalsze kroki

Aby uzyskać więcej informacji o automatycznym aprowizowaniu węzłów w AKS, zobacz następujące artykuły: