AWS ParallelCluster AMI のカスタマイズ - AWS ParallelCluster

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

AWS ParallelCluster AMI のカスタマイズ

のカスタム AMI を構築する必要があるシナリオがあります。 AWS ParallelCluster このセクションでは、カスタム AWS ParallelCluster AMI を構築する際に考慮すべき点について説明します。

以下の方法のいずれかを使用してカスタム AWS ParallelCluster AMI を構築できます。

  1. ビルドイメージ設定ファイルを作成し、pcluster CLI を使用して EC2 Image Builder でイメージを構築します。このプロセスは自動化され、繰り返し可能で、モニタリングにも対応しています。詳細については、「pcluster イメージコマンド」を参照してください。

  2. AWS ParallelCluster AMI からインスタンスを作成し、ログインして手動で変更を行います。最後に、Amazon EC2 を使用して、変更したインスタンスから新しい AMI を作成します。このプロセスにかかる時間は短くなります。ただし、自動化されておらず、繰り返し可能でもなく、pcluster CLI イメージモニタリングコマンドの使用もサポートされていません。

これらの方法の詳細については、「カスタム AWS ParallelCluster AMI の構築」を参照してください。

AWS ParallelCluster AMI のカスタマイズに関する考慮事項

カスタムイメージをどのように作成するかにかかわらず、事前検証テストを実施し、作成中のイメージのステータスを監視するための対策を含めることをお勧めします。

pcluster を使用してカスタム AMI を構築するには、EC2 Image Builder がカスタムイメージのビルドに使用する Build および Image セクションを含むビルドイメージ設定ファイルを作成します。Build セクションでは、Image Builder がイメージを構築するために必要なものを指定します。これには ParentImage (ベースイメージ)、および Components が含まれます。Image Builder コンポーネントは、イメージが作成される前にインスタンスをカスタマイズしたり、作成されたイメージによって起動されたインスタンスをテストしたりするために必要な一連の手順を定義します。 AWS ParallelCluster コンポーネントの例については、「カスタム AMI」を参照してください。Image セクションでは画像のプロパティを指定します。

pcluster build-imageから呼び出されてカスタムイメージを作成すると、Image Builder AWS ParallelCluster AWS ParallelCluster はクックブックのビルドイメージ設定を使用してをブートストラップします。ParentImageImage Builder はコンポーネントをダウンロードし、ビルドフェーズと検証フェーズを実行し、AMI を作成し、AMI からインスタンスを起動し、テストを実行します。プロセスが完了すると、Image Builder は新しいイメージまたは停止メッセージを生成します。

カスタムコンポーネントの検証テストを実行する

設定に Image Builder コンポーネントを含める前に、以下の方法のいずれかを使用してテストと検証を行います。Image Builder の処理には最大 1 時間かかることがあるため、事前にコンポーネントをテストすることをお勧めします。これにより大幅に時間を節約できます。

スクリプトのケース

ビルドイメージプロセス外の実行中のインスタンスでスクリプトをテストし、スクリプトが終了コード 0 で終了することを確認します。

Amazon リソースネーム (ARN) のケース

ビルドイメージプロセスの外で、実行中のインスタンスでコンポーネントドキュメントをテストします。要件のリストについては、「Image Builder ユーザーガイド」の「コンポーネントマネージャ」を参照してください。

検証に成功後、ビルドイメージ設定にコンポーネントを追加する

カスタムコンポーネントが動作していることを確認したら、ビルドイメージ設定ファイルに追加します。

デバッグに役立つ pcluster コマンドを使用して Image Builder プロセスを監視する

describe-image

このコマンドを使用すると、ビルドイメージのステータスを監視できます。

list-image-log-streams

get-image-log-events と併せて、このコマンドを使用すると、ログイベントの取得に使用できるログストリームの ID を取得します。

get-image-log-events

このコマンドを使用すると、ビルドイメージプロセスイベントのログストリームを取得できます。

例えば、以下のコマンドを使用して、ビルドイメージのイベントを追跡できます。

$ watch -n 1 'pcluster get-image-log-events -i <image-id> \ --log-stream-name/1 <pcluster-version> \ --query "events[*].message" | tail -n 50'

get-image-stack-events

このコマンドを使用すると、Image Builder が作成するスタックのイメージスタックイベントを取得できます。

export-image-logs

このコマンドを使用すると、イメージログを保存できます。

AWS ParallelCluster ログと Amazon の詳細については CloudWatch、「」Amazon CloudWatch Logs のビルドイメージログ と「」を参照してくださいAmazon CloudWatch ダッシュボード

その他の考慮事項

AWS ParallelCluster 新しいリリースとカスタム AMI

カスタム AMI を構築した場合は、新しい AWS ParallelCluster のリリースごとに、カスタム AMI を作成したときの手順を繰り返す必要があります。

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

カスタムブートストラップアクションセクションを確認して、加えたい変更をスクリプト化してfuture AWS ParallelCluster のリリースでサポートできるかどうかを判断してください。

カスタム AMI を使用する

Image/CustomAmi および Scheduling/SlurmQueues/ - Name/Image/CustomAmi セクションのクラスター設定でカスタム AMI を指定できます。

カスタム AMI 検証警告のトラブルシューティングについては、「カスタム AMI の問題のトラブルシューティング」を参照してください。