でのコンピューティングノードグループの作成 AWS PCS - AWS PCS

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

でのコンピューティングノードグループの作成 AWS PCS

このトピックでは、使用可能なオプションの概要と、 AWS Parallel Computing Service () でコンピューティングノードグループを作成するときに考慮すべき点について説明しますAWS PCS。でコンピューティングノードグループを初めて作成する場合は AWS PCS、「」のチュートリアルに従うことをお勧めしますの開始方法 AWS PCS。このチュートリアルは、使用可能なすべてのオプションとHPCシステムアーキテクチャを拡張することなく、作業システムを作成するのに役立ちます。

前提条件

  • で必要な数のEC2インスタンスを起動するのに十分なサービスクォータ AWS リージョン。を使用してAWS Management Console、サービスクォータの引き上げを確認およびリクエストできます。

  • ネットワーク要件を満たす既存の VPCとサブネット (複数可 AWS PCS)。本番環境で使用するクラスターをデプロイする前に、これらの要件を十分に理解することをお勧めします。詳細については、「AWS PCS VPC およびサブネットの要件と考慮事項」を参照してください。テンプレートを使用して、 CloudFormation VPCおよび subnets. AWS provides テンプレートのHPCレシピを作成することもできます CloudFormation 。詳細については、「」の aws-hpc-recipes「」を参照してください GitHub。

  • RegisterComputeNodeGroupInstance API アクションを AWS PCS呼び出すアクセス許可と、ノードグループIAMインスタンスに必要な他の AWS リソースへのアクセス許可を持つインスタンスプロファイル。詳細については、「IAM AWS Parallel Computing Service の インスタンスプロファイル」を参照してください。

  • ノードグループインスタンスの起動テンプレート。詳細については、「での Amazon EC2起動テンプレートの使用 AWS PCS」を参照してください。

  • Amazon Spot EC2 インスタンスを使用するコンピューティングノードグループを作成するには、 にAWSServiceRoleForEC2Spotサービスにリンクされたロールが必要です AWS アカウント。詳細については、「の Amazon EC2 スポットロール AWS PCS」を参照してください。

でコンピューティングノードグループを作成する AWS PCS

コンピューティングノードグループは、 AWS Management Console または を使用して作成できます AWS CLI。

AWS Management Console
コンソールを使用してコンピューティングノードグループを作成するには
  1. AWS PCS コンソール を開きます。

  2. コンピューティングノードグループを作成するクラスターを選択します。Compute node groups に移動し、Create を選択します。

  3. 「コンピューティングノードグループのセットアップ」セクションで、ノードグループの名前を指定します。名前には、大文字と小文字を区別する英数字とハイフンのみを使用できます。アルファベット文字で始まり、25 文字を超えることはできません。名前はクラスター内で一意である必要があります。

  4. 「コンピューティング設定」で、次の値を入力または選択します。

    1. EC2 起動テンプレート — このノードグループに使用するカスタム起動テンプレートを選択します。起動テンプレートを使用して、サブネット、セキュリティグループ、モニタリング設定、インスタンスレベルのストレージなどのネットワーク設定をカスタマイズできます。起動テンプレートを準備していない場合は、での Amazon EC2起動テンプレートの使用 AWS PCS「」を参照して作成方法を確認してください。

      重要

      AWS PCS は、コンピューティングノードグループごとにマネージド起動テンプレートを作成します。これらは という名前ですpcs-identifier-do-not-delete。コンピューティングノードグループを作成または更新するときにこれらを選択しないでください。選択しないと、ノードグループが正しく機能しません。

    2. EC2 起動テンプレートのバージョン — カスタム起動テンプレートのバージョンを選択します。特定のバージョンを選択できるため、再現性を高めることができます。後でバージョンを変更する場合は、コンピューティングノードグループを更新して起動テンプレートの変更を検出する必要があります。詳細については、「コンピューティングノードグループの更新 AWS PCS 」を参照してください。

    3. AMI ID – 起動テンプレートに AMI ID が含まれていない場合、または起動テンプレートの値を上書きする場合は、ここで AMI ID を指定します。ノードグループAMIに使用される は、 と互換性がある必要があることに注意してください AWS PCS。AMI が提供するサンプルを選択することもできます AWS。このトピックの詳細については、「」を参照してくださいの Amazon マシンイメージ (AMIs) AWS PCS

    4. IAM インスタンスプロファイル — ノードグループのインスタンスプロファイルを選択します。インスタンスプロファイルは、リソースとサービスに安全にアクセスする AWS アクセス許可をインスタンスに付与します。準備が整っていない場合は、IAM AWS Parallel Computing Service の インスタンスプロファイル「」を参照して作成方法を確認してください。

    5. サブネット – クラスターVPCがデプロイされている で 1 つ以上のサブネットを選択します AWS PCS。複数のサブネットを選択すると、ノード間のEFA通信は利用できなくなり、異なるサブネットのノード間の通信のレイテンシーが増加する可能性があります。ここで指定するサブネットが、EC2起動テンプレートで定義したサブネットと一致することを確認してください。

    6. インスタンス - ノードグループ内のスケーリングリクエストを満たすには、1 つ以上のインスタンスタイプを選択します。すべてのインスタンスタイプは、同じプロセッサアーキテクチャ (x864_64 または arm64) と の数を持つ必要がありますvCPUs。インスタンスに がある場合GPUs、すべてのインスタンスタイプに同じ数の が必要ですGPUs。

    7. スケーリング設定 — ノードグループのインスタンスの最小数と最大数を指定します。実行中のノード数が固定されている静的設定、またはノードの最大数まで実行できる動的設定のいずれかを定義できます。静的な設定の場合は、最小値と最大値をゼロより大きい同じ値に設定します。動的設定の場合、最小インスタンスを 0 に設定し、最大インスタンスを 0 より大きい数に設定します。 AWS PCS は、静的インスタンスと動的インスタンスが混在するコンピューティングノードグループをサポートしていません。

  5. (オプション) 追加設定 で、以下を指定します。

    1. 購入オプション – スポットインスタンスとオンデマンドインスタンスのどちらかを選択します。

    2. 配分戦略 — スポット購入オプションを選択した場合、ノードグループでインスタンスを起動するときにスポットキャパシティープールを選択する方法を指定できます。詳細については、「Amazon Elastic Compute Cloud ユーザーガイド」の「スポットインスタンスの配分戦略」を参照してください。このオプションは、オンデマンド購入オプションを選択した場合は効果がありません。

  6. (オプション) Slurmカスタム設定セクションで、次の値を指定します。

    1. み — この値は、スケジューリングの目的でグループ内のノードの優先度を設定します。重みの低いノードは優先度が高く、単位は任意です。詳細については、 Slurmドキュメントの「重み」を参照してください。

    2. 実メモリ – この値は、ノードグループ内のノードの実メモリのサイズ (GB) を設定します。これは、 のクラスターSlurm設定の CR_CPU_Memoryオプションと組み合わせて使用することを目的としています AWS PCS。詳細については、 SlurmドキュメントRealMemoryの「」を参照してください。

  7. (オプション) タグ で、コンピューティングノードグループにタグを追加します。

  8. コンピューティングノードグループの作成 を選択します。ステータスフィールドには、 がノードグループをプロビジョニングCreatingしている間 AWS PCSに表示されます。これには数分間かかる場合があります。

推奨される次のステップ
  • ノードグループを の AWS PCSキューに追加して、ジョブを処理できるようにします。

AWS CLI
を使用してコンピューティングノードグループを作成するには AWS CLI

次のコマンドを使用してキューを作成します。コマンドを実行する前に、次の置き換えを行います。

  1. 置換 regionなど、クラスター AWS リージョン を作成する の ID を持つ us-east-1

  2. 置換 my-cluster クラスターの名前または clusterIdを指定します。

  3. 置換 my-node-groupコンピューティングノードグループの名前。この名前には、英数字 (大文字と小文字が区別されます) とハイフンのみを使用できます。アルファベット文字で始まり、25 文字を超えることはできません。名前はクラスター内で一意である必要があります。

  4. 置換 subnet-ExampleID1 クラスター IDsの 1 つ以上のサブネットを持つ VPC。

  5. 置換 lt-ExampleID1 カスタム起動テンプレートの ID を指定します。準備が整っていない場合は、での Amazon EC2起動テンプレートの使用 AWS PCS「」を参照して作成方法を確認してください。

    重要

    AWS PCS は、コンピューティングノードグループごとにマネージド起動テンプレートを作成します。これらは という名前ですpcs-identifier-do-not-delete。コンピューティングノードグループを作成または更新するときにこれらを選択しないでください。選択しないと、ノードグループが正しく機能しません。

  6. 置換 launch-template-version ノードグループを特定のバージョンに関連付ける場合は、特定の起動テンプレートバージョンを使用します。

  7. 置換 arn:InstanceProfileIAM インスタンスプロファイルARNの を使用します。準備が整っていない場合は、での Amazon EC2起動テンプレートの使用 AWS PCS「」でガイダンスを参照してください。

  8. 置換 min-instances また、max-instances 整数値を持つ 。実行中のノード数が固定されている静的設定、またはノードの最大数まで実行できる動的設定のいずれかを定義できます。静的な設定の場合は、最小値と最大値をゼロより大きい同じ値に設定します。動的設定の場合は、最小インスタンス数を 0 に設定し、最大インスタンス数を 0 より大きい数値に設定します。 AWS PCS は、静的インスタンスと動的インスタンスが混在するコンピューティングノードグループをサポートしていません。

  9. 置換 t3.large 別のインスタンスタイプを使用する。instanceType 設定のリストを指定することで、インスタンスタイプを追加できます。例えば、 などです --instance-configs instanceType=c6i.16xlarge,instanceType=c6a.16xlarge。 すべてのインスタンスタイプは、同じプロセッサアーキテクチャ (x864_64 または arm64) と の数を持つ必要がありますvCPUs。インスタンスに がある場合GPUs、すべてのインスタンスタイプに同じ数の が必要ですGPUs。

aws pcs create-compute-node-group --region region \ --cluster-identifier my-cluster \ --compute-node-group-name my-node-group \ --subnet-ids subnet-ExampleID1 \ --custom-launch-template id=lt-ExampleID1,version='launch-template-version' \ --iam-instance-profile arn=arn:InstanceProfile \ --scaling-config minInstanceCount=min-instances,maxInstanceCount=max-instance \ --instance-configs instanceType=t3.large

create-compute-node-group コマンドに追加できるオプションの設定がいくつかあります。

  • カスタム起動テンプレートに への参照が含まれていない--amiIdかAMI、その値を上書きするかを指定できます。ノードグループAMIに使用される は、 と互換性がある必要があることに注意してください AWS PCS。AMI が提供するサンプルを選択することもできます AWS。このトピックの詳細については、「」を参照してくださいの Amazon マシンイメージ (AMIs) AWS PCS

  • を使用して、オンデマンド (ONDEMAND) インスタンスとスポット (SPOT) インスタンスを選択できます--purchase-option。オンデマンドがデフォルトです。スポットインスタンスを選択した場合、 --allocation-strategyを使用して、ノードグループでインスタンスを起動するときに がスポットキャパシティープールを選択する方法 AWS PCSを定義することもできます。詳細については、「Amazon Elastic Compute Cloud ユーザーガイド」の「スポットインスタンスの配分戦略」を参照してください。

  • を使用して、ノードグループ内のノードSlurmの設定オプションを指定できます--slurm-configuration。重み (スケジューリング優先度) と実際のメモリを設定できます。重みの低いノードは優先度が高く、単位は任意です。詳細については、 Slurmドキュメントの「重み」を参照してください。実メモリは、ノードグループ内のノードの実メモリのサイズ (GB 単位) を設定します。これは、 Slurm設定の で AWS PCSクラスターの CR_CPU_Memoryオプションと組み合わせて使用するためのものです。詳細については、 SlurmドキュメントRealMemoryの「」を参照してください。

重要

コンピューティングノードグループの作成には数分かかる場合があります。

次のコマンドを使用して、ノードグループのステータスをクエリできます。ステータスが になるまで、ノードグループをキューに関連付けることはできませんACTIVE

aws pcs get-compute-node-group --region region \ --cluster-identifier my-cluster \ --compute-node-group-identifier my-node-group