Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In deze zelfstudie, deel three van vijf, migreert u uw bestaande knooppunten naar Azure Linux. U kunt uw bestaande knooppunten migreren naar Azure Linux met behulp van een van de volgende methoden:
- Verwijder bestaande knooppuntgroepen en voeg nieuwe Azure Linux-knooppuntgroepen toe.
- Voer een in-place migratie van het besturingssysteem-SKU uit.
De opdrachten in deze zelfstudie gebruiken de omgevingsvariabelen die zijn ingesteld in Tutorial 1: Een cluster maken met de Azure Linux-containerhost voor AKS.
Als u geen bestaande knooppunten hebt om te migreren naar Azure Linux, gaat u verder met de volgende zelfstudie. In latere zelfstudies leert u hoe u telemetrie en bewaking inschakelt in uw clusters en Azure Linux-knooppunten bijwerkt.
Prerequisites
- In de vorige zelfstudies hebt u een Azure Linux-containerhost voor AKS-cluster gemaakt en geïmplementeerd. Als u deze zelfstudie wilt voltooien, moet u een Azure Linux-knooppuntgroep toevoegen aan uw bestaande cluster. Als u deze stap nog niet hebt uitgevoerd en u deze wilt volgen, begint u met zelfstudie 2: Een Azure Linux-knooppuntgroep toevoegen aan uw bestaande AKS-cluster.
Opmerking
Bij het toevoegen van een nieuwe Azure Linux-knooppuntgroep moet u er ten minste één toevoegen als --mode System. Anders kunt u met AKS uw bestaande knooppuntgroep niet verwijderen.
- U hebt de nieuwste versie van Azure CLI nodig. Voer
az --versionuit om de versie te vinden. Als u Azure CLI wilt installeren of upgraden, raadpleegt u Azure CLI installeren.
Omgevingsvariabelen instellen
Stel de volgende omgevingsvariabelen in om unieke resourcenamen te maken voor elke implementatie. Vervang de tijdelijke aanduiding <your-node-pool-name> door een naam van uw keuze. U kunt eventueel een willekeurig achtervoegsel toevoegen om de uniekheid te garanderen. De naam van een knooppuntpool moet beginnen met een kleine letter en mag alleen alfanumerieke tekens bevatten. Voor Linux-knooppuntgroepen moet de lengte tussen één en 12 tekens lang zijn.
# Set random suffix for uniqueness
export RANDOM_SUFFIX=$(openssl rand -hex 3)
# Set node pool name
export NODE_POOL_NAME="<your-node-pool-name>$RANDOM_SUFFIX"
Azure Linux-knooppuntgroepen toevoegen en bestaande knooppuntgroepen verwijderen
Voeg een nieuwe Azure Linux-knooppuntgroep toe met behulp van de
az aks nodepool addopdracht. Met deze opdracht wordt een nieuwe knooppuntgroep aan uw cluster toegevoegd met de--mode Systemvlag, waardoor het een systeemknooppuntgroep wordt. Systeemknooppuntgroepen zijn vereist voor Azure Linux-clusters.az aks nodepool add --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME --name $NODE_POOL_NAME --mode System --os-sku AzureLinuxVoorbeelduitvoer:
{ "id": "/subscriptions/xxxxx/resourceGroups/myResourceGroupxxx/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/nodePools/systempool", "name": "systempool", "provisioningState": "Succeeded" }Verwijder uw bestaande knooppunten met behulp van de
az aks nodepool deleteopdracht.
SKU-migratie van het besturingssysteem op dezelfde installatie
U kunt uw bestaande Ubuntu-knooppuntgroepen migreren naar Azure Linux door de OS-SKU van de knooppuntgroep te wijzigen, waardoor het cluster via het standaardproces voor upgrades van knooppuntinstallatiekopieën wordt bijgewerkt. Voor deze nieuwe functie is het maken van nieuwe knooppuntgroepen niet vereist.
Beperkingen voor in-place SKU-migratie van het besturingssysteem
Er zijn verschillende instellingen waarmee de migratieaanvraag voor de SKU van het besturingssysteem kan worden geblokkeerd. Bekijk de volgende richtlijnen en beperkingen om een geslaagde migratie te garanderen:
- De SKU-migratiefunctie van het besturingssysteem is niet beschikbaar via PowerShell of Azure Portal.
- De SKU-migratiefunctie van het besturingssysteem kan de naam van bestaande knooppuntgroepen niet wijzigen.
- Ubuntu, Azure Linux en Azure Linux met OS Guard zijn de enige ondersteunde Linux OS SKU-migratiedoelen.
- Vertrouwde start is standaard vereist voor Azure Linux met OS Guard. U moet vertrouwde start hebben ingeschakeld om te kunnen migreren naar Azure Linux met OS Guard. Omdat u Vertrouwde start niet kunt inschakelen voor bestaande knooppuntgroepen, moet u een nieuwe knooppuntgroep maken waarvoor Vertrouwde start is ingeschakeld en uw workloads migreren naar die knooppuntgroep.
- Klanten die alleen vm-grootten (virtuele machines) van Gen 1 gebruiken, kunnen niet worden gemigreerd naar Azure Linux met OS Guard, omdat er geen ondersteunde Gen 1-installatiekopieën zijn. In dit geval moet u nieuwe knooppuntgroepen maken met een VM-grootte die ondersteuning biedt voor Gen 2.
- Een Ubuntu OS-SKU waarvoor
UseGPUDedicatedVHDingeschakeld is, kan geen SKU-migratie van het besturingssysteem uitvoeren. - Een Ubuntu OS SKU waarvoor CVM 20.04 is ingeschakeld, kan geen SKU-migratie van het besturingssysteem uitvoeren.
- Knooppuntgroepen waarvoor Kata is ingeschakeld, kunnen geen SKU-migratie van het besturingssysteem uitvoeren.
- Migratie van windows-besturingssysteem-SKU's wordt niet ondersteund.
Vereisten voor ter plaatse uitgevoerde migratie van OS-SKU's
- Een bestaand AKS-cluster met ten minste één Ubuntu-knooppuntgroep.
- We raden u aan ervoor te zorgen dat uw workloads met succes worden geconfigureerd en uitgevoerd op de Azure Linux-containerhost voordat u de SKU-migratiefunctie van het besturingssysteem probeert te gebruiken door een Azure Linux-cluster te implementeren in dev/prod en te controleren of uw service in orde blijft.
- Zorg ervoor dat de migratiefunctie voor u in test/dev werkt voordat u het proces in een productiecluster gebruikt.
- Zorg ervoor dat uw pods voldoende Pod Disruption Budget (PDB) hebben, zodat AKS pods tussen VM's kan verplaatsen tijdens de upgrade.
- U hebt Azure CLI versie 2.61.0 of hoger nodig. Voer
az --versionuit om de versie te vinden. Als u Azure CLI wilt installeren of upgraden, raadpleegt u Azure CLI installeren. - Als u Terraform gebruikt, moet u beschikken over v3.111.0 of hoger van de AzureRM Terraform-module.
Migreer de SKU van het besturingssysteem van uw Ubuntu-knooppuntgroep
Migreer de SKU van het besturingssysteem van uw knooppuntgroep naar Azure Linux met behulp van de az aks nodepool update opdracht. Met deze opdracht wordt de SKU van het besturingssysteem voor uw knooppuntgroep bijgewerkt van Ubuntu naar Azure Linux. De SKU-wijziging van het besturingssysteem activeert een onmiddellijke upgradebewerking, die enkele minuten duurt.
az aks nodepool update --resource-group $RESOURCE_GROUP --cluster-name $CLUSTER_NAME --name $NODE_POOL_NAME --os-sku AzureLinux
Voorbeelduitvoer:
{
"id": "/subscriptions/xxxxx/resourceGroups/myResourceGroupxxx/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/nodePools/nodepool1",
"name": "nodepool1",
"osSku": "AzureLinux",
"provisioningState": "Succeeded"
}
Opmerking
Als u problemen ondervindt tijdens de migratie van de SKU van het besturingssysteem, kunt u terugdraaien naar uw vorige SKU van het besturingssysteem.
De OS-SKU-migratie controleren
Zodra de migratie is voltooid op uw testclusters, moet u het volgende controleren om een geslaagde migratie te garanderen:
- Als uw migratiedoel Azure Linux is, voert u de
kubectl get nodes -o wideopdracht uit. De uitvoer moetMicrosoft Azure Linux 3.0weergeven als uw besturingssysteemimage en.azl3aan het einde van uw kernelversie. - Voer de opdracht
kubectl get pods -o wide -Auit om te controleren of al uw pods en daemonsets actief zijn op de nieuwe nodegroep. - Voer de
kubectl get nodes --show-labelsopdracht uit om te controleren of alle knooppuntlabels in de bijgewerkte knooppuntgroep zijn wat u verwacht.
Tip
Het is raadzaam om de status van uw service een paar weken te controleren voordat u uw productieclusters migreert.
De SKU-migratie van het besturingssysteem uitvoeren op uw productieclusters
Werk uw bestaande sjablonen bij om in te stellen
OSSKU=AzureLinux. Zorg ervoor dat deapiVersioninstellingen zijn ingesteld op2023-07-01of hoger.-
ARM-sjablonen: gebruiken
"OSSKU": "AzureLinux"in deagentPoolProfilesectie. -
Bicep: gebruik
osSku: "AzureLinux"in de sectieagentPoolProfile. -
Terraform: Gebruiken
os_sku = "AzureLinux"in dedefault_node_poolsectie.
-
ARM-sjablonen: gebruiken
Implementeer de ARM-, Bicep- of Terraform-sjabloon opnieuw voor het cluster om de nieuwe
OSSKUinstelling toe te passen. Tijdens deze uitrol doet uw cluster alsof het een upgrade van de knooppuntimage ondergaat. Uw cluster schaalt de capaciteit op en start vervolgens uw bestaande knooppunten één voor één opnieuw op met de nieuwste AKS-image van uw nieuwe OS-SKU.
Terugdraaien naar uw vorige SKU van het besturingssysteem
Als u problemen ondervindt tijdens de migratie van de SKU van het besturingssysteem, kunt u terugdraaien naar uw vorige SKU van het besturingssysteem. Hiervoor moet u het veld os-SKU in uw sjabloon wijzigen en de implementatie opnieuw indienen, waardoor een andere upgradebewerking wordt geactiveerd en de knooppuntgroep wordt hersteld naar de vorige SKU van het besturingssysteem.
U kunt teruggaan naar de vorige SKU van het besturingssysteem met behulp van de az aks nodepool update opdracht. Met deze opdracht wordt de SKU van het besturingssysteem voor uw knooppuntgroep bijgewerkt van Azure Linux terug naar Ubuntu.
Volgende stap
In deze zelfstudie hebt u bestaande knooppunten gemigreerd naar Azure Linux door bestaande knooppuntgroepen te verwijderen en nieuwe Azure Linux-knooppuntgroepen toe te voegen of door een in-place SKU-migratie van het besturingssysteem uit te voeren.
In de volgende zelfstudie leert u hoe u telemetrie kunt inschakelen om uw clusters te bewaken.