Upgraden von Azure Arc-fähigen Kubernetes-Agents

Kubernetes mit Azure Arc-Unterstützung bietet Funktionen für automatische und manuelle Upgrades für seine Agents, sodass Agents auf die aktuelle Version aktualisiert werden. Wenn Sie automatische Upgrades deaktivieren und sich stattdessen auf manuelle Upgrades verlassen, gilt die Richtlinie zur Versionsunterstützung für Arc-Agents und die zugrunde liegenden Kubernetes-Cluster.

Aktivieren/Deaktivieren von automatischen Upgrades beim Herstellen einer Verbindung zwischen einem Cluster und Azure Arc

Kubernetes mit Azure Arc-Unterstützung bietet seinen Agents direkt verfügbare Funktionen für automatische Upgrades. Wenn automatische Upgrades aktiviert sind, fragt der Agent Azure stündlich ab, um nach einer neueren Version zu suchen. Wenn eine neuere Version verfügbar ist, löst er ein Helm-Chart-Upgrade für die Azure Arc-Agents aus.

Wenn Sie einen Cluster mit Azure Arc verbinden, besteht die Standardeinstellung darin, automatische Upgrades zu aktivieren.

Der folgende Befehl verbindet einen Cluster mit Azure Arc mit aktiviertem automatischen Upgrade:

az connectedk8s connect --name AzureArcTest1 --resource-group AzureArcTest

Wichtig

Achten Sie darauf, Konnektivität mit allen erforderlichen Endpunkten zuzulassen. Insbesondere ist die Konnektivität mit dl.k8s.io für automatische Upgrades erforderlich.

Um das automatische Upgrade zu deaktivieren, geben Sie den Parameter --disable-auto-upgrade an, während Sie den Cluster mit Azure Arc verbinden.

Der folgende Befehl verbindet einen Cluster mit Azure Arc mit deaktiviertem automatischen Upgrade:

az connectedk8s connect --name AzureArcTest1 --resource-group AzureArcTest --disable-auto-upgrade

Tipp

Wenn Sie planen, automatische Upgrades zu deaktivieren, lesen Sie die Richtlinie zur Versionsunterstützung für Kubernetes mit Azure Arc-Unterstützung.

Aktivieren/Deaktivieren von automatischen Upgrades nach dem Herstellen einer Verbindung zwischen einem Cluster und Azure Arc

Nachdem Sie einen Cluster mit Azure Arc verbunden haben, können Sie die Auswahl automatischer Upgrades ändern, indem Sie den Befehl az connectedk8s update ausführen und die Einstellung --auto-upgrade auf „true“ oder „false“ festlegen.

Der folgende Befehl deaktiviert das automatische Upgrade für einen verbundenen Cluster:

az connectedk8s update --name AzureArcTest1 --resource-group AzureArcTest --auto-upgrade false

Manuelles Upgrade von Agents

Wenn Sie das automatische Upgrade deaktiviert haben, können Sie Upgrades für die Agents manuell initiieren, indem Sie den Befehl az connectedk8s upgrade verwenden. Dazu müssen Sie die Version angeben, auf die Sie upgraden möchten.

Azure Arc-fähiges Kubernetes folgt dem standardmäßigen semantischen Versionsverwaltungsschema von MAJOR.MINOR.PATCH für die Versionsverwaltung seiner Agents. Für jede Zahl in der Version gilt, dass allgemeine Kompatibilität mit der vorherigen Version besteht:

  • Hauptversionen werden geändert, wenn es inkompatible API-Updates gibt oder die Abwärtskompatibilität fehlerhaft ist.
  • Nebenversionen werden geändert, wenn Funktionsänderungen hinsichtlich anderer kleinerer Releases abwärtskompatibel sind.
  • Patchversionen werden geändert, wenn abwärtskompatible Fehlerbehebungen vorgenommen werden.

Der Zeitplan kann variieren, aber eine neue Nebenversion von Azure Arc-fähigen Kubernetes-Agents wird ungefähr einmal pro Monat veröffentlicht.

Mit dem folgenden Befehl werden die Agents manuell auf Version 1.8.14 aktualisiert:

az connectedk8s upgrade -g AzureArcTest1 -n AzureArcTest --agent-version 1.8.14

Überprüfen der Agent-Version

Verwenden Sie den folgenden Befehl, um die verbundenen Cluster und die gemeldete Agent-Version aufzulisten:

az connectedk8s list --query '[].{name:name,rg:resourceGroup,id:id,version:agentVersion}'

Überprüfen, ob das automatische Upgrade in einem Cluster aktiviert ist

Führen Sie den folgenden kubectl-Befehl aus, um zu überprüfen, ob ein Cluster für das automatische Upgrade aktiviert ist. Beachten Sie, dass die automatische Upgradekonfiguration in der öffentlichen API für Kubernetes mit Azure Arc-Unterstützung nicht verfügbar ist.

kubectl -n azure-arc get cm azure-clusterconfig -o jsonpath="{.data['AZURE_ARC_AUTOUPDATE']}"

Richtlinie zur Versionsunterstützung

Wenn Sie für Kubernetes mit Azure Arc-Unterstützung Supportanfragen erstellen, gilt die folgende Richtlinie zur Versionsunterstützung:

  • Azure Arc-fähige Kubernetes-Agents verfügen über ein Supportfenster von „N-2“, wobei „N“ die letzte Nebenversion der Agents darstellt.

    • Wenn Kubernetes mit Azure Arc-Unterstützung heute z. B. „0.28.a“ einführt, werden die Versionen „0.28.a“, „0.28.b“, „0.27.c“, „0.27.d“, „0.26.e“ und „0.26.f“ unterstützt.
  • Kubernetes-Cluster, die eine Verbindung mit Azure Arc herstellen, besitzen ein Supportfenster von „N-2“, wobei „N“ das letzte stabile kleinere Release der Upstreamversion von Kubernetes ist.

    • Wenn Kubernetes heute z. B. „1.20.a“ einführt, werden die Versionen „1.20.a“, „1.20.b“, „1.19.c“, „1.19.d“, „1.18.e“ und „1.18.f“ unterstützt.

Wenn Sie eine Supportanfrage erstellen und eine Version verwenden, die nicht unter die Supportrichtlinie fällt (älter als die unterstützten N-2-Versionen der Agents und Kubernetes-Upstreamcluster), werden Sie aufgefordert, die Cluster und Agents auf eine unterstützte Version zu aktualisieren.

Nächste Schritte