翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWS PCS の Amazon EC2 ユーザーデータの使用
注記
ほとんどのノード設定タスクでは、ノードのライフサイクルアクションをお勧めします。スクリプトごとのエラー処理と再起動制御を備えた再利用可能な API ネイティブ設定を提供します。PCS エージェントが起動する前に実行する必要があるタスクには、起動テンプレート AWS のユーザーデータを使用します。詳細については、「ノードライフサイクルアクション」を参照してください。
インスタンスの起動時にcloud-init実行される起動テンプレートに EC2 ユーザーデータを指定できます。コンテンツタイプのユーザーデータブロックは、インスタンスが AWS PCS API に登録される前にcloud-config実行されますが、コンテンツタイプのユーザーデータブロックは、登録の完了後に実行されますが、Slurm デーモンの起動前にtext/x‑shellscript実行されます。コンテンツタイプの詳細についてはcloud-init
ユーザーデータは、次のような一般的な設定シナリオを実行できます。
-
ネットワークファイルシステムのマウント
起動テンプレートのユーザーデータは、MIME マルチパートアーカイブ
MIME マルチパートファイルには次のコンポーネントが含まれます。
-
コンテンツの種類およびパート境界の宣言:
Content-Type: multipart/mixed; boundary="==BOUNDARY==" -
MIME バージョンの宣言:
MIME-Version: 1.0 -
次のコンポーネントを含む 1 つ以上のユーザーデータブロック:
-
ユーザーデータブロックの始まりを示す開始境界:
--==BOUNDARY==。この境界の前の行は空白にしておく必要があります。 -
ブロックのコンテンツタイプ宣言:
Content-Type: text/cloud-config; charset="us-ascii"またはContent-Type: text/x-shellscript; charset="us-ascii"。コンテンツタイプ宣言の後の行は空白にしておく必要があります。 -
ユーザーデータのコンテンツ (例えば、シェルコマンドや
cloud-configディレクティブのリスト)。
-
-
MIME マルチパートファイルの終わりを示す、終了境界:
--==BOUNDARY==--。この境界の前の行は空白にしておく必要があります。
注記
Amazon EC2 コンソールの起動テンプレートにユーザーデータを追加する場合は、プレーンテキストとして貼り付けることができます。または、ファイルからアップロードすることもできます。 AWS CLI または AWS SDK を使用する場合は、この JSON ファイルに示すように、CreateLaunchTemplate を呼び出すときに、まず base64 でユーザーデータをエンコードし、その文字列を UserDataパラメータの値として送信する必要があります。
{ "LaunchTemplateName": "base64-user-data", "LaunchTemplateData": { "UserData": "ewogICAgIkxhdW5jaFRlbXBsYXRlTmFtZSI6ICJpbmNyZWFzZS1jb250YWluZXItdm9sdW..." } }