次の方法で共有


Azure Kubernetes Service (AKS) でのノード プールのスケーリング

アプリケーション ワークロードの需要が変化するにつれて、Azure Kubernetes Service (AKS) のノード プール内のノード数のスケーリングが必要になる場合があります。 この記事では、AKS でノード プールを手動で自動的にスケーリングする方法について説明します。

AKS ノード プールのスケーリングの前提条件

  • 少なくとも 1 つのノード プールを持つ既存の AKS クラスター。 作成する必要がある場合は、「 ノード プールを使用した AKS クラスターの作成」を参照してください。
  • Azure CLI バージョン 2.2.0 以降がインストールされて構成されている必要があります。 バージョンを確認するには、az --version を実行します。 インストールまたはアップグレードが必要な場合は、Azure CLI のインストールを参照してください。

ノード プールの手動でのスケーリング

  1. [az aks nodepool scale][az-aks-nodepool-scale] コマンドを使用して、ノード プール内のノード数をスケーリングします。 --node-count フラグは、ノード プール内のノードの必要な数を指定します。 この例では、ノード プールは 5 つのノードにスケーリングされます。

    az aks nodepool scale \
        --resource-group <resource-group-name> \
        --cluster-name <cluster-name> \
        --name <node-pool-name> \
        --node-count 5 \
        --no-wait
    
  2. [az aks nodepool list][az-aks-nodepool-list] コマンドを使用して、ノード プールの状態を確認します。

    az aks nodepool list --resource-group <resource-group-name> --cluster-name <cluster-name>
    

    次の出力例は、ノード プールが スケーリング 状態にあり、新しい数が 5 ノードであることを示しています。

    [
      {
        ...
        "count": 5,
        ...
        "name": "<node-pool-name>",
        "orchestratorVersion": "1.15.7",
        ...
        "provisioningState": "Scaling",
        ...
        "vmSize": "Standard_DS2_v2",
        ...
      },
      {
        ...
        "count": 2,
        ...
        "name": "<node-pool-name-2>",
        "orchestratorVersion": "1.15.7",
        ...
        "provisioningState": "Succeeded",
        ...
        "vmSize": "Standard_DS2_v2",
        ...
      }
    ]
    

    スケーリングの操作の完了には、数分かかります。 スケール操作が完了すると、ノード プールの provisioningState[成功] に変わります。

クラスター オートスケーラーを使用してノード プールを自動的にスケーリングする

クラスター オートスケーラー は複数のノード プールで使用でき、個々のノード プールで有効にして、一意の自動スケール ルールをそれらに渡すことができます。

  • az aks nodepool update フラグを指定して [--update-cluster-autoscaler][az-aks-nodepool-update] コマンドを使用して、既存のノード プールでクラスター オートスケーラーを有効にします。 --min-countフラグと--max-count フラグは、ノード プール内のノードの最小数と最大数を指定します。 この例では、クラスター オートスケーラーは、1 つのノードの最小カウントと 5 つのノードの最大カウントで有効になっています。

    az aks nodepool update \
      --resource-group <resource-group-name> \
      --cluster-name <cluster-name> \
      --name <node-pool-name> \
      --update-cluster-autoscaler \
      --min-count 1 \
      --max-count 5
    

ノード プールでクラスター オートスケーラーを無効にする場合は、az aks nodepool updateではなく、--disable-cluster-autoscaler フラグを指定して [--update-cluster-autoscaler][az-aks-nodepool-update] コマンドを使用します。

次の手順: AKS でノード プールを管理する

AKS でのノード プールの管理の詳細については、「 Azure Kubernetes Service (AKS) でのノード プールの管理」を参照してください。