クラスタに割り当てられたリソースが需要の高さによりアプリケーション ポッドのスケジューリングに不十分な場合は、ACK One 登録済みクラスターで自動スケーリング機能を有効にして、ノードを自動的にスケールアウトし、スケジューリングに使用可能なリソースを増やします。2 つの弾力性ソリューションを使用できます。ノード自動スケーリングとノードインスタントスケーリングです。ノード自動スケーリングは、自動スケーリングが有効になっているノードプールが 20 未満のクラスターや、100 ノード未満を含むノードプールなど、小規模な操作に適しています。ノードインスタントスケーリングは、より高速なスケーリング、より高い配信効率、およびより低い運用複雑さを提供します。そのため、大規模なクラスターや遅延の影響を受けやすいワークロードに最適です。
前提条件
ノードスケーリングの原則と機能について理解しました。
ノードの自動スケーリングを有効にする
手順 1: ノードの自動スケーリング をクラスターに対して有効にする
ACK コンソール にログオンします。左側のナビゲーションウィンドウで、[クラスタ] をクリックします。
[クラスター] ページで、管理するクラスターを見つけ、その名前をクリックします。左側のナビゲーションウィンドウで、 を選択します。
ノードプール ページで、有効にするノードスケーリング の横にある をクリックします。

(オプション) 自動スケーリング機能を初めて使用する場合は、画面の指示に従ってサービスをアクティブ化し、権限付与プロセスを完了します。それ以外の場合は、このステップをスキップします。
[ノードスケーリング設定] パネルで、[ノードスケーリング方法] を [auto Scaling] に設定し、スケーリングパラメーターを構成して、[OK] をクリックします。
[ノードスケーリング構成] は、インスタントスケーリング に切り替えて、表示される構成ワークフローを完了することで変更できます。
パラメーター
説明
[ノードプール スケールアウト ポリシー]
[ランダム ポリシー]: 複数のスケーラブルなノードプールが存在する場合、ノードプールをランダムにスケールアウトします。
デフォルトポリシー: 複数のスケーラブルなノードプールが存在する場合、リソースの浪費が最も少ないノードプールをスケールアウトします。
[優先順位ベースのポリシー]: 複数のスケーラブルなノードプールが存在する場合、スケールアウトの優先順位に基づいてノードプールをスケールアウトします。
ノードプールのスケールアウトの優先度は、[ノードプール スケールアウト優先度] パラメーターで定義されます。
ノードプール スケールアウト優先度
スケールアウト操作中にスケーリングの次数を指定します。[ノードプールスケールアウトポリシー] が [優先順位ベースのポリシー] に設定されている場合にのみ有効です。
有効な値: 1 から 100 までの整数。数値が大きいほど優先度が高くなります。
設定手順:
a. パラメーターの横にある [+ 追加] をクリックします。
b. 自動スケーリングが有効になっているノードプールを選択します。
c. 優先度の値を設定します。
自動スケーリングが有効になっているノードプールがない場合は、このパラメーターを今はスキップし、手順 2:自動スケーリングが有効なノードプールを構成するを完了した後に構成します。
[スキャン間隔]
クラスタのスケーリングを評価する間隔を指定します。デフォルト値:60 秒。
オートスケーラーは、実際のスケジューリング ステータスに基づいてスケールアウト アクティビティをトリガーします。
重要Elastic Compute Service (ECS) ノード: オートスケーラーは、[スケールインしきい値]、[スケールインの延期時間]、および [クールダウン] の条件がすべて満たされた場合にのみ、スケールインアクティビティを実行します。
GPU アクセラレーション ノード: オートスケーラーは、[GPU スケールインしきい値]、[スケールインの延期時間:]、および [クールダウン] の条件がすべて満たされた場合にのみ、スケールイン アクティビティを実行します。
[スケールインを許可]
スケールインアクティビティを許可するかどうかを指定します。このスイッチがオフになっていると、スケールイン構成は有効になりません。注意して進めてください。
[スケールインしきい値]
ノードの自動スケーリングが有効になっているノードプールにおいて、ノードのリソースリクエストとノードのリソース容量の比率を指定します。
A scale-in activity is performed only when the CPU and memory utilization of a node is lower than the [スケールインしきい値]. スケールインアクティビティは、ノードの CPU とメモリの使用率が [スケールインしきい値] より低い場合にのみ実行されます。
[GPU スケールインしきい値]
GPU アクセラレーション ノードのスケールインしきい値。
A scale-in activity is performed only when the CPU、メモリ、および GPU 使用率が、[スケールインしきい値] より低い場合にのみ、スケールインアクティビティが実行されます。
[スケールインの延期]
スケールインのしきい値に達した時刻と、スケールインのアクティビティ(ポッド数の削減)が開始される時刻の間隔です。単位:分。デフォルト値:10。
重要autoscaler は、[スケールインしきい値] が設定され、[スケールインの延期] 条件が満たされた場合にのみ、スケールインアクティビティを実行します。
クールダウン
オートスケーラーがスケールアウト アクティビティを実行した後、スケールイン アクティビティを実行する前にクールダウン期間に入ります。
オートスケーラーはクールダウン期間中はスケールインアクティビティを実行できませんが、ノードがスケールイン条件を満たしているかどうかを確認できます。クールダウン期間が終了し、[Defer Scale-in For] パラメーターで指定された待機期間が終了すると、条件を満たすノードが削除されます。たとえば、[Cooldown] パラメーターが 10 分に設定され、[Defer Scale-in For] が 5 分に設定されているとします。オートスケーラーはクールダウン期間中はスケールインアクティビティを実行できませんが、ノードがスケールイン条件を満たしているかどうかを確認できます。条件を満たすノードは、クールダウン期間の終了後 5 分で削除されます。
ステップ 2: 自動スケーリングが有効なノードプールを構成する
既存のノードプールを [スケーリングモード] を [自動] に切り替えることで変更するか、または自動スケーリングが有効になっている 新しいノードプールを作成する ことができます。主な構成は次のとおりです。
パラメーター | 説明 |
[スケーリングモード] | [手動] および [自動] スケーリングがサポートされています。コンピューティング リソースは、ビジネス要件とポリシーに基づいて自動的に調整され、クラスタ コストを削減します。
|
インスタンス | [最小インスタンス数] と [最大インスタンス数] は、ノードプールに対して定義されており、既存のインスタンスは含まれません。 説明
|
インスタンス関連のパラメーター | インスタンスタイプまたは属性に基づいて、ワーカーノードプールで使用される ECS インスタンスを選択します。インスタンスファミリーは、vCPU、メモリ、インスタンスファミリー、アーキテクチャなどの属性でフィルタリングできます。ノードを構成する方法の詳細については、「ACK クラスタの ECS 仕様推奨事項」をご参照ください。 ノードプールがスケールアウトされると、選択したインスタンスタイプの ECS インスタンスが作成されます。ノードプールのスケーリングポリシーは、スケールアウトアクティビティ中に新しいノードの作成に使用するインスタンスタイプを決定します。ノードプールスケールアウト操作の成功率を向上させるには、複数のインスタンスタイプを選択します。 ノードプール内のノードのインスタンスタイプ。 1 つだけ選択すると、ECS インスタンスの在庫の変動がスケーリングの成功率に影響します。 スケーリングの成功率を高めるために、複数のインスタンスタイプを選択することをお勧めします。 GPU インスタンスのみを選択した場合、必要に応じて [GPU 共有を有効にする] を選択できます。詳細については、「cGPU の概要」をご参照ください。 |
オペレーティング システム | 自動スケーリングを有効にすると、Alibaba Cloud Linux、Windows、または Windows Core に基づいてイメージを選択できます。 Windows または Windows Core に基づくイメージを選択すると、システムはノードプール内のノードに |
[ノードラベル] | ノードラベルは、スケールアウトアクティビティによってクラスターに追加されたノードに自動的に追加されます。 重要 Auto scaling は、ノードラベルとテイントがノードプールタグにマップされた後にのみ、ノードラベルとテイントを認識できます。ノードプールが持つことができるタグの数は限られています。そのため、Auto scaling が有効になっているノードプールの ECS タグ、テイント、およびノードラベルの合計数を 12 未満に制限する必要があります。 |
スケーリングポリシー |
|
[プリエンプティブル インスタンスが不足している場合は従量課金制インスタンスを使用する] | [課金方法] パラメーターを [プリエンプティブルインスタンス] に設定する必要があります。 この機能が有効になっている場合、価格または在庫の制約によりプリエンプティブル インスタンスを十分に作成できないと、ACK は従量課金インスタンスを自動的に作成して、必要な数の ECS インスタンスを満たします。 |
[補足的なプリエンプティブル インスタンスを有効にする] | [課金方法] パラメーターを [プリエンプティブルインスタンス] に設定する必要があります。 この機能が有効になっている場合、システムがプリエンプティブルインスタンスが回収されたというメッセージを受信すると、自動スケーリングが有効になっているノードプールは、回収されたプリエンプティブルインスタンスを置き換える新しいインスタンスの作成を試みます。 |
[スケーリングモード] | [ノードスケーリング] を [ノードプール] ページで有効にし、ノードプールの [スケーリングモード] を [自動] に設定する必要があります。
|
テイント | ノードに汚染を追加すると、ACK はポッドをスケジュールしなくなります。 |
ステップ 3: (オプション) ノードの自動スケーリングを確認する
上記の設定が完了すると、ノードの自動スケーリング 機能を使用できます。ノードプールには、自動スケーリングが有効になっており、cluster-autoscaler がクラスターにインストールされていることが表示されます。
ノードプールに対して自動スケーリングが有効になっています
[ノード プール] ページには、自動スケーリングが有効になっているノード プールが表示されます。

cluster-autoscaler がインストールされています
詳細ページの左側のナビゲーションウィンドウで、 を選択します。
kube-system 名前空間を選択します。 cluster-autoscaler コンポーネントが表示されます。

ノードのインスタント伸縮を有効にする
手順 1: [ノードのインスタントスケーリング] 機能を有効にする
ACK コンソール にログオンします。左側のナビゲーションウィンドウで、[クラスタ] をクリックします。
[クラスター] ページで、管理するクラスターを見つけて、その名前をクリックします。左側のナビゲーション ウィンドウで、 を選択します。
ノードプール ページで、有効にするノードスケーリング の横にある をクリックします。

(オプション) インスタント伸縮性機能を初めて使用する場合は、プロンプトに従って ESS サービスをアクティブ化し、権限付与を完了してください。それ以外の場合は、このステップをスキップしてください。
[ノードスケーリング設定] パネルで、[ノードスケーリング方法] を [自動スケーリング] に設定し、スケーリング パラメーターを構成してから、[OK] をクリックします。
スケールアウト アクティビティは、実際のスケジューリング ステータスに基づいて自動的にトリガーされます。スケールイン条件のみを設定する必要があります。
パラメーター
説明
[スケールインしきい値]
ノードのインスタントスケーリングが有効になっているノードプールにおいて、ノードのリソースリクエストとノードのリソース容量の比率を指定します。
A scale-in activity is performed only when the combined total of CPU and memory utilization of a node is lower than the [スケールインしきい値] です。
[GPU スケールインしきい値]
GPU アクセラレーション ノードのスケールインしきい値。
A scale-in アクティビティは、ノードの CPU、メモリ、および GPU 使用率の合計が [スケールインしきい値] より低い場合にのみ実行されます。
[スケールインの延期]
スケールインのしきい値に達した時刻と、スケールインアクティビティ(ポッド数の削減)が開始される時刻の間隔です。単位:分。デフォルト値:10。
重要オートスケーラーは、[スケールインしきい値] が設定され、[スケールインの延期時間] 条件が満たされた場合にのみ、スケールインアクティビティを実行します。
ステップ 2:自動スケーリングが有効なノードプールを構成する
既存のノードプールを [スケーリングモード] を [自動] に切り替えることで変更するか、または自動スケーリングが有効になっている 新しいノードプールを作成する ことができます。主な構成は次のとおりです。
パラメーター | 説明 |
[スケーリングモード] | [手動] および [自動] スケーリングがサポートされています。コンピューティング リソースは、ビジネス要件とポリシーに基づいて自動的に調整され、クラスタ コストを削減します。
|
インスタンス | [最小インスタンス数] と [最大インスタンス数] は、ノードプールに対して定義されており、既存のインスタンスは含まれません。 説明
|
インスタンス関連のパラメーター | インスタンスタイプまたは属性に基づいて、ワーカーノードプールで使用される ECS インスタンスを選択します。インスタンスファミリは、vCPU、メモリ、インスタンスファミリ、アーキテクチャなどの属性でフィルタリングできます。ノードを構成する方法の詳細については、「ACK クラスタの ECS 仕様に関する推奨事項」をご参照ください。 ノードプールがスケールアウトされると、選択したインスタンスタイプの ECS インスタンスが作成されます。ノードプールのスケーリングポリシーは、スケールアウト時に新しいノードの作成に使用するインスタンスタイプを決定します。ノードプールスケールアウト操作の成功率を向上させるには、複数のインスタンスタイプを選択します。 ノードプール内のノードのインスタンスタイプ。 1 つだけ選択すると、ECS インスタンスの在庫の変動がスケーリングの成功率に影響します。 スケーリングの成功率を高めるために、複数のインスタンスタイプを選択することをお勧めします。 GPU インスタンスのみを選択した場合、必要に応じて [GPU 共有を有効にする] を選択できます。詳細については、「cGPU の概要」をご参照ください。 |
オペレーティング システム | 自動スケーリングを有効にすると、Alibaba Cloud Linux、Windows、または Windows Core に基づいてイメージを選択できます。 Windows または Windows Core に基づくイメージを選択すると、システムによって |
[ノードラベル] | ノードラベルは、スケールアウトアクティビティによってクラスターに追加されたノードに自動的に追加されます。 重要 自動スケーリングは、ノードラベルとテイントがノードプールタグにマッピングされた後にのみ、ノードラベルとテイントを認識できます。 1 つのノードプールが持つことができるタグの数は限られています。そのため、自動スケーリングが有効になっているノードプールの ECS タグ、テイント、およびノードラベルの合計数を 12 未満に制限する必要があります。 |
スケーリングポリシー |
|
[プリエンプティブル インスタンスが不足している場合の従量課金制インスタンスの使用] | Billing Method パラメーターを Preemptible Instance に設定する必要があります。 この機能が有効になっている場合、価格または在庫の制約によりプリエンプティブル インスタンスを十分に作成できないと、ACK は従量課金インスタンスを自動的に作成して、必要な数の ECS インスタンスを満たします。 |
[補足的なプリエンプティブル インスタンスを有効にする] | [課金方法] パラメーターを [プリエンプティブルインスタンス] に設定する必要があります。 この機能が有効になっている場合、システムがプリエンプティブル インスタンスが回収されたというメッセージを受信すると、自動スケーリングが有効になっているノードプールは、回収されたプリエンプティブル インスタンスを置き換える新しいインスタンスの作成を試みます。 |
スケーリングモード | [ノードスケーリング] を [ノードプール] ページで有効にし、ノードプールの [スケーリングモード] を [自動] に設定する必要があります。
|
テイント | ノードに汚染を追加すると、ACK はポッドをスケジュールしなくなります。 |
ステップ 3: (オプション) ノードのインスタントスケーリングを検証する
ノードインスタントスケーリング 機能は、上記の構成が完了すると使用できます。ノードプールには、Auto Scaling が有効になっており、ノード Auto Scaling がクラスターにインストールされていることが表示されます。
ノードプールに対して自動スケーリングが有効になっています
[ノードプール] ページには、ノードプールに対して自動スケーリングが有効になっていることが表示されます。
ノード即時スケーリングコンポーネントがインストールされています
[クラスター] ページで、管理するクラスターを見つけて、その名前をクリックします。左側のナビゲーションウィンドウで、 を選択します。
アドオン ページで、ACK GOATScaler コンポーネントに [インストール済み] と表示されます。