

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

# AWS ParallelCluster AMI のカスタマイズ
<a name="custom-ami-v3"></a>

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

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

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

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

これらの方法の詳細については、「[カスタム AMI AWS ParallelCluster の構築](building-custom-ami-v3.md)」を参照してください。

## AWS ParallelCluster AMI のカスタマイズに関する考慮事項
<a name="custom-ami-considerations-v3"></a>

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

`pcluster` を使用してカスタム AMI を構築するには、[EC2 Image Builder](https://docs.aws.amazon.com/imagebuilder/latest/userguide/what-is-image-builder.html) がカスタムイメージのビルドに使用する [`Build`](Build-v3.md) および [`Image`](Image-v3.md#Image-v3.properties) セクションを含む[ビルドイメージ設定ファイル](image-builder-configuration-file-v3.md)を作成します。`Build` セクションでは、Image Builder がイメージを構築するために必要なものを指定します。これには [`ParentImage`](Build-v3.md#yaml-build-image-Build-ParentImage) (ベースイメージ)、および [`Components`](Build-v3.md#Build-v3-Components) が含まれます。[Image Builder コンポーネント](https://docs.aws.amazon.com/imagebuilder/latest/userguide/toe-component-manager.html)は、イメージが作成される前にインスタンスをカスタマイズしたり、作成されたイメージによって起動されたインスタンスをテストしたりするために必要な一連の手順を定義します。詳細については、EC2 [Image Builder ユーザーガイドの「Image Builder を使用してカスタムコンポーネントを作成する](https://docs.aws.amazon.com/imagebuilder/latest/userguide/create-component.html)」を参照してください。 *EC2 *

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

## カスタムコンポーネントの検証テストを実行する
<a name="custom-ami-validation-v3"></a>

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

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

**Amazon リソースネーム (ARN) のケース**  
ビルドイメージプロセスの外で、実行中のインスタンスでコンポーネントドキュメントをテストします。要件のリストについては、「Image Builder ユーザーガイド**」の「[コンポーネントマネージャ](https://docs.aws.amazon.com/imagebuilder/latest/userguide/toe-component-manager.html)」を参照してください。

**検証に成功後、ビルドイメージ設定にコンポーネントを追加する**  
カスタムコンポーネントが動作していることを確認したら、[ビルドイメージ設定ファイル](image-builder-configuration-file-v3.md)に追加します。

## デバッグに役立つ `pcluster` コマンドを使用して Image Builder プロセスを監視する
<a name="custom-ami-monitor-v3"></a>

[`describe-image`](pcluster.describe-image-v3.md)

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

[`list-image-log-streams`](pcluster.list-image-log-streams-v3.md)

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

[`get-image-log-events`](pcluster.get-image-log-events-v3.md)

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

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

```
$ 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`](pcluster.get-image-stack-events-v3.md)

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

[`export-image-logs`](pcluster.export-image-logs-v3.md)

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

 AWS ParallelCluster ログと Amazon CloudWatch の詳細については、[Amazon CloudWatch Logs のビルドイメージログ](cloudwatch-logs-v3.md#cloudwatch-logs-build-images)「」および「」を参照してください[Amazon CloudWatch ダッシュボード](cloudwatch-dashboard-v3.md)。

## その他の考慮事項
<a name="custom-ami-other-v3"></a>

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

**カスタムブートストラップアクション**  
[カスタムブートストラップアクション](custom-bootstrap-actions-v3.md) セクションを確認して、今後の AWS ParallelCluster リリースで変更をスクリプト化してサポートできるかどうかを確認します。

**カスタム AMI を使用する**  
[`Image`](Image-v3.md)/[`CustomAmi`](Image-v3.md#yaml-Image-CustomAmi) および [`Scheduling`](Scheduling-v3.md)/[`SlurmQueues`](Scheduling-v3.md#Scheduling-v3-SlurmQueues)/ - [`Name`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-Name)/[`Image`](Scheduling-v3.md#Scheduling-v3-SlurmQueues-Image)/[`CustomAmi`](Scheduling-v3.md#yaml-Scheduling-SlurmQueues-Image-CustomAmi) セクションのクラスター設定でカスタム AMI を指定できます。  
カスタム AMI 検証警告のトラブルシューティングについては、「[カスタム AMI の問題のトラブルシューティング](troubleshooting-v3-custom-amis.md)」を参照してください。