Zelfstudie: Kubernetes upgraden in AKS waarvoor Azure Arc is ingeschakeld
Van toepassing op: AKS op Azure Stack HCI 22H2, AKS op Windows Server
Als onderdeel van het beheren van de levenscyclus van toepassingen en clusters, wilt u mogelijk upgraden naar de nieuwste beschikbare versie van Kubernetes wanneer u AKS gebruikt die is ingeschakeld door Azure Arc.
In deze zelfstudie, deel zeven van zeven, wordt beschreven hoe u een Kubernetes-cluster kunt upgraden. U leert het volgende:
- Huidige en beschikbare Kubernetes-versies identificeren
- De Kubernetes-versie van Kubernetes-knooppunten upgraden
- De versie van het besturingssysteem van Kubernetes-knooppunten bijwerken
- Een Kubernetes-cluster upgraden naar de nieuwste versie
- Een geslaagde upgrade valideren
- Een Kubernetes-cluster verwijderen
Wat zijn de beschikbare updateopties?
Er zijn verschillende soorten updates, die onafhankelijk van elkaar kunnen plaatsvinden en in bepaalde ondersteunde combinaties:
- Werk de AKS-host bij naar de nieuwste versie.
- Werk een AKS-workloadcluster bij naar een nieuwe Kubernetes-versie.
- Werk de AKS-containerhosts bij naar een nieuwere versie van het besturingssysteem.
- Gecombineerde update van besturingssysteem en Kubernetes-versie.
Alle updates worden uitgevoerd in een rolling stroom om storingen in de beschikbaarheid van workloads te voorkomen. Wanneer een nieuw Kubernetes-werkknooppunt met een nieuwere build in het cluster wordt geplaatst, worden resources verplaatst van het oude knooppunt naar het nieuwe knooppunt. Zodra dit is voltooid, wordt het oude knooppunt buiten gebruik gesteld en verwijderd uit het cluster.
In de voorbeelden in deze zelfstudie wordt ervan uitgegaan dat het workloadcluster, mycluster
zich momenteel op Kubernetes versie 1.18.8 bevindt en een besturingssysteemversie van meer dan 30 dagen gebruikt.
Voordat u begint
In eerdere zelfstudies hebt u geleerd hoe u een toepassing in een containerinstallatiekopieën inpakt, uploadt naar Azure Container Registry en een Kubernetes-cluster maakt. Vervolgens hebt u de toepassing geïmplementeerd in het cluster. Als u deze stappen nog niet hebt voltooid, begint u met zelfstudie 1: Containerinstallatiekopieën maken.
De Kubernetes-versie van een workloadcluster bijwerken
U moet eerst de PowerShell-modules en de AKS-host upgraden voordat u de Kubernetes-versie bijwerkt.
Belangrijk
Het bijwerken van een workloadcluster naar een nieuwere versie van Kubernetes werkt alleen als de kubernetes-doelversie wordt ondersteund door de huidige versie van het besturingssysteem. Gebruik de Get-AksHciUpdates
opdracht om te controleren op de ondersteunde combinaties van besturingssystemen en Kubernetes-versies.
Gebruik de volgende stappen om de Kubernetes-versie bij te werken:
Voer de volgende opdracht uit om de huidige versie van uw workloadcluster op te halen:
Get-AksHciCluster
ProvisioningState : provisioned KubernetesVersion : v1.20.7 NodePools : linuxnodepool WindowsNodeCount : 0 LinuxNodeCount : 0 ControlPlaneNodeCount : 1 Name : mycluster
Voer de volgende opdracht uit om de beschikbare Kubernetes-versies op te halen:
Get-AksHciKubernetesVersion
OrchestratorType OrchestratorVersion OS IsPreview ---------------- ------------------- -- --------- Kubernetes v1.19.9 Linux False Kubernetes v1.19.11 Linux False Kubernetes v1.20.5 Linux False Kubernetes v1.20.7 Linux False Kubernetes v1.21.1 Linux False Kubernetes v1.19.9 Windows False Kubernetes v1.19.11 Windows False Kubernetes v1.20.5 Windows False Kubernetes v1.20.7 Windows False Kubernetes v1.21.1 Windows False
In de uitvoer ziet u de Kubernetes-versies en -besturingssystemen waarop de versie beschikbaar is. U kunt zien dat er meer upgradeversies beschikbaar zijn. Bij het upgraden van clusters kunt u echter geen versies overslaan. V1.18.xx --> v1.19.xx is bijvoorbeeld toegestaan, maar v1.18.xx --> v1.20.xx is dat niet.
De Kubernetes-versie-update starten
Voer de volgende opdracht uit om de Kubernetes-versie bij te werken:
Update-AksHciCluster -name mycluster -kubernetesVersion v1.21.1
Notitie
Met deze opdracht worden alleen de bestaande clusterknooppunten in het
mycluster
workloadcluster bijgewerkt naar de nieuwe versie van Kubernetes.
Alleen de versie van het besturingssysteem bijwerken
Belangrijk
U kunt een workloadcluster bijwerken naar een nieuwere versie van het besturingssysteem zonder de Kubernetes-versie te wijzigen, maar dat werkt alleen als voor de nieuwe versie van het besturingssysteem geen andere Kubernetes-versie is vereist.
Gebruik de stappen in het volgende voorbeeld om de versie van het besturingssysteem bij te werken:
Voer de volgende opdracht uit om beschikbare werkbelastingclusterupdates op te halen:
Get-AksHciClusterUpdates -name mycluster
details kubernetesversion operatingsystemversion ------- ----------------- ---------------------- This is a patch kubernetes upgrade. (i.e v1.1.X to v1.1.Y) v1.19.9 @{mariner=April 2021; windows=April 2021} This is a minor kubernetes upgrade. (i.e v1.X.1 to v1.Y.1) v1.20.5 @{mariner=April 2021; windows=April 2021}
Voer de volgende opdracht uit om de update van de besturingssysteemversie te starten:
Update-AksHciCluster -clusterName mycluster -kubernetesVersion v1.21.1 -operatingSystem
Zowel het besturingssysteem als de Kubernetes-versie bijwerken
Belangrijk
Het bijwerken van een workloadcluster naar een nieuwere versie van het besturingssysteem en de Kubernetes-versie wordt ondersteund.
In het volgende voorbeeld wordt ervan uitgegaan dat er een nieuwe Kubernetes-versie beschikbaar is en dat het huidige versienummer v1.20.7 is.
Voer de volgende opdracht uit om alle beschikbare werkbelastingclusterupdates op te halen:
Get-AksHciClusterUpdates -name mycluster
details kubernetesversion operatingsystemversion ------- ----------------- ---------------------- This is a patch kubernetes upgrade. (i.e v1.1.X to v1.1.Y) v1.19.9 @{mariner=April 2021; windows=April 2021} This is a minor kubernetes upgrade. (i.e v1.X.1 to v1.Y.1) v1.20.5 @{mariner=April 2021; windows=April 2021}
Voer de volgende opdracht uit om de update van het workloadcluster te starten:
Update-AksHciCluster -name mycluster -kubernetesVersion v1.21.1
Een upgrade valideren
Controleer of de upgrade is geslaagd met behulp van de opdracht Get-AksHciCluster als volgt:
Get-AksHciCluster -name mycluster
In de volgende voorbeelduitvoer ziet u dat het cluster KubernetesVersion v1.21.1 uitvoert:
ProvisioningState : provisioned
KubernetesVersion : v1.21.1
NodePools : linuxnodepool
WindowsNodeCount : 0
LinuxNodeCount : 0
ControlPlaneNodeCount : 1
Name : mycluster
Het cluster verwijderen
Aangezien deze zelfstudie het laatste deel van de reeks is, kunt u het cluster verwijderen. Gebruik de opdracht Remove-AksHciCluster om de resourcegroep, containerservice en alle gerelateerde resources te verwijderen:
Remove-AksHciCluster -name mycluster
Volgende stappen
In deze zelfstudie hebt u Kubernetes bijgewerkt in een Kubernetes-cluster op AKS waarvoor Arc is ingeschakeld. U hebt geleerd hoe u het volgende kunt doen:
- Huidige en beschikbare Kubernetes-versies identificeren
- De Kubernetes-versie van Kubernetes-knooppunten upgraden
- De versie van het besturingssysteem van Kubernetes-knooppunten bijwerken
- Een Kubernetes-cluster upgraden naar de nieuwste versie
- Een geslaagde upgrade valideren
Zie het AKS-overzicht en de clusters en workloads voor meer informatie over AKS die zijn ingeschakeld door Azure Arc.