Tworzenie pul węzłów dla klastra w Azure Kubernetes Service (AKS)

W tym artykule pokazujemy, jak utworzyć jedną lub więcej pul węzłów w klastrze AKS.

Uwaga / Notatka

Ta funkcja umożliwia większą kontrolę nad tworzeniem wielu pul węzłów i zarządzaniem nimi oraz wymaga oddzielnych poleceń dla operacji create/update/delete (CRUD). Wcześniej operacje klastra były wykonywane za pomocą interfejsu API managedCluster poprzez az aks create lub az aks update i stanowiły jedyne opcje zmiany płaszczyzny sterowania oraz pojedynczej puli węzłów. Ta funkcja uwidacznia oddzielny zestaw operacji dla pul agentów za pośrednictwem interfejsu API agentPool i wymaga użycia az aks nodepool zestawu poleceń do wykonywania operacji w pojedynczej puli węzłów.

Ważne

Począwszy od November 30, 2025 Azure Kubernetes Service (AKS) nie obsługuje już aktualizacji zabezpieczeń dla systemu Azure Linux 2.0. Obraz węzła systemu Azure Linux 2.0 jest zamrożony w wersji 202512.06.0. Od 31 marca 2026 r. obrazy węzłów zostaną usunięte i nie będzie można skalować pul węzłów. Przeprowadź migrację do obsługiwanej wersji systemu Azure Linux, uaktualniając swoje pule węzłów do obsługiwanej wersji Kubernetes lub przechodząc na osSku AzureLinux3. Aby uzyskać więcej informacji, zobacz problem na GitHub dotyczący zakończenia oraz ogłoszenie o wycofaniu aktualizacji Azure. Aby być na bieżąco z ogłoszeniami i aktualizacjami, obserwuj notatki dotyczące wydań AKS.

Wymagania wstępne

  • Potrzebujesz Azure CLI wersji 2.87.0 lub nowszej zainstalowanej i skonfigurowanej. Uruchom az --version, aby znaleźć wersję. Jeśli musisz zainstalować lub uaktualnić, zobacz Install Azure CLI.
  • Aby wdrożyć szablon usługi ARM, musisz mieć dostęp do zapisu na wdrażanych zasobach i dostęp do wszystkich operacji na typie zasobu Microsoft.Resources/deployments. Na przykład w celu wdrożenia maszyny wirtualnej potrzebne są uprawnienia Microsoft.Compute/virtualMachines/write i Microsoft.Resources/deployments/*. Aby uzyskać listę ról i uprawnień, zobacz wbudowane role Azure.
  • Zapoznaj się z następującymi wymaganiami dla każdego parametru:
    • osType: typ systemu operacyjnego. Wartość domyślna to Linux.
    • osSKU: określa jednostkę SKU systemu operacyjnego używaną przez pulę agentów.
    • count: liczba agentów (maszyn wirtualnych) do hostowania kontenerów platformy Docker. Dozwolone wartości muszą należeć do zakresu od 0 do 1000 (włącznie) dla pul użytkowników i w zakresie od 1 do 1000 (włącznie) dla pul systemowych. Wartość domyślna to 1.
  • Po wdrożeniu klastra przy użyciu szablonu usługi ARM można użyć Azure CLI lub Azure PowerShell, aby nawiązać połączenie z klastrem i wdrożyć przykładową aplikację.

Ograniczenia

Podczas tworzenia klastrów usługi AKS, które obsługują wiele pul węzłów, obowiązują następujące ograniczenia:

  • Możesz usunąć pulę węzłów systemowych, jeśli masz inną pulę węzłów systemowych, która ma zostać utworzona w klastrze usługi AKS. W przeciwnym razie nie można usunąć puli węzłów systemowych.
  • Pule systemu muszą zawierać co najmniej dwa węzły, a pule węzłów użytkownika mogą zawierać zero lub więcej węzłów.
  • Jeśli tworzysz klaster z jednowęzłową pulą, typ systemu operacyjnego musi być Linux. Jednostka SKU systemu operacyjnego może być dowolną odmianą systemu Linux, taką jak Ubuntu, AzureContainerLinuxlub AzureLinux. Nie można utworzyć klastra z pojedynczą pulą węzłów Windows. Jeśli chcesz uruchomić kontenery Windows, musisz dodać pulę węzłów Windows do klastra po utworzeniu jej za pomocą puli węzłów systemu Linux.
  • Klaster AKS musi używać modułu równoważenia obciążenia Standard SKU, aby korzystać z wielu pul węzłów. Ta funkcja nie jest obsługiwana w przypadku modułów równoważenia obciążenia jednostek SKU w warstwie Podstawowa.
  • Klaster AKS musi używać Virtual Machine Scale Sets (zestawów skalowania maszyn wirtualnych) dla węzłów.
  • Nazwa puli węzłów może zawierać tylko małe litery alfanumeryczne i musi zaczynać się od małej litery.
    • W przypadku pul węzłów systemu Linux długość musi zawierać się od 1 do 12 znaków.
    • W przypadku puli węzłów Windows długość musi wynosić od 1 do 6 znaków.
  • Wszystkie pule węzłów muszą znajdować się w tej samej sieci wirtualnej.
  • Nie można zmienić rozmiaru VM w puli węzłów po jej utworzeniu.
  • Podczas tworzenia wielu pul węzłów w czasie tworzenia klastra wersje platformy Kubernetes dla pul węzłów muszą być zgodne z wersją ustawioną dla płaszczyzny sterowania. Aktualizacje można wprowadzać po przygotowaniu klastra, korzystając z operacji w ramach puli węzłów.

Ważne

Jeśli używasz Azure Container Linux (ACL) w usłudze AKS, zapoznaj się z następującymi zagadnieniami i ograniczeniami:

Tworzenie wyspecjalizowanych pul węzłów

Aby dowiedzieć się, jak tworzyć wyspecjalizowane pule węzłów, zobacz następujące artykuły:

Ustawianie zmiennych środowiskowych

Ustaw następujące zmienne środowiskowe we wierszu poleceń, aby ułatwić użycie poleceń w tym artykule. Możesz zmienić wartości na preferowane nazwy.

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

Tworzenie grupy zasobów

Utwórz grupę zasobów Azure przy użyciu polecenia az group create.

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

Tworzenie klastra usługi AKS z jedną pulą węzłów przy użyciu Azure CLI

Jeśli chcesz mieć tylko jedną pulę węzłów w klastrze AKS, możesz zaplanować zasobniki aplikacji w pulach węzłów systemowych. Jeśli uruchamiasz systemową pulę węzłów dla klastra usługi AKS w środowisku produkcyjnym, zalecamy użycie co najmniej trzech węzłów w tej puli. Jeśli jeden węzeł ulegnie awarii, nadmiarowość zostanie naruszona. To ryzyko można ograniczyć, mając więcej węzłów systemowych.

  1. Utwórz klaster z jedną pulą węzłów Ubuntu przy użyciu polecenia az aks create. Ten krok określa dwa węzły w pojedynczej puli węzłów.

    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
    

    Utworzenie klastra trwa kilka minut.

  2. Gdy klaster jest gotowy, przy użyciu polecenia az aks get-credentials pobierz poświadczenia klastra.

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

Dodawanie drugiej puli węzłów przy użyciu Azure CLI

Klaster utworzony w poprzedniej sekcji ma jedną pulę węzłów. W tej sekcji dodamy drugą pulę węzłów do klastra. Ta druga pula węzłów może mieć typ systemu operacyjnego Linux z systemem operacyjnym SKU Ubuntu lub AzureLinux, lub typ systemu operacyjnego Windows.

Uwaga / Notatka

Jeśli chcesz dodać pulę węzłów korzystającą z efemerycznych dysków systemu operacyjnego do klastra AKS, możesz ustawić wartość flagi --node-osdisk-type na Ephemeral podczas uruchamiania polecenia az aks nodepool add.

Dzięki efemerycznemu systemowi operacyjnemu można wdrażać maszyny wirtualne i obrazy wystąpień do rozmiaru pamięci podręcznej maszyny wirtualnej. Domyślna konfiguracja dysku systemu operacyjnego węzła w usłudze AKS używa 128 GB, co oznacza, że potrzebny jest rozmiar maszyny wirtualnej z pamięcią podręczną większą niż 128 GB. Wartość domyślna Standard_DS2_v2 ma rozmiar pamięci podręcznej o rozmiarze 86 GB, który nie jest wystarczająco duży. Jednostka Standard_DS3_v2 SKU maszyny wirtualnej ma rozmiar pamięci podręcznej 172 GB, co jest wystarczająco duże. Możesz również zmniejszyć domyślny rozmiar dysku systemu operacyjnego przy użyciu polecenia --node-osdisk-size, ale pamiętaj, że minimalny rozmiar obrazów usługi AKS wynosi 30 GB.

Jeśli chcesz utworzyć pule węzłów z dyskami systemu operacyjnego dołączonymi do sieci, możesz ustawić flagę na --node-osdisk-type podczas wykonywania polecenia Managed.

Dodaj pulę węzłów systemu Linux

Utwórz nową pulę węzłów przy użyciu az aks nodepool add polecenia . Poniższy przykład tworzy pulę Linux węzłów z Ubuntu SKU systemu operacyjnego, uruchamiającą trzy węzły. Jeśli nie określisz jednostki SKU systemu operacyjnego, wartość domyślna usługi AKS to 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

Utworzenie puli węzłów trwa kilka minut.

Dodaj pulę węzłów Windows Server

Tworzenie puli węzłów Windows Server 2025

Utwórz nową pulę węzłów przy użyciu az aks nodepool add polecenia . Poniższy przykład tworzy pulę Windows węzłów z Windows2025 SKU systemu operacyjnego, uruchamiającą trzy węzły.

Aby uzyskać więcej informacji na temat systemu operacyjnego Windows, zobacz Windows najlepsze praktyki.

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

Sprawdź stan pul węzłów

Sprawdź stan pul węzłów przy użyciu az aks nodepool list polecenia i określ nazwę grupy zasobów i klastra.

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

Tworzenie klastra AKS z jedną pulą węzłów przy użyciu szablonu ARM

Jeśli chcesz mieć tylko jedną pulę węzłów w klastrze AKS, możesz zaplanować zasobniki aplikacji w pulach węzłów systemowych. Jeśli uruchamiasz systemową pulę węzłów dla klastra usługi AKS w środowisku produkcyjnym, zalecamy użycie co najmniej trzech węzłów w tej puli. Jeśli jeden węzeł ulegnie awarii, nadmiarowość zostanie naruszona. To ryzyko można ograniczyć, mając więcej węzłów systemowych.

Tworzenie zasobu Microsoft.ContainerService/managedClusters

Utwórz zasób Microsoft.ContainerService/managedClusters, dodając this JSON do szablonu.

  • Utwórz jedną pulę węzłów systemu Ubuntu w klastrze usługi AKS, wprowadzając następujące modyfikacje szablonu usługi ARM:

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

Dodaj drugą pulę węzłów przy użyciu szablonu ARM

Klaster utworzony w poprzedniej sekcji ma jedną pulę węzłów. W tej sekcji dodamy drugą pulę węzłów do klastra. Ta druga pula węzłów może mieć typ systemu operacyjnego Linux z systemem operacyjnym SKU Ubuntu lub AzureLinux, lub typ systemu operacyjnego Windows.

Dodawanie pul węzłów systemu Linux

  • Utwórz wiele pul węzłów systemu Ubuntu w klastrze usługi AKS, wprowadzając następujące modyfikacje szablonu usługi ARM:

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

Dodawanie pul węzłów Windows Server

Tworzenie pul węzłów Windows Server 2025
  • Utwórz wiele pul węzłów Windows w klastrze usługi AKS, wprowadzając następujące modyfikacje szablonu usługi ARM:

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

Wdróż swój szablon ARM

Ustawianie parametrów, etykiet lub tagów dla puli węzłów

Podczas tworzenia puli węzłów można do niej dodawać znaki, etykiety lub tagi. Po dodaniu skażenia, etykiety lub tagu wszystkie węzły w tej puli węzłów również uzyskają to skażenie, etykietę lub tag. Zalecamy zastosowanie tych właściwości do całej puli węzłów zamiast poszczególnych węzłów. Dzięki temu można łatwo zarządzać właściwościami wszystkich węzłów w puli węzłów, aktualizując właściwości puli węzłów zamiast aktualizować poszczególne węzły osobno.

Aby uzyskać szczegółowe instrukcje dotyczące ustawiania taint, etykiet lub tagów dla puli węzłów, należy skorzystać z następujących zasobów:

Dalsze kroki

W tym artykule dowiesz się, jak utworzyć klaster AKS z jedną pulą węzłów i jak dodawać dodatkowe pule węzłów do swojego klastra. Aby dowiedzieć się więcej na temat zarządzania pulami węzłów, zobacz następujące artykuły: