在 Azure Kubernetes Service (AKS) 叢集中手動調整節點計數

如果應用程式的資源需求有所變更,叢集效能可能會因為 CPU、記憶體、PID 空間或磁碟大小容量不足而受到影響。 若要解決這些變更,您可以手動調整 AKS 叢集,以執行不同數目的節點。 當您相應縮減時,系統會謹慎地對節點執行封鎖排程和清空作業,以盡量降低對執行中應用程式的干擾。 當您相應放大時,AKS 會等到 Kubernetes 叢集將節點標示為就緒後,才會在這些節點上排程 Pod。

本文說明如何手動增加或減少 AKS 叢集中的節點數目。

Note

本文適用於AKS標準叢集。 AKS 自動叢集使用 節點自動配置 來管理節點擴展。

開始之前

  • 檢閱 AKS 服務配額和限制,以驗證您的叢集可以調整為所需的節點數目。

  • 如果節點池啟用了叢集自動縮放器,你就無法手動更改節點數。 你可以在手動調整節點池規模之前,先更新叢集自動調整程式的最小值和最大值,或停用節點池上的叢集自動調整程式。

  • Azure Linux 2.0 支援於 2025 年 11 月 30 日結束。 自 2026 年 3 月 31 日起,Azure Linux 2.0 節點映像檔被移除,受影響的節點池無法再擴展。 在擴展 Azure Linux 2.0 節點池之前,先遷移到 Azure Linux 3。

  • 節點池名稱必須符合以下要求:

    節點集區類型 名稱要求
    Linux 1 到 12 個小寫英數字元。 必須以小寫字母開頭。
    Windows 作業系統 介於 1 到 6 個小寫字母數字之間。 必須以小寫字母開頭。

調整 AKS 叢集節點數目

重要

不支援使用 kubectl 指令從節點集區移除節點。 此操作可能會造成 AKS 叢集的擴展性問題。

  1. 使用 az aks show 指令取得節點池的名稱、模式和節點數量。 以下範例取得 myResourceGroup 資源群組中名為 myAKSCluster 叢集的節點池詳細資料:

    az aks show --resource-group myResourceGroup --name myAKSCluster --query "agentPoolProfiles[].{Name:name,Mode:mode,Count:count}" --output table
    

    以下範例輸出顯示 nodepool1 是一個包含三個節點的系統節點池:

    Name       Mode    Count
    ---------  ------  -------
    nodepool1  System  3
    
  2. 透過指令 az aks scale 擴展叢集節點。 以下範例將名為 myAKSCluster 的叢集中的 nodepool1 縮放為兩個節點:

    az aks scale --resource-group myResourceGroup --name myAKSCluster --node-count 2 --nodepool-name nodepool1 --query "agentPoolProfiles[?name=='nodepool1'].{Name:name,Mode:mode,Count:count}" --output table
    

    以下範例輸出展示了系統節點池成功擴展至兩個節點:

    Name       Mode    Count
    ---------  ------  -------
    nodepool1  System  2
    

    系統節點池必須至少有兩個節點。 對於生產叢集,系統節點池中至少使用三個節點。 如需詳細資訊,請參閱 系統和用戶節點集區。

將使用者節點池縮放至 0

與總是需要運行節點的系統節點池不同,使用者節點池可以擴展到 0。 欲了解更多系統與使用者節點池的差異,請參閱 系統與使用者節點池。

重要

要將使用者節點池縮放到 0 節點,請停用叢集自動調整器。 如需詳細資訊,請參閱在節點集區上停用叢集自動調整程式。

要將使用者節點池縮放到 0,請使用 az aks nodepool scale 取代 az aks scale 一般節點縮放的指令,並將 設 --node-count 為 0。

az aks nodepool scale --name <your node pool name> --cluster-name myAKSCluster --resource-group myResourceGroup  --node-count 0

你可以允許但不強制已啟用自動縮放的使用者節點集區自動調整為零個節點,方法是將 --min-count 的 參數設為 0。

下一步

在本文中,您會手動調整 AKS 叢集,以增加或減少節點數目。 您也可以使用叢集自動調整程式,以自動調整叢集。