Durchführen von Upgrades für AKS-Knotenimages (Azure Kubernetes Service)
Azure Kubernetes Service (AKS) stellt regelmäßig neue Knotenimages bereit. Es ist daher vorteilhaft, Ihre Knotenimages häufig zu aktualisieren, um die neuesten AKS-Features zu verwenden. Linux-Knotenimages werden wöchentlich aktualisiert, und Windows-Knotenimages werden monatlich aktualisiert. Ankündigungen zu Imageupgrades sind in den AKS-Versionshinweisen enthalten. Es kann bis zu einer Woche dauern, bis diese Updates in allen Regionen eingeführt werden. Sie können Knotenimageupgrades auch automatisch durchführen und diese Upgrades mit geplanter Wartung planen. Weitere Informationen finden Sie unter Automatisches Upgrade von Knotenimages.
In diesem Artikel erfahren Sie, wie Sie ein Upgrade für AKS-Clusterknotenimages durchführen und Knotenpoolimages aktualisieren, ohne ein Upgrade der Kubernetes-Version durchzuführen. Informationen zum Upgrade der Kubernetes-Version für Ihren Cluster finden Sie unter Aktualisieren eines AKS-Clusters.
Hinweis
Der AKS-Cluster muss VM-Skalierungsgruppen für die Knoten verwenden.
Es ist nicht möglich, eine Knotenimageversion (z. B. AKSUbuntu-2204 auf AKSUbuntu-1804 oder AKSUbuntu-2204-202308.01.0 auf AKSUbuntu-2204-202307.27.0) herabzustufen.
Nach verfügbaren Knotenimageupgrades suchen
Suchen Sie mithilfe des
az aks nodepool get-upgrades
-Befehls nach verfügbaren Knotenimageupgrades.az aks nodepool get-upgrades \ --nodepool-name <node-pool-name> \ --cluster-name <cluster-name> \ --resource-group <resource-group>
Suchen Sie in der Ausgabe den
latestNodeImageVersion
-Wert, und notieren Sie ihn. Dieser Wert ist die neueste Version des Knotenimages, die für den Knotenpool verfügbar ist.Überprüfen Sie die aktuelle Knotenimageversion, um sie mithilfe des
az aks nodepool show
-Befehls mit der aktuellen Version zu vergleichen.az aks nodepool show \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --query nodeImageVersion
Wenn sich der
nodeImageVersion
-Wert vonlatestNodeImageVersion
unterscheidet, können Sie das Knotenimage upgraden.
Alle Knotenimages in allen Knotenpools aktualisieren
Upgraden Sie alle Knotenimages in allen Knotenpools in Ihrem Cluster mithilfe des Befehls
az aks upgrade
mit dem--node-image-only
-Flag.az aks upgrade \ --resource-group <resource-group> \ --name <cluster-name> \ --node-image-only
Sie können die Status der Knotenimages mithilfe des
kubectl get nodes
-Befehls überprüfen.Hinweis
Dieser Befehl kann sich abhängig von der verwendeten Shell geringfügig unterscheiden. Weitere Informationen zu Windows- und PowerShell-Umgebungen finden Sie in der Kubernetes JSONPath-Dokumentation.
kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
Wenn das Upgrade beendet ist, verwenden Sie den
az aks show
-Befehl, um die aktualisierten Details zum Knotenpool abzurufen. Das aktuelle Knotenimage wird in dernodeImageVersion
-Eigenschaft angezeigt.az aks show \ --resource-group <resource-group> \ --name <cluster-name>
Aktualisieren eines bestimmten Knotenpools
Aktualisieren Sie das Betriebssystemimage eines Knotenpools, ohne ein Upgrade des Kubernetes-Clusters durchzuführen, mit dem
az aks nodepool upgrade
-Befehl mit dem--node-image-only
-Flag.az aks nodepool upgrade \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --node-image-only
Sie können die Status der Knotenimages mit dem
kubectl get nodes
-Befehls überprüfen.Hinweis
Dieser Befehl kann sich je nach verwendeten Shell geringfügig unterscheiden. Weitere Informationen zu Windows- und PowerShell-Umgebungen finden Sie in der Kubernetes JSONPath-Dokumentation.
kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
Wenn das Upgrade beendet ist, verwenden Sie den
az aks nodepool show
-Befehl, um die aktualisierten Details zum Knotenpool abzurufen. Das aktuelle Knotenimage wird in dernodeImageVersion
-Eigenschaft angezeigt.az aks nodepool show \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name>
Aktualisieren von Knotenimages mit Knotenanstiegen
Zur Beschleunigung des Upgradeprozesses für Knotenimages können Sie Ihre Knotenimages mit einem anpassbaren Knotenanstiegswert aktualisieren. Standardmäßig verwendet AKS einen zusätzlichen Knoten, um Upgrades zu konfigurieren.
Aktualisieren Sie Knotenimages mit Knotenanstieg mithilfe des
az aks nodepool update
-Befehls mit dem--max-surge
-Flag, um die Anzahl der Knoten zu konfigurieren, die für Upgrades verwendet werden.Hinweis
Weitere Informationen zu den Kompromissen verschiedener
--max-surge
-Einstellungen finden Sie unter--max-surge
.az aks nodepool update \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name> \ --max-surge 33% \ --no-wait
Sie können die Status der Knotenimages mit dem
kubectl get nodes
-Befehls überprüfen.kubectl get nodes -o jsonpath='{range .items[*]}{.metadata.name}{"\t"}{.metadata.labels.kubernetes\.azure\.com\/node-image-version}{"\n"}{end}'
Rufen Sie die aktualisierten Knotenpooldetails mithilfe von
az aks nodepool show
ab. Das aktuelle Knotenimage wird in dernodeImageVersion
-Eigenschaft angezeigt.az aks nodepool show \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <node-pool-name>
Nächste Schritte
- Informationen zu den aktuellen Knotenimages finden Sie in den AKS-Versionshinweisen.
- Erfahren Sie, wie Sie die Kubernetes-Version durch Aktualisieren eines AKS-Clusters aktualisieren können.
- Wenden Sie Cluster- und Knotenpoolupgrades mit GitHub-Aktionen automatisch an.
- Weitere Informationen zu mehreren Knotenpools finden Sie unter Erstellen mehrerer Knotenpools.
- Best Practices für Upgrades finden Sie in den Patch- und Upgradeanleitungen für AKS.
Azure Kubernetes Service