アプリケーション ワークロードの需要が変化するにつれて、Azure Kubernetes Service (AKS) のノード プール内のノード数のスケーリングが必要になる場合があります。 この記事では、AKS でノード プールを手動で自動的にスケーリングする方法について説明します。
AKS ノード プールのスケーリングの前提条件
- 少なくとも 1 つのノード プールを持つ既存の AKS クラスター。 作成する必要がある場合は、「 ノード プールを使用した AKS クラスターの作成」を参照してください。
- Azure CLI バージョン 2.2.0 以降がインストールされて構成されている必要があります。 バージョンを確認するには、
az --versionを実行します。 インストールまたはアップグレードが必要な場合は、Azure CLI のインストールを参照してください。
ノード プールの手動でのスケーリング
[
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[
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) でのノード プールの管理」を参照してください。