Unterstützte Kubernetes-Versionen in Azure Kubernetes Service (AKS)

Die Kubernetes-Community veröffentlicht etwa alle drei Monate Nebenversionen. Kürzlich hat die Kubernetes-Community das Unterstützungsfenster für die einzelnen Versionen von 9 Monaten auf 12 Monate erhöht, beginnend mit Version 1.19.

Nebenversionsreleases enthalten neue Features und Verbesserungen. Patchreleases kommen häufiger vor (manchmal wöchentlich) und sind für wichtige Fehlerbehebungen in einer Nebenversion gedacht. Patchreleases enthalten Fixes für Sicherheitsrisiken oder schwer wiegende Fehler.

Kubernetes-Versionen

Kubernetes verwendet als Standardversionierungsschema für jede Version die semantische Versionierung:

[major].[minor].[patch]

Example:
  1.17.7
  1.17.8

Für jede Zahl in der Version gilt, dass allgemeine Kompatibilität mit der vorherigen Version besteht:

  • Hauptversionen ändern sich, wenn nicht kompatible API-Updates vorgenommen werden oder möglicherweise keine Abwärtskompatibilität mehr gewährleistet wird.
  • Nebenversionen ändern sich, wenn Updates an der Funktionalität vorgenommen werden, die zu den anderen Nebenreleases abwärtskompatibel sind.
  • Patchversionen werden geändert, wenn abwärtskompatible Fehlerbehebungen vorgenommen werden.

Versuchen Sie, das neueste Patchrelease der ausgeführten Nebenversion zu verwenden. Ihr Produktionscluster befindet sich beispielsweise auf 1.17.7 . 1.17.8 ist die neueste für die 1.17.8-Serie verfügbare Patchversion. Sie sollten so bald wie möglich ein Upgrade auf 1.17.8 durchführen, um sicherzustellen, dass Ihr Cluster vollständig gepatcht ist und unterstützt wird.

Alias-Nebenversion

Hinweis

Für die Alias-Nebenversion ist Version 2.31.0 oder höher der Azure CLI erforderlich. Verwenden Sie az upgrade, um die neueste Version der CLI zu installieren.

Mit Azure Kubernetes Service können Sie einen Cluster erstellen, ohne die genaue Patchversion angeben zu müssen. Beim Erstellen eines Clusters ohne Angabe eines Patches führt der Cluster den neuesten GA-Patch (General Availability, allgemeine Verfügbarkeit) der Nebenversion aus. Wenn Sie beispielsweise einen Cluster mit 1.21 erstellen, wird 1.21.7 in Ihrem Cluster ausgeführt. Dies ist die aktuelle GA-Patchversion von 1.21.

Beim Upgrade mithilfe von Alias-Nebenversion wird nur eine höhere Nebenversion unterstützt. Wenn Sie z. B. ein Upgrade von 1.14.x auf 1.14 durchführen, wird kein Upgrade auf den aktuellen GA-Patch 1.14 ausgelöst, beim Upgrade auf 1.15 wird jedoch ein Upgrade auf den aktuellen GA-Patch 1.15 ausgelöst.

Führen Sie den Befehl az aks show --resource-group myResourceGroup --name myAKSCluster aus, um zu sehen, auf welchem Patch Sie sich befinden. Die Eigenschaft currentKubernetesVersion zeigt die gesamte Kubernetes-Version an.

{
 "apiServerAccessProfile": null,
  "autoScalerProfile": null,
  "autoUpgradeProfile": null,
  "azurePortalFqdn": "myaksclust-myresourcegroup.portal.hcp.eastus.azmk8s.io",
  "currentKubernetesVersion": "1.21.7",
}

Richtlinie zur Unterstützung der Kubernetes-Version

In AKS ist eine allgemein verfügbare Version als eine Version definiert, die in allen SLO- oder SLA-Messungen aktiviert und in allen Regionen verfügbar ist. AKS unterstützt drei allgemein verfügbare Nebenversionen von Kubernetes:

  • Die neueste allgemein verfügbare Nebenversion, die in AKS veröffentlicht wurde (diese wird als „N“ bezeichnet).
  • Die beiden vorherigen Nebenversionen.
    • Jede unterstützte Nebenversion unterstützt auch maximal zwei stabile Patches.

AKS unterstützt möglicherweise auch Vorschauversionen, die explizit als solche gekennzeichnet sind und den Nutzungsbedingungen für Vorschauversionen unterliegen.

Hinweis

AKS verwendet sichere Bereitstellungsmethoden einschließlich einer graduellen Bereitstellung in Regionen. Das bedeutet, dass es bis zu zehn Werktage dauern kann, bis ein neues Release oder eine neue Version in allen Regionen verfügbar ist.

Das unterstützte Fenster für Kubernetes-Versionen in AKS wird als „N-2“ bezeichnet: („N“ für das neueste Release – 2 für die Anzahl der Nebenversionen).

Wenn AKS beispielsweise die Version 1.17.a einführt, werden die folgenden Versionen unterstützt:

Neue Nebenversion Liste mit unterstützten Versionen
1.17.a 1.17.a, 1.17.b, 1.16.c, 1.16.d, 1.15.e, 1.15.f

Dabei steht der Buchstabe für die jeweiligen Patchversionen.

Wenn eine neue Nebenversion eingeführt wird, werden die älteste Nebenversion und die unterstützten Patchreleases nicht mehr unterstützt und entfernt. Angenommen, die aktuelle Liste mit den unterstützten Versionen sieht wie folgt aus:

1.17.a
1.17.b
1.16.c
1.16.d
1.15.e
1.15.f

AKS veröffentlicht 1.18.* und entfernt alle 1.15.*-Versionen in 30 Tagen aus dem Support.

Hinweis

Wenn Kunden eine nicht unterstützte Kubernetes-Version verwenden, werden sie aufgefordert, ein Upgrade vorzunehmen, sobald sie Support für den Cluster anfordern. Die AKS-Supportrichtlinien gelten nicht für Cluster, auf denen nicht unterstützte Kubernetes-Releases ausgeführt werden.

Darüber hinaus unterstützt AKS maximal zwei Patchreleases für eine bestimmte Nebenversion. Angenommen, folgende Versionen werden unterstützt:

Current Supported Version List
------------------------------
1.17.8, 1.17.7, 1.16.10, 1.16.9

Wenn AKS 1.17.9 und 1.16.11 veröffentlicht, werden die ältesten Patchversionen als veraltet markiert und entfernt. Die Liste mit den unterstützten Versionen ändert sich dann wie folgt:

New Supported Version List
----------------------
1.17.*9*, 1.17.*8*, 1.16.*11*, 1.16.*10*

Unterstützte kubectl-Versionen

Sie können eine relativ zu Ihrer kubectl-Version niedrigere oder höhere Nebenversion von kubectl verwenden, die mit der Kubernetes-Unterstützungsrichtlinie für kubectl konsistent ist.

Wenn Ihr kube-apiserver beispielsweise die Version 1.17 hat, können Sie die Versionen 1.16 bis 1.18von kubectl mit diesem kube-apiserver verwenden.

Um kubectl zu installieren oder auf die neueste Version zu aktualisieren, führen Sie Folgendes aus:

az aks install-cli

Veröffentlichen und Markieren als veraltet

Sie können neue Releases und veraltete Versionen im Releasekalender für AKS Kubernetes einsehen.

Bei neuen Nebenversionen von Kubernetes:

  • AKS veröffentlicht mindestens 30 Tage vor dem Entfernen einer Version in den AKS-Versionshinweisen eine Vorankündigung mit dem geplanten Datum der neuen Version und der Entfernung der entsprechenden alten Version.

  • AKS warnt Benutzer mit Azure Advisor, wenn eine neue Version aufgrund veralteter APIs Probleme in ihrem Cluster verursacht. Azure Advisor wird auch verwendet, um den Benutzer zu warnen, wenn er derzeit keinen Supportanspruch mehr hat.

  • AKS veröffentlicht eine Benachrichtigung zur Dienstintegrität, die für alle Benutzer mit Zugriff auf AKS und das Portal verfügbar ist. Außerdem sendet AKS eine E-Mail an die Abonnementadministratoren mit den geplanten Daten für die Entfernung von Versionen.

    Hinweis

    Unter Zuweisen eines Abonnementadministrators erfahren Sie, wie Sie herausfinden, wer Ihr Abonnementadministrator ist, oder wie Sie ihn ändern können.

  • Benutzer haben nach der Entfernung einer Version 30 Tage lang Zeit, ein Upgrade auf eine unterstützte Nebenversion durchzuführen, um sicherzustellen, dass sie weiterhin Support erhalten.

Bei neuen Patchversionen von Kubernetes:

  • Da Patchversionen dringend sind, können sie in den Dienst eingefügt werden, sobald sie verfügbar sind. Nach der Bereitstellung weisen Patches einen Mindestlebenszyklus von zwei Monaten auf.
  • Im der Regel macht AKS die Veröffentlichung neuer Patchversionen nicht allgemein bekannt. AKS überwacht und überprüft allerdings verfügbare CVE-Patches, um diese möglichst schnell in AKS zu unterstützen. Wenn ein kritischer Patch gefunden wird oder eine Benutzeraktion erforderlich ist, benachrichtigt AKS die Benutzer, damit diese ein Upgrade auf den neu verfügbaren Patch ausführen.
  • Benutzer haben ab der Entfernung eines Patchreleases von AKS 30 Tage lang Zeit, ein Upgrade auf einen unterstützten Patch auszuführen, um weiterhin Support zu erhalten. Sie können jedoch keine Cluster oder Knotenpools mehr erstellen, sobald die Version als veraltet markiert bzw. entfernt wurde.

Richtlinienausnahmen für unterstützte Versionen

AKS behält sich das Recht vor, ohne Vorankündigung neue Versionen hinzuzufügen/bestehende zu entfernen, wenn in diesen kritische, die Produktion einschränkende Fehler oder Sicherheitsprobleme gefunden werden.

Bestimmte Patchreleases können übersprungen oder Rollouts je nach Schweregrad des Fehlers oder Sicherheitsproblems beschleunigt werden.

Versionen für Azure-Portal and CLI

Wenn Sie einen AKS-Cluster im Portal, mit der Azure CLI oder mit Azure PowerShell bereitstellen, wird der Cluster standardmäßig auf die Nebenversion N-1 und den neuesten Patch festgelegt. Wenn AKS beispielsweise 1.17.a, 1.17.b, 1.16.c, 1.16.d, 1.15.e und 1.15.f unterstützt, ist die standardmäßig ausgewählte Version 1.16.c.

Um herauszufinden, welche Versionen für Ihr Abonnement und Ihre Region derzeit verfügbar sind, verwenden Sie den Befehl az aks get-versions. Im folgenden Beispiel sind die verfügbaren Kubernetes-Versionen für die Region EastUS aufgelistet:

az aks get-versions --location eastus --output table

Releasekalender für AKS Kubernetes

Den Verlauf der letzten Versionen finden Sie unter Kubernetes.

Kubernetes-Version Upstreamrelease AKS – Vorschau AKS – allgemeine Verfügbarkeit (GA) Ende der Lebensdauer
1.20 Dec-08-20 Jan 2021 März 2021 1.23 GA
1.21 08. April 2021 Mai 2021 Juli 2021 1.24: Allgemeine Verfügbarkeit
1.22 04. August 21 September 2021 Dezember 2021 1.25 Allgemeine Verfügbarkeit
1.23 Dezember 2021 Januar 2022 April 2022 1.26 Allgemeine Verfügbarkeit
1,24 22. April 2022 Mai 2022 Juli 2022 1.27 Allgemeine Verfügbarkeit
1,25 August 2022 September 2022 November 2022 1.28 Allgemeine Verfügbarkeit

Häufig gestellte Fragen

Wie benachrichtigt mich Microsoft, wenn neue Kubernetes-Versionen vorliegen?

Das AKS-Team veröffentlicht Vorankündigungen mit geplanten Daten der neuen Kubernetes-Versionen in unserer Dokumentation, auf GitHub sowie in E-Mails an Abonnementadministratoren, die Cluster besitzen, die aus dem Support herausfallen. Zusätzlich zu Ankündigungen benachrichtigt AKS Kunden auch im Azure-Portal mit Azure Advisor, um Benutzer zu warnen, wenn sie aus dem Support herausfallen, und sie vor veralteten APIs zu warnen, die sich auf ihre Anwendung oder ihren Entwicklungsprozess auswirken.

Wie oft muss ich damit rechnen, ein Upgrade auf Kubernetes-Versionen durchzuführen, um weiterhin Unterstützung zu erhalten?

Ab Kubernetes 1.19 hat die Open-Source-Community die Unterstützung auf 1 Jahr erweitert. AKS führt einen Commit aus, um Patches und Unterstützung zu ermöglichen, die den Upstreamzusagen entsprechen. Für AKS-Cluster ab Version 1.19 können Sie mindestens einmal pro Jahr ein Upgrade durchführen, um bei einer unterstützten Version zu bleiben.

Was geschieht, wenn ein Benutzer ein Upgrade eines Kubernetes-Clusters mit einer Nebenversion durchführt, die nicht unterstützt wird?

Wenn Sie die Version N-3 oder älter verwenden, wird diese Version nicht mehr unterstützt, und Sie werden zu einem Upgrade aufgefordert. Wenn das Upgrade von Version N-3 auf N-2 erfolgreich ist, greifen die Supportrichtlinien wieder, und die Version wird wieder unterstützt. Beispiel:

  • Wenn die älteste unterstützte AKS-Version 1.15.a ist und Sie 1.14.b oder eine ältere Version verwenden, wird diese Version nicht mehr unterstützt.
  • Wenn Ihr Upgrade von 1.14.b auf 1.15.a oder höher erfolgreich ist, greifen die Supportrichtlinien wieder, und die Version wird wieder unterstützt.

Downgrades werden nicht unterstützt.

Was bedeutet „nicht unterstützt“?

„Nicht unterstützt“ bedeutet:

  • Die Version, die Sie ausführen, befindet sich nicht auf der Liste der unterstützten Versionen.
  • Wenn Sie Support anfordern, werden Sie aufgefordert, für den Cluster ein Upgrade auf eine unterstützte Version vorzunehmen, sofern Sie sich nicht mehr innerhalb des 30-Tage-Zeitraums befinden, der beginnt, nachdem eine Version als veraltet gekennzeichnet wurde.

Des Weiteren stellt AKS für Cluster mit Versionen, die nicht in der Liste der unterstützten Versionen aufgeführt sind, weder Laufzeitgarantien noch sonstige Garantien bereit.

Was geschieht, wenn ein Benutzer einen Kubernetes-Clusters mit einer Nebenversion skaliert, die nicht unterstützt wird?

Bei Nebenversionen, die von AKS nicht unterstützt werden, sollte das Ab- oder Aufskalieren weiterhin einwandfrei funktionieren. Da es keine Garantien für die Dienstqualität gibt, sollten Sie ein Upgrade durchführen, damit für Ihren Cluster wieder Support gewährt wird.

Kann ein Benutzer eine Kubernetes-Version für immer verwenden?

Wenn ein Cluster für mehr als drei (3) Nebenversionen keinen Supportanspruch mehr hat und festgestellt wurde, dass für ihn Sicherheitsrisiken bestehen, setzt Azure sich proaktiv bezüglich eines Upgrades Ihres Clusters mit Ihnen in Verbindung. Wenn Sie keine weiteren Maßnahmen ergreifen, behält Azure sich das Recht vor, automatisch ein Upgrade Ihres Clusters in Ihrem Namen auszuführen.

Welche Version wird von der Steuerungsebene unterstützt, wenn der Knotenpool keine der unterstützten AKS-Versionen verwendet?

Die Steuerungsebene muss sich innerhalb eines Fensters von Versionen aller Knotenpools befinden. Ausführliche Informationen zum Aktualisieren der Steuerungsebene oder der Knotenpools finden Sie in der Dokumentation zum Aktualisieren von Knotenpools.

Kann ich während eines Clusterupgrades mehrere AKS-Versionen überspringen?

Beim Upgrade eines unterstützten AKS-Clusters können Nebenversionen von Kubernetes nicht übersprungen werden. Die Richtlinie zur Versionsabweichung der Kubernetes-Steuerungsebenen unterstützt das Überspringen von Nebenversionen nicht. Beispielsweise Upgrades zwischen:

  • 1.12.x -1.13.x: zulässig.
  • 1.13.x -1.14.x: zulässig.
  • 1.12.x -1.14.x: nicht zulässig.

So führen Sie ein Upgrade von 1.12.x -1.14.x aus:

  1. Führen Sie ein Upgrade von 1.12.x -1.13.x aus:
  2. Führen Sie ein Upgrade von 1.13.x -1.14.x aus:

Das Überspringen mehrerer Versionen ist nur möglich, wenn ein Upgrade von einer nicht unterstützten Version auf eine mindestens unterstützte Version erfolgt. Beispielsweise können Sie ein Upgrade von einer nicht unterstützten Version 1.10.x auf eine unterstützte Version 1.15.x durchführen, wenn 1.15 die mindestens unterstützte Nebenversion ist.

Kann ich während des 30-tägigen Supportzeitraums einen neuen 1.xx.x-Cluster erstellen?

Nein. Nachdem eine Version als veraltet markiert/entfernt wurde, können Sie keinen Cluster mit dieser Version erstellen. Mit Inkrafttreten der Änderung sehen Sie, dass die alte Version aus ihrer Versionsliste entfernt wurde. Dieser Vorgang kann bis zu zwei Wochen nach der Ankündigung dauern, schrittweise nach Region.

Ich verwende eine vor kurzem veraltete Version, kann ich dennoch neue Knotenpools hinzufügen? Oder muss ich ein Upgrade durchführen?

Nein. Sie sind nicht berechtigt, dem Cluster Knoten-Pools der veralteten Version hinzuzufügen. Sie können Knoten-Pools einer neuen Version hinzufügen. Dies erfordert jedoch möglicherweise zuerst die Aktualisierung der Steuerungsebene.

Wie häufig sollten Patches aktualisiert werden?

Patches weisen einen minimalen Lebenszyklus von zwei Monaten auf. Befolgen Sie die AKS-Versionshinweise, um bei der Veröffentlichung neuer Patches auf dem neuesten Stand zu bleiben.

Nächste Schritte

Weitere Informationen zum Upgrade Ihres Clusters finden Sie unter Durchführen eines Upgrades für einen Azure Kubernetes Service-Cluster (AKS).