翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
PCS AWSのノードライフサイクルアクションにメンテナンスされたスクリプト AWS を使用する
AWS は、一般的なライフサイクルアクション用に管理されたスクリプトを発行します。メンテナンススクリプトは、コンピューティングノードグループ設定から直接参照します。スクリプトはべき等であり、起動するたびに安全に実行できます。
AWS は、各 のパブリックで管理 AWSされた Amazon S3 バケットからスクリプトを配布します AWS リージョン。Amazon S3 URI でスクリプトを参照します。保守スクリプトは、独自のスクリプトを参照するのと同じ方法で参照します。スクリプトは、 AWSマネージドバケットから直接参照できます。
使用可能なスクリプト
Script |
説明 |
前提条件パッケージ |
|---|---|---|
|
Amazon EFS ファイルシステムを指定されたパスにマウントし、再起動後も保持します。 |
|
|
Amazon FSx for Lustre ファイルシステムを指定されたパスにマウントし、再起動後も保持します。 |
|
|
Amazon EFS ファイルシステムをホームディレクトリベースとしてマウントし、各ユーザーのホームディレクトリが初回ログイン時に作成されるように PAM を設定します。 |
|
|
LDAP または LDAPS 認証用の SSSD を設定し、認証されたバインド ( AWS Secrets Manager からの認証情報) または匿名バインドをサポートします。 |
|
|
ノードのライフサイクルアクションログを Amazon CloudWatch Logs に転送するように Amazon CloudWatch エージェントを設定します。 |
|
重要
これらのスクリプトは、前提条件パッケージをインストールしません。スクリプトを使用する前に、必要なパッケージを AMI にインストールします。前提条件がない場合、スクリプトは失敗します。一部のスクリプトでは、ノードのインスタンスロールに特定のアクセス許可が必要です。各スクリプトの要件を参照してください。
スクリプトを参照する
ライフサイクルアクションの scriptLocationフィールドで Amazon S3 URI でスクリプトを参照します。スクリプトは、各 の AWSマネージドaws-pcs-repo-バケットのregionaws-pcs-node-lifecycle-scriptsプレフィックスの下に保存されます AWS リージョン。クラスター AWS リージョン と同じ で バケットを使用します。
s3://aws-pcs-repo-region/aws-pcs-node-lifecycle-scripts/script-vversion.sh
各スクリプトはセマンティックバージョニングでバージョ
-
特定のバージョンを固定する — などの完全なセマンティックバージョンを使用します
mount-efs-v1.0.0.sh。特定のバージョンのコンテンツは変更できません。本番稼働用の固定バージョンを使用します。 -
最新バージョンを追跡する — などの major-version エイリアスを使用します
mount-efs-v1-latest.sh。エイリアスは、そのメジャーバージョン内の最新のリリースを指します。とペアリングscriptCachingPolicyREFRESH_ON_REBOOTして、再起動時に更新を取得します。
すべてのスクリプトには、同じ場所にサフィックス (例: ) .sha256 が付いたコンパニオン SHA-256 チェックサムファイルがありますmount-efs-v1.0.0.sh.sha256。.sha256 値を読み取り、スクリプトの として設定しますchecksum。エージェントは、ダウンロード時にスクリプトの整合性を検証します。詳細については、「スクリプトの整合性 (チェックサム)」を参照してください。
使用可能なスクリプトバージョン
AWS は、各スクリプトを個別にバージョン化します。次の表に、各スクリプトの使用可能なバージョンを示します。「」で説明されているように、スクリプトの Amazon S3 URI でバージョンを使用しますスクリプトを参照する。
mount-efs.sh
バージョン |
リリース日 |
リリースノート |
|---|---|---|
1.0.0 |
2026 年 7 月 23 日 |
初回リリース。 |
mount-fsx-lustre.sh
バージョン |
リリース日 |
リリースノート |
|---|---|---|
1.0.0 |
2026 年 7 月 23 日 |
初回リリース。 |
configure-efs-homes.sh
バージョン |
リリース日 |
リリースノート |
|---|---|---|
1.0.0 |
2026 年 7 月 23 日 |
初回リリース。 |
configure-ldaps.sh
バージョン |
リリース日 |
リリースノート |
|---|---|---|
1.0.0 |
2026 年 7 月 23 日 |
初回リリース。 |
configure-cloudwatch-logs.sh
バージョン |
リリース日 |
リリースノート |
|---|---|---|
1.0.0 |
2026 年 7 月 23 日 |
初回リリース。 |
例: メンテナンスされたスクリプトを使用して EFS ファイルシステムをマウントする
次の例では、 で管理されているmount-efs.shスクリプトを参照していますus-west-2 AWS リージョン。引数は名前付きフラグとして渡します。スクリプトの引数については、「」を参照してくださいスクリプト引数。
aws pcs update-compute-node-group \ --cluster-identifiermy-cluster\ --compute-node-group-identifiermy-cng\ --node-lifecycle-actions '{ "stages": { "nodeBootstrapped": [ { "name": "Mount EFS home directory", "scriptSource": { "scriptLocation": "s3://aws-pcs-repo-us-west-2/aws-pcs-node-lifecycle-scripts/mount-efs-v1.0.0.sh" }, "arguments": ["--file-system-id", "fs-12345678", "--mount-point", "/shared"], "onError": "TERMINATE", "executionPolicy": "EVERY_BOOT" } ] } }'
ノードのインスタンスロールには、スクリプトオブジェクトに対するs3:GetObjectアクセス許可が必要です。プライベートサブネット内のノードは、S3 ゲートウェイ VPC エンドポイントを介してバケットに到達できます。詳細については、「スクリプトストレージの場所」を参照してください。
スクリプト引数
各スクリプトは名前付きフラグ引数を取ります。各フラグとその値をarguments配列の個別の要素 (例: ) として渡します["--file-system-id", "fs-12345678"]。すべてのスクリプトは として実行rootされ、AL2、AL2023、RHEL、Ubuntu、Rocky Linux オペレーティングシステムをサポートします。
mount-efs.sh
フラグ |
[Required] (必須) |
[Default] (デフォルト) |
[Description] (説明) |
|---|---|---|---|
|
はい |
— |
などの EFS ファイルシステム ID |
|
はい |
— |
など、 にマウントする絶対パス |
|
いいえ |
|
カンマ区切りのマウントオプション。デフォルトでは、転送中の暗号化と IAM 認証が有効になります。 |
デフォルトiamオプションでは、ノードのインスタンスロールで elasticfilesystem:ClientMountと を許可する必要がありますelasticfilesystem:ClientWrite。ノードのサブネットには、セキュリティグループがノードからのインバウンド NFS (TCP 2049) を許可する EFS マウントターゲットが必要です。
mount-fsx-lustre.sh
フラグ |
[Required] (必須) |
[Default] (デフォルト) |
[Description] (説明) |
|---|---|---|---|
|
はい |
— |
FSx for Lustre ファイルシステムの DNS 名。 |
|
はい |
— |
ファイルシステムの Lustre マウント名 (FSx コンソール |
|
はい |
— |
など、 にマウントする絶対パス |
|
いいえ |
|
カンマ区切りのマウントオプション。デフォルトは FSx for Lustre の推奨事項に従います。 |
ノードのサブネットはファイルシステムに到達する必要があり、ファイルシステムのセキュリティグループはノードからのインバウンド Lustre トラフィック (TCP 988、リザーブドソースポートを使用するクライアントの場合は 1018~1023) を許可する必要があります。
configure-efs-homes.sh
フラグ |
[Required] (必須) |
[Default] (デフォルト) |
[Description] (説明) |
|---|---|---|---|
|
はい |
— |
などの EFS ファイルシステム ID |
|
いいえ |
|
EFS ファイルシステムを にマウントし、ホームディレクトリを作成する絶対パス。 |
|
いいえ |
|
カンマ区切りのマウントオプション。デフォルトでは、転送中の暗号化と IAM 認証が有効になります。 |
このスクリプトには、amazon-efs-utils、nfs-utils、および PAM mkhomedir サポートが必要です。RHEL ファミリーノードで、、oddjoboddjob-mkhomedir、および をインストールしますauthselect。AL2023 で、 をauthselect明示的にインストールします。Ubuntu で、 をインストールしますlibpam-modules。IAM とネットワークの要件は に一致しますmount-efs.sh。
configure-ldaps.sh
フラグ |
必須 |
[Description] (説明) |
|---|---|---|
|
はい |
LDAP サーバー URI。 |
|
はい |
などの LDAP 検索ベース |
|
いいえ |
AWS Secrets Manager バインド認証情報を保持するシークレットの ARN。このフラグを省略すると、スクリプトは匿名バインド用に SSSD を設定します。 |
|
いいえ |
TLS 検証用の CA バンドルへの絶対パス。デフォルトはオペレーティングシステムの CA バンドルです。 |
このスクリプトには、sssd、sssd-ldap、および が必要ですsssd-tools。RHEL ファミリーノードでは、 authselectまたは authconfigと も必要ですoddjob-mkhomedir。Ubuntu では、 が必要ですlibpam-modules。
では--secret-arn、ノードのインスタンスロールがシークレットsecretsmanager:GetSecretValueを許可する必要があり、ノードには awscliおよび python3パッケージが必要です。シークレットの値は、 形式の JSON である必要があります{"username": "<bind-dn>", "password": "<bind-password>"}。匿名バインドは AWS API コールを行わず、IAM アクセス許可を必要としません。
configure-cloudwatch-logs.sh
フラグ |
[Required] (必須) |
[Default] (デフォルト) |
説明 |
|---|---|---|---|
|
いいえ |
|
転送先の CloudWatch Logs ロググループ。省略すると、スクリプトは PCS AWS が設定する |
スクリプトはライフサイクルアクションログディレクトリ () を転送します/var/log/amazon/pcs/lifecycle/actions。ノードのインスタンスロールはlogs:CreateLogGroup、ターゲットロググループlogs:PutLogEventsで 、logs:CreateLogStream、および を許可する必要があります。このスクリプトを使用して、事後デバッグのためにログをインスタンス外に転送します。
注記
これらのログを転送するrootには、Amazon CloudWatch エージェントは として実行する必要があります。root ユーザーのみが を読み取ることができます/var/log/amazon/pcs/lifecycle/actions。
注記
スクリプトはその設定を専用のフラグメントファイルに書き込みます。Amazon CloudWatch エージェントは、このフラグメントを上書きせずに既存の設定と組み合わせるため、スクリプトは既存のメトリクスとロググループ設定を保持します。