Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
I den här artikeln får du lära dig hur du migrerar dina befintliga AKS-nodpooler till Azure Container Linux (ACL) för AKS. Du kan migrera dina befintliga noder med någon av följande metoder:
- Migrering av OS-SKU på plats: Ändra OS-SKU för dina befintliga nodpooler till ACL, vilket installerar om noderna automatiskt.
- Ta bort befintliga nodpooler och lägg till nya ACL-nodpooler: Skapa nya ACL-nodpooler, flytta dina arbetsbelastningar och ta bort de gamla nodpoolerna.
Important
Om du använder Azure Container Linux (ACL) på AKS kontrollerar du att du granskar följande överväganden och begränsningar:
- ACL är allmänt tillgängligt från och med AKS v1.34.
- ACL kräver betrodd start med säker start och vTPM. Icke-betrodda startvarianter är inte tillgängliga.
- ACL på Arm64 kräver Cobalt-baserade SKU:er (v6) för kompatibilitet med Trusted Launch.
-
NodeImageochNoneär de enda operativsystemuppgraderingskanalerna som stöds.UnmanagedochSecurityPatchär inte kompatibla med ACL på grund av den oföränderliga/usrkatalogen. - Streaming av artefakter stöds inte.
- Poddsandboxning stöds inte.
- Konfidentiella virtuella datorer stöds inte.
- Virtuella datorer i generation 1 stöds inte.
Begränsningar för OS SKU-migrering på plats
Utöver de allmänna ACL-begränsningarna gäller följande särskilt för migrering av OS-SKU på plats:
- Os SKU-migreringsfunktionen är inte tillgänglig via PowerShell eller Azure Portal.
- Migreringsfunktionen för OS SKU har inte stöd för att byta namn på befintliga nodpooler.
- Nodpooler med
UseGPUDedicatedVHDaktiverat kan inte utföra en OS SKU-migrering. - Windows OS SKU-migrering stöds inte.
Förutsättningar
- Ett befintligt AKS-kluster med minst en Linux-nodpool.
- Azure CLI version 2.86.0 eller senare. Kör
az --versionför att hitta versionen. Om du behöver installera eller uppgradera, se Installera Azure CLI. - Vi rekommenderar att du verifierar att dina arbetsbelastningar körs på ACL genom att distribuera ett ACL-kluster i en utvecklings- eller mellanlagringsmiljö innan du migrerar produktionskluster.
- Se till att migreringsfunktionen fungerar för dig i test/utveckling innan du använder processen i ett produktionskluster.
- Se till att dina poddar har tillräckligt med poddstörningsbudget (PDB) så att AKS kan flytta poddar mellan virtuella datorer under migreringen.
Lägga till ACL-nodpooler och ta bort befintliga nodpooler
Lägg till en ny ACL-nodpool med kommandot
az aks nodepool add. Använd--mode Systemså att den nya poolen kan fungera som systemagentpool, vilket gör att du kan ta bort den ursprungliga nodpoolen i nästa steg.az aks nodepool add \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <new-node-pool-name> \ --os-sku AzureContainerLinux \ --mode System \ --node-count 3Exempel på utdata:
{ "id": "/subscriptions/xxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/nodePools/myNewNodePool", "name": "myNewNodePool", "osSku": "AzureContainerLinux", "provisioningState": "Succeeded" }Ta bort din befintliga nodpool med kommandot
az aks nodepool delete.az aks nodepool delete \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --name <existing-node-pool-name>
Migrering av operativsystem-SKU direkt
Du kan migrera dina befintliga Linux-nodpooler till ACL genom att ändra OS-SKU:n för nodpoolen, som rullar klustret via standardprocessen för nodavbildningsuppgradering. Den här metoden kräver inte att nya nodpooler skapas. i stället återskapas dina befintliga nodpooler automatiskt.
Utföra en in-place migrering av operativsystem-SKU
Important
ACL kräver betrodd start. Du måste inkludera --enable-secure-boot och --enable-vtpm när du migrerar till AzureContainerLinux OS-SKU:n. Storleken på den virtuella datorn (VM) i nodpoolen måste också ha stöd för Trusted Launch. Om din aktuella VM-storlek inte stöder den måste du ändra storlek på eller återskapa nodpoolen med en vm-storlek som stöds innan du migrerar.
Migrera OS SKU:n för nodpoolen till ACL med hjälp av az aks nodepool update kommandot . Det här kommandot utlöser en återimering av nodpoolen och uppdaterar OS-SKU:n till AzureContainerLinux. Os SKU-ändringen utlöser en omedelbar uppgraderingsåtgärd, vilket tar flera minuter att slutföra.
az aks nodepool update \
--resource-group <resource-group> \
--cluster-name <cluster-name> \
--name <existing-node-pool-name> \
--os-sku AzureContainerLinux \
--enable-secure-boot \
--enable-vtpm
Exempel på utdata:
{
"id": "/subscriptions/xxxxx/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/nodePools/nodepool1",
"name": "nodepool1",
"osSku": "AzureContainerLinux",
"provisioningState": "Succeeded"
}
Note
Om du får problem under OS SKU-migreringen kan du återställa till din tidigare OS SKU.
Verifiera OS SKU-migreringen
Tip
Vi rekommenderar att du övervakar hälsotillståndet för din tjänst i ett par veckor innan du migrerar dina produktionskluster.
När migreringen är klar i dina testkluster rekommenderar vi att du övervakar klustret och arbetsbelastningarna i ett par veckor för att bekräfta att allt körs som förväntat innan du migrerar produktionskluster. Använd följande kommandon för att verifiera migreringen och övervaka klustret:
Bekräfta att de nya noderna kör ACL med kommandot
kubectl get nodes -o wide. Utdata ska visa ACL OS-avbildningen.kubectl get nodes -o wideKontrollera att alla poddar och daemonuppsättningar körs i den nya nodpoolen
kubectl get pods -o wide -Amed kommandot .kubectl get pods -o wide -AKontrollera att alla nodetiketter i den uppgraderade nodpoolen är vad du förväntar dig med kommandot
kubectl get nodes --show-labels.kubectl get nodes --show-labelsKontrollera nodbildversionen med kommandot
az aks nodepool list.az aks nodepool list \ --resource-group <resource-group> \ --cluster-name <cluster-name> \ --query '[].{name: name, osSku: osSku, nodeImageVersion: nodeImageVersion}'Exempel på utdata:
[ { "name": "myNodePool", "nodeImageVersion": "AKSAzureContainerLinux-202606.01.0", "osSku": "AzureContainerLinux" } ]
Gå tillbaka till din tidigare OS-produktversion
Om du får problem under OS SKU-migreringen kan du återställa till din tidigare OS SKU. Det gör du genom att ändra tillbaka OS SKU-fältet till ditt tidigare värde och skicka distributionen igen, vilket utlöser en annan uppgraderingsåtgärd och återskapar nodpoolen till dess tidigare OS SKU. Om du återgår från ACL till din tidigare OS-SKU använder nodpoolen som standard avbildningsvarianten Trusted Launch (Gen2), om inte Trusted Launch uttryckligen har inaktiverats.
Återställ till din tidigare OS SKU med kommandot az aks nodepool update . Det här exemplet återgår från ACL till Azure Linux:
az aks nodepool update \
--resource-group <resource-group> \
--cluster-name <cluster-name> \
--name <existing-node-pool-name> \
--os-sku AzureLinux
Relaterat innehåll
Mer information om ACL finns i What is Azure Container Linux (ACL) for Azure Kubernetes Service (AKS)?