AWS PCS クラスターで Slurm CLI フィルタープラグインを設定する - AWS PCS

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

AWS PCS クラスターで Slurm CLI フィルタープラグインを設定する

新しい PCS クラスターを作成するときに CLI AWS フィルタープラグインを設定します。クラスターを再作成せずに、Update API またはコンソールを使用して、既存のクラスターで CLI フィルタープラグインを有効または無効にできます。

前提条件

CLI フィルタープラグインを設定する前に、以下のタスクを完了してください。

  • CLI Filter Plugin API を実装する Lua スクリプトを記述してテストする

  • Lua スクリプトに正確に名前を付ける cli_filter.lua

  • スクリプトをすべてのクラスターインスタンス (AMI、S3、またはファイルシステム) にデプロイする方法を選択します。

  • Slurm バージョン 24.11 以降を使用していることを確認します。

新しいクラスターで CLI フィルタープラグインを有効にする

AWS PCS console
  1. https://console.aws.amazon.com/pcs/ で AWS PCS コンソールを開きます。

  2. ナビゲーションペインで [Clusters] (クラスター) を選択してください。

  3. [クラスターを作成] を選択します。

  4. 有効なバージョンの Slurm (バージョン 24.11 以降) を選択します。

  5. ケジューラ設定で、追加のスケジューラ設定を展開します。

  6. パラメータ名を に設定CliFilterPluginsし、パラメータ値を に設定して、新しい Slurm カスタム設定を追加しますcli_filter/lua

  7. 残りのクラスター設定を完了し、[クラスターを作成] を選択します。

AWS PCS API

CreateCluster API アクションの呼び出しでslurmCustomSettings設定を指定します。を parameterNameに設定CliFilterPluginsし、 parameterValue を に設定しますcli_filter/lua。詳細については、AWS PCS API リファレンスCreateCluster」を参照してください。

次の例では AWS CLI 、 を使用して CreateCluster API アクションを呼び出します。カスタム設定は CLI フィルタープラグインCliFilterPlugins=cli_filter/luaを有効にします。

aws pcs create-cluster --cluster-name cluster-name \ --scheduler type=SLURM,version=24.11 \ --size SMALL \ --networking subnetIds=cluster-subnet-id,securityGroupIds=cluster-security-group-id \ --slurm-configuration \ 'slurmCustomSettings=[{parameterName=CliFilterPlugins,parameterValue="cli_filter/lua"}]'

CLI フィルタープラグインスクリプトをデプロイする

CLI フィルタープラグインスクリプトをクラスターにデプロイするには
  1. コンピューティングノードグループで使用されるすべての AMIs に、PCS Slurm インストーラを介して AWS Slurm がインストールされていることを確認します。

    注記

    すべてのコンピューティングノードグループに AWS PCS サンプル AMI を使用する場合は、このステップをスキップします。Slurm は既にインストールされています。

  2. クラスター内のすべてのインスタンス/etc/aws/pcs/scheduler/slurm-<version>/cli_filter.luacli_filter.luaスクリプトを にデプロイします。

    たとえば、Slurm バージョン 24.11 の場合:

    /etc/aws/pcs/scheduler/slurm-24.11/cli_filter.lua
  3. 準備AMIs を使用して、すべてのログインノードとコンピューティングノードを起動します。

  4. ジョブの送信をテストして、CLI フィルタープラグインが正しく実行されることを確認します。

既存のクラスターで CLI フィルタープラグインを有効または無効にする

インフラストラクチャを再構築することなく、既存のクラスターで CLI フィルタープラグインを有効または無効にできます。詳細については、「PCS AWS でのクラスターの更新」を参照してください。

AWS PCS console
  1. https://console.aws.amazon.com/pcs/ で AWS PCS コンソールを開きます。

  2. ナビゲーションペインで [Clusters] (クラスター) を選択してください。

  3. 更新するクラスターを選択します。

  4. [アクションを編集] を選択します。

  5. クラスターの編集ページの「追加のスケジューラ設定」を参照してください。

    • CLI フィルタープラグインを有効にするには: パラメータ名を に設定CliFilterPluginsし、パラメータ値を に設定して、新しい Slurm カスタム設定を追加しますcli_filter/lua

    • CLI フィルタープラグインを無効にするには: 既存のCliFilterPlugins設定を削除します。

  6. クラスターの更新を選択して変更を送信します。

  7. クラスターのステータスをモニタリングします。これは、プロセス中に「更新」と表示され、更新が完了すると「アクティブ」と表示されます。

AWS PCS API

UpdateCluster API アクションを使用して、CLI フィルタープラグインを有効または無効にします。詳細については、AWS 「PCS API リファレンス」のUpdateCluster」を参照してください。

既存のクラスターで CLI フィルタープラグインを有効にするには:

aws pcs update-cluster --cluster-identifier my-cluster \ --slurm-configuration \ 'slurmCustomSettings=[{parameterName=CliFilterPlugins,parameterValue="cli_filter/lua"}]'

既存のクラスターで CLI フィルタープラグインを無効にするには:

aws pcs update-cluster --cluster-identifier my-cluster \ --slurm-configuration \ 'slurmCustomSettings=[]'

予想される結果

設定が完了したら、次の操作を行います。

  • クラスターは CLI フィルタープラグインを有効にして作成されます

  • ジョブの送信により、Slurm コントローラーに到達する前にカスタム検証ロジックがトリガーされます。

  • 非準拠ジョブはカスタムエラーメッセージで拒否されます

  • 準拠ジョブは Slurm スケジューラを介して正常に進行します。

トラブルシューティング

CLI フィルタプラグインスクリプトがノードにありません

症状: プラグインのロードエラーにより、ジョブの送信がすぐに失敗します。

考えられる原因: スクリプトがすべてのインスタンスにデプロイされていないか、ファイルパスまたは名前が正しくありません。

解決策: スクリプトが、正確なファイル名 を持つすべてのログインノードとコンピューティングノードに正しいパスに存在することを確認しますcli_filter.lua

無効な CLI フィルタープラグイン設定

症状: クラスターの作成が検証エラーで失敗します。

考えられる原因: CliFilterPluginsパラメータが cli_filter/lua形式に設定されていません。

解決策: cli_filter/luaで正確なパラメータ値を使用しますslurmCustomSettings