Skapa nodpooler för ett kluster i Azure Kubernetes Service (AKS)

Den här artikeln visar hur du skapar en eller flera nodpooler i ett AKS-kluster.

Anmärkning

Den här funktionen ger mer kontroll över att skapa och hantera flera nodpooler och kräver separata kommandon för crud-åtgärder ( create/update/delete ). Tidigare användes klusteroperationer via az aks create eller az aks update managedCluster API:et och var de enda alternativen för att ändra ditt kontrollplan och en enda nodpool. Den här funktionen exponerar en separat åtgärdsuppsättning för agentpooler via agentPool-API:et och kräver användning av kommandouppsättningen az aks nodepool för att köra åtgärder på en enskild nodpool.

Viktigt!

Från och med November 30, 2025 Azure Kubernetes Service (AKS) inte längre stöder eller tillhandahåller säkerhetsuppdateringar för Azure Linux 2.0. Nodbilden Azure Linux 2.0 är fryst på 202512.06.0 release. Från och med den 31 mars 2026 tas nodbilder bort och du kan inte skala dina nodpooler. Migrera till en Azure Linux-version som stöds genom att uppgradera dina nodpooler till en Kubernetes-version som stöds eller migrera till osSku AzureLinux3. Mer information finns i pensionsfrågan på GitHub och pensionsmeddelandet från Azure Updates. För att hålla dig informerad om meddelanden och uppdateringar, följ AKS-versionsinformation.

Förutsättningar

  • Du behöver Azure CLI version 2.87.0 eller senare installerad och konfigurerad. Kör az --version för att hitta versionen. Om du behöver installera eller uppgradera kan du läsa Installera Azure CLI.
  • För att distribuera en ARM-mall behöver du skrivåtkomst till de resurser som du distribuerar och åtkomst till alla åtgärder på resurstypen Microsoft.Resources/deployments. Om du till exempel vill distribuera en virtuell dator (VM) behöver du behörigheterna Microsoft.Compute/virtualMachines/write och Microsoft.Resources/deployments/*. En lista över roller och behörigheter finns i Azure inbyggda roller.
  • Granska följande krav för varje parameter:
    • osType: Typ av operativsystem. Standardvärdet är Linux.
    • osSKU: Anger os-SKU:n som används av agentpoolen.
    • count: Antal agenter (virtuella datorer) som ska vara värdar för Docker-containrar. Tillåtna värden måste ligga mellan 0 och 1 000 (inklusive) för användarpooler och i intervallet 1 till 1 000 (inklusive) för systempooler. Standardvärdet är 1.
  • När du har distribuerat klustret med hjälp av en ARM-mall kan du använda Azure CLI eller Azure PowerShell för att ansluta till klustret och distribuera exempelprogrammet.

Begränsningar

Följande begränsningar gäller när du skapar AKS-kluster som stöder flera nodpooler:

  • Du kan ta bort systemnodpoolen om du har en annan systemnodpool som ska ta plats i AKS-klustret. Annars kan du inte ta bort systemnodpoolen.
  • Systempooler måste innehålla minst två noder och användarnodpooler kan innehålla noll eller fler noder.
  • Om du skapar ett kluster med en enda nodpool måste operativsystemtypen vara Linux. OS-SKU:n kan vara valfri Linux-variant, till exempel Ubuntu, AzureContainerLinuxeller AzureLinux. Du kan inte skapa ett kluster med en enda Windows nodpool. Om du vill köra Windows containrar måste du lägga till en Windows nodpool i klustret när du har skapat den med en Linux-systemnodpool.
  • AKS-klustret måste använda standard-SKU-lastbalanseraren för att använda flera nodpooler. Den här funktionen stöds inte med Basic SKU-lastbalanserare.
  • AKS-klustret måste använda Virtual Machine Scale Sets för noderna.
  • Namnet på en nodpool får bara innehålla alfanumeriska tecken i små bokstäver och måste börja med en liten bokstav.
    • För Linux-nodpooler måste längden vara mellan 1 och 12 tecken.
    • För Windows nodpooler måste längden vara mellan 1 och 6 tecken.
  • Alla nodpooler måste finnas i samma virtuella nätverk (VNet).
  • Du kan inte ändra storleken på den virtuella datorn för en nodpool när du har skapat den.
  • När du skapar flera nodpooler när klustret skapas måste Kubernetes-versionerna för nodpoolerna matcha versionuppsättningen för kontrollplanet. Du kan göra uppdateringar när du har etablerat klustret med hjälp av åtgärder per nodpool.

Viktigt!

Om du använder Azure Container Linux (ACL) på AKS kontrollerar du att du granskar följande överväganden och begränsningar:

Skapa specialiserade nodpooler

Mer information om hur du skapar specialiserade nodpooler finns i följande artiklar:

Ange miljövariabler

Ange följande miljövariabler i gränssnittet för att förenkla kommandona i den här artikeln. Du kan ändra värdena till önskade namn.

export RESOURCE_GROUP_NAME="my-aks-rg"
export LOCATION="eastus"
export CLUSTER_NAME="my-aks-cluster"
export NODE_POOL_NAME="mynodepool"

Skapa en resursgrupp

Skapa en Azure resursgrupp med kommandot az group create.

az group create --name $RESOURCE_GROUP_NAME --location $LOCATION

Skapa ett AKS-kluster med en enda nodpool med hjälp av Azure CLI

Om du bara vill ha en nodpool i AKS-klustret kan du schemalägga programpoddar i systemnodpooler. Om du kör en enda systemnodpool för ditt AKS-kluster i en produktionsmiljö rekommenderar vi att du använder minst tre noder för nodpoolen. Om en nod slutar fungera komprometteras redundansen. Du kan minska den här risken genom att ha fler noder i systemnodpoolen.

  1. Skapa ett kluster med en enda Ubuntu-nodpool med kommandot az aks create . Det här steget anger två noder i den enskilda nodpoolen.

    az aks create \
        --resource-group $RESOURCE_GROUP_NAME \
        --name $CLUSTER_NAME \
        --vm-set-type VirtualMachineScaleSets \
        --node-count 2 \
        --os-sku Ubuntu \
        --location $LOCATION \
        --load-balancer-sku standard \
        --generate-ssh-keys
    

    Det tar några minuter att skapa klustret.

  2. När klustret är klart hämtar du klustrets autentiseringsuppgifter med az aks get-credentials kommandot.

    az aks get-credentials --resource-group $RESOURCE_GROUP_NAME --name $CLUSTER_NAME
    

Lägg till en andra nodpool med hjälp av Azure CLI

Klustret som skapades i föregående avsnitt har en enda nodpool. I det här avsnittet lägger vi till en andra nodpool i klustret. Den här andra nodpoolen kan ha en operativsystemtyp av Linux med en OS-SKU av Ubuntu eller AzureLinux, eller en operativsystemtyp av Windows.

Anmärkning

Om du vill lägga till en nodpool som använder tillfälliga OS-diskar i AKS-klustret kan du ange --node-osdisk-type flaggan till Ephemeral när du kör az aks nodepool add kommandot.

Med tillfälliga operativsystem kan du distribuera virtuella datorer och instansavbildningar upp till storleken på den virtuella datorns cacheminne. Standardkonfigurationen för nod-OS-disken i AKS använder 128 GB, vilket innebär att du behöver en VM-storlek som har en cache som är större än 128 GB. Standardvärdet Standard_DS2_v2 har en cachestorlek på 86 GB, vilket inte är tillräckligt stort. Den Standard_DS3_v2 virtuella datorns SKU har en cachestorlek på 172 GB, vilket är tillräckligt stort. Du kan också minska standardstorleken för OS-disken med hjälp av --node-osdisk-size, men tänk på att den minsta storleken för AKS-avbildningar är 30 GB.

Om du vill skapa nodpooler med nätverksanslutna OS-diskar kan du ange --node-osdisk-type flaggan till Managed när du kör az aks nodepool add kommandot.

Lägga till en Linux-nodpool

Skapa en ny nodpool med kommandot az aks nodepool add . I följande exempel skapas en Linux nodpool med os-SKU Ubuntu :n som kör tre noder. Om du inte anger en OS-SKU är AKS som standard Ubuntu.

az aks nodepool add \
    --resource-group $RESOURCE_GROUP_NAME \
    --cluster-name $CLUSTER_NAME \
    --name $NODE_POOL_NAME \
    --node-vm-size Standard_DS2_v2 \
    --os-type Linux \
    --os-sku Ubuntu \
    --node-count 3

Det tar några minuter att skapa nodpoolen.

Lägga till en Windows Server nodpool

Skapa nodpoolen Windows Server 2025

Skapa en ny nodpool med kommandot az aks nodepool add . I följande exempel skapas en Windows nodpool med os-SKU Windows2025 :n som kör tre noder.

Mer information om Windows operativsystem finns i Windows bästa praxis.

az aks nodepool add \
    --resource-group $RESOURCE_GROUP_NAME \
    --cluster-name $CLUSTER_NAME \
    --name $NODE_POOL_NAME \
    --node-vm-size Standard_DS2_v2 \
    --os-type Windows \
    --os-sku Windows2025 \
    --node-count 3

Kontrollera statusen för dina nodpooler

Kontrollera statusen för dina nodpooler med kommandot az aks nodepool list och ange resursgruppen och klusternamnet.

az aks nodepool list --resource-group $RESOURCE_GROUP_NAME --cluster-name $CLUSTER_NAME

Skapa ett AKS-kluster med en enda nodpool med hjälp av en ARM-mall

Om du bara vill ha en nodpool i AKS-klustret kan du schemalägga programpoddar i systemnodpooler. Om du kör en enda systemnodpool för ditt AKS-kluster i en produktionsmiljö rekommenderar vi att du använder minst tre noder för nodpoolen. Om en nod slutar fungera komprometteras redundansen. Du kan minska den här risken genom att ha fler noder i systemnodpoolen.

Skapa en Microsoft.ContainerService/managedClusters resurs

Skapa en Microsoft.ContainerService/managedClusters resurs genom att lägga till den här JSON i mallen.

  • Skapa en enda Ubuntu-nodpool i AKS-klustret genom att göra följande ändringar i ARM-mallen:

      "properties": {
        "agentPoolProfiles": [
        {
            "count": "1",
            "osSKU": "ubuntu",
            "osType": "linux"
         } 
         ],
    }
    

Lägga till en andra nodpool med hjälp av en ARM-mall

Klustret som skapades i föregående avsnitt har en enda nodpool. I det här avsnittet lägger vi till en andra nodpool i klustret. Den här andra nodpoolen kan ha en operativsystemtyp av Linux med en OS-SKU av Ubuntu eller AzureLinux, eller en operativsystemtyp av Windows.

Lägga till Linux-nodpooler

  • Skapa flera Ubuntu-nodpooler i ditt AKS-kluster genom att göra följande ändringar i ARM-mallen:

      "properties": {
        "agentPoolProfiles": [
        {
            "count": "3",
            "osSKU": "ubuntu",
            "osType": "linux"
         } 
         ],
    }
    

Lägga till Windows Server nodpooler

Skapa nodpoolerna Windows Server 2025
  • Skapa flera Windows nodpooler i AKS-klustret genom att göra följande ändringar i ARM-mallen:

      "properties": {
        "agentPoolProfiles": [
        {
            "count": "3",
            "osSKU": "windows2025",
            "osType": "windows"
         } 
         ],
    }
    

Distribuera ARM-mallen

Ange taints, etiketter eller taggar för en nodpool

När du skapar en nodpool kan du lägga till taints, etiketter eller taggar i den. När du lägger till en taint, etikett eller tagg får alla noder i nodpoolen även den tainten, etiketten eller taggen. Vi rekommenderar att du tillämpar dessa egenskaper på en hel nodpool i stället för enskilda noder. På så sätt kan du enkelt hantera egenskaperna för alla noder i nodpoolen genom att uppdatera nodpoolens egenskaper i stället för att uppdatera varje nod individuellt.

Om du vill ha specifika instruktioner för hur du anger taints, etiketter eller taggar för en nodpool använder du följande resurser:

Nästa steg

I den här artikeln har du lärt dig hur du skapar ett AKS-kluster med en enda nodpool och lägger till ytterligare nodpooler i klustret. Mer information om hur du hanterar dina nodpooler finns i följande artiklar: