Freigeben über


Node-Image-Updates für die automatische Bereitstellung von Knoten (Node Auto-Provisioning, NAP) in Azure Kubernetes Service (AKS)

Dieser Artikel enthält eine Übersicht über Knotenimageupdates für die automatische Bereitstellung (Node Auto-Provisioning, NAP) in Azure Kubernetes Service (AKS), einschließlich der Funktionsweise, empfohlener Wartungsfenster und Beispiele für die ersten Schritte.

Wie funktionieren Aktualisierungen von Knotenabbildern für automatisch bereitgestellte Knoten?

Standardmäßig werden virtuelle NAP-Knotenpoolcomputer (VMs) automatisch aktualisiert, wenn eine neue Imageversion verfügbar ist. Sie können ein AKS-verwaltetes Betriebssystem(OS)-Upgradezeitplan-Wartungsfenster konfigurieren, um zu steuern, wann neue Images aufgenommen und auf Ihre NAP-Knoten angewendet werden, oder verwenden Sie Karpenter Node Disruption Budgets und Pod Disruption Budgets , um zu steuern, wie und wann Unterbrechungen während Upgrades auftreten.

Hinweis

NAP erzwingt, dass die neueste Imageversion aufgenommen wird, wenn die vorhandene Knotenimageversion älter als 90 Tage ist. Dadurch werden alle vorhandenen Wartungsfenster umgangen.

Wartungsfenster für Upgrades von Knotenbetriebssystemen für NAP

Sie können das geplante Wartungsfeature von AKS mit einem Knoten-Betriebssystem-Auto-Upgrade-Kanal verwenden, um ein aksManagedNodeOSUpgradeSchedule Wartungsfenster zu konfigurieren, das steuert, wann Knoten-Betriebssystem-Sicherheitspatches durchgeführt werden sollen, die von Ihrem angegebenen Knoten-Betriebssystem-Auto-Upgrade-Kanal geplant sind.

Wartungsfenster für Upgrades von Knotenbetriebssystemen: Verhalten und Überlegungen

Beachten Sie beim Konfigurieren eines Knoten-Betriebssystemupgrade-Wartungsfensters für NAP die folgenden Informationen:

  • Die aksManagedNodeOSUpgradeSchedule-Wartungskonfiguration bestimmt das Fenster, in dem NAP ein neues Image abruft. Diese Konfiguration bestimmt nicht unbedingt, wann vorhandene Knoten unterbrochen werden.
  • Der Upgrademechanismus und die Entscheidungskriterien sind spezifisch für NAP/Karpenter und werden durch die Driftlogik von NAP ausgewertet. NAP respektiert Karpenter Node Disruption Budgets und Pod Disruption Budgets. Weitere Informationen zu Drift finden Sie in der Karpenter-Driftdokumentation.
  • Diese NAP-Upgradeentscheidungen sind getrennt von NodeImage des Clusters und SecurityPatch-Kanälen. aksManagedNodeOSUpgradeSchedule Die Wartungskonfiguration wendet sie jedoch auch an.
  • Wir empfehlen die Verwendung eines Wartungsfensters von vier Stunden oder mehr für einen zuverlässigen Betrieb.
  • Wenn keine Wartungskonfiguration vorhanden ist, verwendet AKS möglicherweise einen Fallbackplan, um neue Bilder aufzunehmen, was dazu führen kann, dass Bilder zu unerwarteten Zeiten aufgenommen werden. Sie können unerwartete Zeitangaben für neue Bilder und Upgrades vermeiden, indem Sie eine explizite aksManagedNodeOSUpgradeScheduleDefinition definieren.
  • Lassen Sie mindestens 30 Minuten zwischen dem Erstellen oder Aktualisieren einer Wartungskonfiguration und der geplanten Startzeit zu, um sicherzustellen, dass AKS Zeit zum Abgleichen der neuen Konfiguration hat.

Wir empfehlen ein folgendes Zeitplanmuster für NAP-verwaltete Knoten:

  • Wöchentlicher Rhythmus: Empfohlen für routinemäßige Rollouts von Knotenimages (z. B.: Jede Woche am Sonntag).

Erstellen eines Knoten-Betriebssystemwartungszeitplans (Beispiel)

In den folgenden Abschnitten wird gezeigt, wie Sie ein wöchentliches Wartungsfenster für NAP-verwaltete Knoten mithilfe der Azure CLI und einer JSON-Konfigurationsdatei erstellen und wie Sie die Wartungskonfiguration aktualisieren, anzeigen, auflisten und löschen.

Erstellen einer Wartungskonfiguration

  1. Erstellen Sie eine JSON-Datei namens nodeosMaintenance.json mit einem wöchentlichen Wartungsfenster (z. B. Sonntag um 01:00 UTC für 4 Stunden).

    {
      "properties": {
        "maintenanceWindow": {
          "durationHours": 4,
          "schedule": {
            "weekly": {
              "intervalWeeks": 1,
              "dayOfWeek": "Sunday"
            }
          },
          "startDate": "2025-01-01",
          "startTime": "01:00",
          "utcOffset": "+00:00"
        }
      }
    }
    
  2. Fügen Sie die Wartungskonfiguration mithilfe des az aks maintenanceconfiguration add Befehls zu Ihrem Cluster hinzu.

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

Aktualisieren, Anzeigen, Auflisten oder Löschen einer Wartungskonfiguration

Mit den folgenden Befehlen können Sie eine Wartungskonfiguration für NAP-verwaltete Knoten aktualisieren, anzeigen, auflisten oder löschen:

  • Aktualisieren Sie eine Wartungskonfiguration, indem Sie die JSON-Datei ändern und dann den az aks maintenanceconfiguration update Befehl ausführen.

    az aks maintenanceconfiguration update \
      --resource-group $RESOURCE_GROUP \
      --cluster-name $CLUSTER_NAME \
      --name aksManagedNodeOSUpgradeSchedule \
      --config-file ./nodeosMaintenance.json
    
  • Zeigen Sie die Details einer Wartungskonfiguration mithilfe des az aks maintenanceconfiguration show Befehls an.

    az aks maintenanceconfiguration show \
      --resource-group $RESOURCE_GROUP \
      --cluster-name $CLUSTER_NAME \
      --name aksManagedNodeOSUpgradeSchedule
    
  • Auflisten aller Wartungskonfigurationen für Ihren Cluster mithilfe des az aks maintenanceconfiguration list Befehls.

    az aks maintenanceconfiguration list \
      --resource-group $RESOURCE_GROUP \
      --cluster-name $CLUSTER_NAME
    
  • Löschen Sie eine Wartungskonfiguration mithilfe des az aks maintenanceconfiguration delete Befehls.

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

Ausführliche Informationen, Beispiele und erweiterte Szenarien finden Sie unter "Geplante Wartung verwenden", um Wartungsfenster für Ihren AKS-Cluster zu planen.

Karpenter Node Disruption Budgets und Pod Disruption Budgets für NAP

Weitere Informationen zum Konfigurieren von Karpenter Node Disruption Budgets und Pod Disruption Budgets für NAP finden Sie in den folgenden Ressourcen aus der offiziellen Karpenter-Dokumentation:

Nächste Schritte

Weitere Informationen zur automatischen Bereitstellung von Knoten in AKS finden Sie in den folgenden Artikeln: