すべてのプロダクト
Search
ドキュメントセンター

Elastic High Performance Computing:Auto Scaling の構成

最終更新日:May 31, 2025

Elastic High Performance Computing (E-HPC) クラスタの自動スケーリングを設定して、手動操作なしで計算ノードを動的に割り当てることができます。 システムは、リアルタイムのワークロードに基づいて計算ノードを自動的に追加または削除し、クラスタの可用性を向上させ、コストを節約できます。 このトピックでは、自動スケーリングの設定方法について説明します。

メリット

  • クラスタのリアルタイム ワークロードに基づいて計算ノードを追加し、クラスタの可用性を向上させます。

  • クラスタの可用性を損なうことなく、計算ノードの数を減らしてコストを節約します。

  • 障害のあるノードを停止し、ノードを作成してフォールト トレランスを向上させます。

制限事項

  • Auto Scaling は、すべてのノードのオペレーティングシステムが Linux であるクラスタでのみサポートされています。

  • カスタムクラスタを除くすべてのクラスタで、Auto Scaling の構成がサポートされています。

  • メモリベースの Auto Scaling は、Slurm スケジューラを使用するクラスタでのみサポートされています。

重要

Auto Scaling を実現するには、ジョブの送信時に必要な vCPU を指定することをお勧めします。 また、ジョブで指定されたメモリサイズは、ECS リソースのメモリ仕様を超えることはできません。

使用上の注意

自動スケーリング サービスを使用する前に、スケジューラ サービスとドメイン アカウント サービスが想定どおりに動作していることを確認してください。 自動スケーリングを有効にした後、管理ノードは実行中状態である必要があります。

重要

管理ノードをシャットダウンまたは再起動する必要がある場合は、アイドル状態のノードが解放され、計算ノードでジョブが実行されていない状態になってから操作を実行してください。 この場合、管理ノードをシャットダウンまたは再起動する前に自動スケーリングを無効にし、管理ノードの再起動後に自動スケーリングを有効にすることをお勧めします。

手順

  1. [クラスタ一覧] ページに移動します。

    1. E-HPC コンソール にログインします。

    2. 上部ナビゲーションバーの左側で、リージョンを選択します。

    3. 左側のナビゲーションウィンドウで、[クラスタ] をクリックします。

  2. [クラスタ一覧] ページで、管理するクラスタを見つけ、[自動スケーリング] をクリックします。

  3. [クラスタの自動スケーリング] ダイアログ ボックスで、[クラスタのグローバル設定] セクションのパラメータを設定します。

    パラメータ

    説明

    [自動拡張]/[自動縮小]

    クラスタ内のすべてのキューに対して [自動拡張][自動縮小] を有効にします。

    説明

    キューの設定がクラスタのグローバル設定と異なる場合、キューの設定が優先されます。

    スケールアウト待機時間

    ジョブが送信されてから、システムがスケールアウト操作を開始するまでに必要な推定時間です。 デフォルト値は 2 分です。

    スケールイン待機時間

    ジョブ リクエストを受信せずにノードがアイドル状態のままになる時間のしきい値です。 この時間が経過すると、システムはノードのリソースを自動的に解放します。 スケールインのデフォルトの待機時間は 4 分です。

    クラスタ ノードの最大数

    クラスタで作成できるノードの最大数です。

    クラスタのコアの最大数

    クラスタで作成できるコアの最大数です。

  4. キューで Auto Scaling を構成します。

    ターゲットクラスタをクリックし、左側のナビゲーションウィンドウで [ノードとキュー] > [キュー] をクリックします。 管理するキューを見つけ、キューの [アクション] 列の [編集] をクリックします。 [キューの編集] ページで、次のパラメータを構成します。

    • 基本設定

      パラメータ

      説明

      自動キュー スケーリング

      自動キュー スケーリング はデフォルトでオフになっています。 スイッチをオンにすると、ビジネス要件に基づいて [自動拡張][自動縮小] を選択できます。

      説明

      キューの設定がクラスタのグローバル設定と異なる場合、キューの設定が優先されます。

      キュー計算ノード

      キュー内の計算ノード数の範囲です。

      • 最小ノード数: 計算ノードの最小数は 0 ~ 1000 です。 この値は、スケールインの効果に影響を与える可能性があります。

      • 最大ノード数: 計算ノードの最大数は 0 ~ 5000 です。 この値は、スケールアウトの効果に影響を与える可能性があります。

      重要
      • [最小ノード数] パラメータをゼロ以外の値に設定すると、キューはクラスタのスケールイン中に指定した値に基づいてノード数を保持します。 アイドル状態のノードは解放されません。 キュー内のアイドル状態のノードによるリソースの浪費と不要なコストを防ぐため、[最小ノード数] パラメータは慎重に指定することをお勧めします。

      • キュー内の最大ノード数 は、クラスタ内の最大ノード数 を超えることはできません。

    • [キューノードの構成を選択]

      [キューの自動スケーリング] を有効にするか、[初期ノード数] を 0 より大きい値に設定する場合は、次のパラメータを構成して、システムがキューの計算ノードを作成できるようにする必要があります。

      パラメータ

      説明

      [ノード間相互接続]

      ノードを相互接続するモードを選択します。 有効な値:

      • [VPC ネットワーク]: 計算ノードは、Virtual Private Cloud (VPC) を介して相互に通信します。

      • [eRDMA ネットワーク]: 計算ノードのインスタンスタイプが eRDMA インターフェース (ERI) をサポートしている場合、計算ノードは eRDMA ネットワークを介して相互に通信します。

        説明

        特定のインスタンスタイプの計算ノードのみが ERI をサポートしています。 詳細については、「概要」および「エンタープライズレベルインスタンスで eRDMA を構成する」をご参照ください。

      [事前設定済みノードプールの使用]

      作成済みの予約ノードプールを選択します。 システムは、プール内の未割り当ての予約ノードから IP アドレスとホスト名を自動的に選択して、計算ノードを作成します。

      説明

      予約ノードプールを使用することで、スケールアウト時に事前に割り当てられたリソースをすばやく再利用できます。 詳細については、「クラスタで予約ノードプールを使用する」をご参照ください。

      [仮想スイッチ]

      ノードが使用する vSwitch を指定します。 システムは、使用可能な vSwitch CIDR ブロックから計算ノードに IP アドレスを自動的に割り当てます。

      [インスタンスタイプグループ]

      [インスタンスの追加] をクリックし、表示されるパネルでインスタンスタイプを選択します。

      [キューの自動スケーリング] を有効にしない場合は、インスタンスタイプを 1 つだけ追加できます。 [キューの自動スケーリング] を有効にする場合は、複数のインスタンスタイプを追加できます。

      重要

      インベントリの問題によりインスタンスの作成に失敗した場合に備えて、複数の vSwitch とインスタンスタイプを代替として選択できます。 計算ノードを作成するとき、システムは指定されたインスタンスタイプとゾーンの順序でノードを作成しようとします。 たとえば、システムは最初に、最初の vSwitch が存在するゾーンで、順番に指定したインスタンスタイプに基づいてノードを作成しようとします。 作成されたインスタンスの仕様は、インベントリによって異なる場合があります。

    • [Auto Scaling]

      パラメータ

      説明

      [スケーリングポリシー]

      スケーリングポリシーを選択します。 現在、[供給優先戦略] のみがサポートされています。 このポリシーは、仕様要件を満たす計算ノードが、構成された vSwitch の順序で指定されたゾーンに作成されることを示します。

      [単一拡張ノードの最大数]

      各スケールアウトまたはスケールインサイクルで追加または削除されるノード数を指定します。 デフォルト値 0 は、数が無制限であることを指定します。

      計算ノードのコストを制御するために、このパラメータを構成することをお勧めします。

      [ホスト名のプレフィックス]

      計算ノードのホスト名のプレフィックスを指定します。 プレフィックスは、異なるキューのノードを区別するために使用されます。

      [ホスト名のサフィックス]

      計算ノードのホスト名のサフィックスを指定します。 サフィックスは、異なるキューのノードを区別するために使用されます。

      [インスタンス RAM ロール]

      ノードに Resource Access Management (RAM) ロールをバインドして、ノードが Alibaba Cloud サービスにアクセスできるようにします。

      デフォルトロール AliyunECSInstanceForEHPCRole を選択することをお勧めします。

  5. 設定を確認し、[保存] をクリックします。

スケーリングポリシー

キューに複数のインスタンス タイプが設定されている場合、クラスタは、使用可能なインスタンス タイプ、タスク数量、GPU 数量に基づいて順番にスケールアウトされます。 たとえば、キュー内の各ノードには、ビジネス要件を満たすために少なくとも 16 コアが必要です。 キューには、8 コア、16 コア、32 コアのノードがあります。 16 コアの ECS インスタンスがキューに自動的に追加されます。 16 コアの ECS インスタンスが使用できない場合は、32 コアのインスタンスがキューに自動的に追加されます。

関連情報

自動スケーリングを設定した後、監視対象のクラスタのヘルス ステータスとリソース使用量を確認して、自動スケーリングの設定が適切かどうかを評価することをお勧めします。 詳細については、「監視情報を表示する」をご参照ください。

よくある質問

インスタンスは解放されましたが、コンソールでノードを削除できないのはなぜですか?

問題の説明: スポットインスタンスを Auto Scaling に使用したいと考えています。 まだ未完了の計算タスクがあるインスタンスが期限切れで回収された場合、スケジューラがインスタンスを削除できず、ノードの削除に失敗する可能性があります。

解決策: Auto Scaling シナリオでは、ノードは一定期間残った後にクリーンアップされます。 スケジューラのステータスが更新されると、ノードは BusyNodes ステータスを終了し、正常に削除できます。