Ridimensionare manualmente il numero di nodi in un cluster del servizio Azure Kubernetes (AKS)

Eventuali cambiamenti delle esigenze delle risorse delle applicazioni potrebbero influire sulle prestazioni del cluster a causa della bassa capacità a livello di CPU, memoria, spazio PID o dimensioni del disco. Per gestire queste modifiche, è possibile ridimensionare manualmente il cluster del servizio Azure Kubernetes in modo che esegua un numero diverso di nodi. In caso di riduzione, i nodi verranno accuratamente contrassegnati come non pianificabili e svuotati per ridurre al minimo le interruzioni nelle applicazioni in esecuzione. Quando si aumentano le prestazioni, il servizio Azure Kubernetes attende fino a quando i nodi non vengono contrassegnati come Pronto dal cluster Kubernetes prima che i pod vengano pianificati.

Questo articolo descrive come aumentare o ridurre manualmente il numero di nodi in un cluster del servizio Azure Kubernetes.

Operazioni preliminari

  • Esaminare le quote e i limiti del servizio Azure Kubernetes per verificare che il cluster possa essere ridimensionato al numero di nodi desiderato.

  • Il nome di un pool di nodi può contenere solo caratteri alfanumerici minuscoli e deve iniziare con una lettera minuscola.

    • Per i pool di nodi Linux, la lunghezza deve essere compresa tra 1 e 11 caratteri.
    • Per i pool di nodi Windows, la lunghezza deve essere compresa tra 1 e 6 caratteri.

Ridimensionare i nodi del cluster

Importante

La rimozione di nodi da un pool di nodi tramite il comando kubectl non è supportata. In questo modo è possibile creare problemi di ridimensionamento con il cluster del servizio Azure Kubernetes.

  1. Ottenere il nome del pool di nodi usando il comando az aks show. L'esempio seguente ottiene il nome del pool del nodo per il cluster denominato myAKSCluster nel gruppo di risorse denominato myResourceGroup:

    az aks show --resource-group myResourceGroup --name myAKSCluster --query agentPoolProfiles
    

    L'output di esempio seguente illustra che il nome è nodepool1:

    [
      {
        "count": 1,
        "maxPods": 110,
        "name": "nodepool1",
        "osDiskSizeGb": 30,
        "osType": "Linux",
        "vmSize": "Standard_DS2_v2"
      }
    ]
    
  2. Ridimensionare i nodi del cluster usando il comando az aks scale. L'esempio seguente ridimensiona un cluster denominato myAKSCluster passando a un singolo nodo. Specificare il proprio --nodepool-name dal comando precedente, ad esempio nodepool1:

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

    L'output di esempio seguente mostra che il cluster è stato ridimensionato a un nodo, come illustrato nella sezione agentPoolProfiles:

    {
      "aadProfile": null,
      "addonProfiles": null,
      "agentPoolProfiles": [
        {
          "count": 1,
          "maxPods": 110,
          "name": "nodepool1",
          "osDiskSizeGb": 30,
          "osType": "Linux",
          "vmSize": "Standard_DS2_v2",
          "vnetSubnetId": null
        }
      ],
      [...]
    }
    

Ridimensionare User i pool di nodi a 0

A differenza dei pool di nodi System che richiedono sempre nodi in esecuzione, i pool di nodi User possono essere ridimensionati a 0. Per altre informazioni sulle differenze tra pool di nodi di sistema e utente, vedere Pool di nodi di sistema e utente.

  • Per ridimensionare un pool di utenti su 0, è possibile usare il comando az aks nodepool scale in alternativa al comando precedente az aks scale e impostare 0 come conteggio dei nodi.

    az aks nodepool scale --name <your node pool name> --cluster-name myAKSCluster --resource-group myResourceGroup  --node-count 0 
    
  • È anche possibile ridimensionare automaticamente i pool di nodi User su zero nodi impostando il parametro --min-count di Scalabilità automatica cluster su 0.

Passaggi successivi

In questo articolo è stato ridimensionato manualmente un cluster del servizio Azure Kubernetes per aumentare o ridurre il numero di nodi. È anche possibile usare il ridimensionamento automatico del cluster per ridimensionare automaticamente il cluster.