カスタムブートストラップアクション - AWS ParallelCluster

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

カスタムブートストラップアクション

HeadNode/CustomActions/OnNodeStart 設定を定義すると、AWS ParallelCluster はノードが起動した直後に任意のコードを実行します。HeadNode/CustomActions/OnNodeConfigured 設定を定義すると、AWS ParallelCluster はノード設定が正しく完了した後でコードを実行します。

AWS ParallelCluster バージョン 3.4.0 以降では、HeadNode/CustomActions/OnNodeUpdated 設定を定義すれば、ヘッドノードの更新後にコードを実行できます。

通常、このコードは Amazon Simple Storage Service (Amazon S3) に保存され、HTTPS 接続でアクセスされます。コードは root として実行され、クラスターのオペレーティングシステムでサポートされている任意のスクリプト言語で実行できます。多くの場合、コードは BashPython で書かれています。

注記

AWS ParallelCluster バージョン 3.7.0 以降、クラスター Imds/ImdsSupport 設定のデフォルトは v2.0 です。

新しいクラスターを作成してバージョン 3.7.0 以降のバージョンにアップグレードする場合は、カスタムブートストラップアクションスクリプトを IMDSv2 と互換性があるように更新するか、クラスター設定ファイルで Imds/ImdsSupportv1.0 に設定してください。

警告

責任共有モデルで説明されているように、カスタムスクリプトと引数を設定する必要があります。カスタムブートストラップスクリプトと引数が、クラスターノードへのフルアクセス権があると信頼できるソースからのものであることを確認してください。

警告

AWS ParallelCluster では、/etc/parallelcluster/cfnconfig ファイルを通じて提供される内部変数の使用はサポートされていません。このファイルは将来のリリースの一部として削除される可能性があります。

OnNodeStart アクションは、NAT、Amazon Elastic Block Store (Amazon EBS)、スケジューラの設定など、ノードデプロイのブートストラップアクションが開始される前に呼び出されます。OnNodeStart のブートストラップアクションには、ストレージの変更、その他のユーザーの追加、パッケージの追加などがあります。

注記

クラスターに DirectoryService および HeadNode/CustomActions/OnNodeStart スクリプトを設定すると、AWS ParallelCluster は、OnNodeStart スクリプトを実行する前に DirectoryService を設定して sssd を再起動します。

OnNodeConfigured アクションは、ノードのブートストラップ・プロセスが完了した後に呼び出されます。OnNodeConfigured アクションは、インスタンスが完全に構成され、完了したとみなされる前の最後のアクションです。一般的な OnNodeConfigured のアクションには、スケジューラ設定の変更、ストレージやパッケージの変更などがあります。設定時に引数を指定することで、スクリプトに引数を渡すことができます。

ヘッドノードの更新が完了し、スケジューラーと共有ストレージが最新のクラスター設定変更に対応するようになった後、OnNodeUpdated アクションが呼び出されます。

OnNodeStart または OnNodeConfigured カスタムアクションが成功すると、終了コード 0 で成功が示されます。それ以外の終了コードは、インスタンスのブートストラップが失敗したことを示します。

OnNodeUpdated カスタムアクションが成功すると、終了コード 0 で成功が通知されます。それ以外の終了コードは、失敗したことを示します。

注記

OnNodeUpdated を設定した場合、更新が失敗したときに OnNodeUpdated アクションを以前の状態に手動で復元する必要があります。

OnNodeUpdated カスタムアクションが失敗した場合、更新は以前の状態にロールバックします。ただし、OnNodeUpdated アクションは更新時にのみ実行され、スタックのロールバック時には実行されません。

HeadNode/CustomActions および Scheduling/SlurmQueues/CustomActions の設定セクションでは、ヘッドノードとキューごとに異なるスクリプトを指定できます。OnNodeUpdated は、HeadNode セクションでのみ設定できます。

注記

AWS ParallelCluster バージョン 3.0 以前は、ヘッドノードとコンピューティングノードに異なるスクリプトを指定することはできませんでした。「AWS ParallelCluster 2.x から 3.x へ移動」を参照してください。