

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

# Amazon S3 を使用して PCS に CLI AWS フィルタープラグインスクリプトをデプロイする
<a name="slurm-cli-filter-plugins-deploy-s3"></a>

AMIs を再構築せずにライブクラスターでジョブ送信ロジックを更新する場合は、S3 を使用して CLI フィルタプラグインスクリプトをデプロイします。このアプローチでは、ユーザーデータを使用してインスタンスの起動中に S3 からスクリプトをダウンロードします。

## 前提条件
<a name="slurm-cli-filter-plugin-deploy-s3-prerequisites"></a>

S3 を使用してスクリプトをデプロイする前に、以下のタスクを完了します。
+ Slurm バージョン 24.11 以降を使用していることを確認します。24.11 および 25.05 については、「」を参照してください[要件](slurm-cli-filter-plugins.md#slurm-cli-filter-plugins-requirements)。
+ CLI Filter Plugin Lua スクリプトを使用して S3 バケットを作成する
+ S3 バケットへの読み取りアクセス権を持つ IAM インスタンスプロファイルを設定する
+ インターネットなしで直接アクセスできるように S3 VPC Gateway エンドポイントを設定する
+ S3 からダウンロードするユーザーデータスクリプトを準備する

**S3 を使用して CLI フィルタープラグインスクリプトをデプロイするには**

1. `cli_filter.lua` スクリプトを S3 バケットにアップロードします。

1. バケットの S3 読み取りアクセス許可を使用して IAM インスタンスプロファイルを設定します。

1. 起動テンプレートの user-data にシェルコードを追加して、スクリプトをダウンロードします。

   ```
   aws s3 cp s3://my-bucket/cli_filter.lua /etc/aws/pcs/scheduler/slurm-25.11/cli_filter.lua
   chmod 644 /etc/aws/pcs/scheduler/slurm-25.11/cli_filter.lua
   ```

1. 更新された起動テンプレートを使用してコンピューティングノードグループをデプロイします。

1. ジョブの送信をテストして、スクリプトの機能を検証します。

## 予想される結果
<a name="slurm-cli-filter-plugin-deploy-s3-results"></a>

S3 デプロイが完了したら:
+ CLI フィルタープラグインスクリプトは、起動時にすべてのインスタンスに自動的にダウンロードされます
+ S3 のスクリプト更新は、新しく起動されたインスタンスに反映されます。
+ ジョブ送信ポリシーはクラスター全体で一貫して適用されます。

## トラブルシューティング
<a name="slurm-cli-filter-plugin-deploy-s3-troubleshooting"></a>

**S3 アクセスが拒否されました**  
**症状:** インスタンスの起動が失敗するか、スクリプトがダウンロードされません。  
**考えられる原因:** IAM アクセス許可または S3 VPC エンドポイントがない。  
**解決策:** IAM インスタンスプロファイルに `s3:GetObject` アクセス許可があり、S3 VPC エンドポイントが設定されていることを確認します。