翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
カスタム AWS ParallelCluster AMI の構築
重要
AWS ParallelCluster をカスタマイズするためのアプローチとして、カスタム AMI を構築することはお勧めしません。
なぜなら、独自の AMI を構築した後、AWS ParallelCluster の今後のリリースでアップデートやバグ修正を適用できなくなります。さらに、カスタム AMI を構築した場合は、新しい AWS ParallelCluster のリリースごとに、カスタム AMI を作成したときの手順を繰り返す必要があります。
この先をお読みになる前に、まず、カスタムブートストラップアクションのセクションをご覧になり、ご希望の変更がスクリプト化され、今後の AWS ParallelCluster のリリースでサポートされるかどうかをご確認いただくことをお勧めします。
前述の理由により、カスタム AMI の構築は理想的ではありませんが、AWS ParallelCluster 用のカスタム AMI の構築が必要なシナリオもあります。このチュートリアルでは、これらのシナリオに対応するカスタム AMI を構築する手順を説明します。
注記
AWS ParallelCluster バージョン 2.6.1 以降、ほとんどのインストールレシピはノードの起動時にデフォルトでスキップされます。これは、起動時間を短縮するためです。起動時間の短縮よりも下位互換性の向上を優先させるために、すべてのインストールレシピを実行するには、extra_json 設定の cluster
キーに "skip_install_recipes" : "no"
を追加します。例:
extra_json = { "cluster" : { "skip_install_recipes" : "no" } }
前提条件
-
AWS ParallelCluster がインストールされている。
-
AWS CLI がインストールされ、設定されている。
-
EC2 キーペアがある。
AWS ParallelCluster AMI をカスタマイズする方法
カスタム AWS ParallelCluster AMI を使用するには、次のセクションで説明する 3 つの方法があります。これら 3 つの方法のうち、2 つの方法では、AWS アカウント アカウントで使用できる新しい AMI を構築する必要があります。3 番目の方法 (実行時にカスタム AMI を使用する) では、事前に何かを構築する必要はありませんが、デプロイにはリスクが伴います。お客様のニーズに最適なものを選択してください。
AMI を変更する
これが最も安全で推奨される方法です。ベースとなる AWS ParallelCluster AMI は新しいリリースに合わせて頻繁に更新されるため、この AMI には、AWS ParallelCluster をインストールして設定した後、正しく機能するために必要なすべてのコンポーネントが含まれています。これは、ベースとして起動できます。
カスタム AWS ParallelCluster AMI を構築する
カスタマイズされた AMI とソフトウェアがすでに導入されている場合は、AWS ParallelCluster で必要な変更を適用することができます。
-
ローカルシステムに AWS ParallelCluster CLI とともに以下をインストールします。
-
Packer: Packer ウェブサイト
から OS の最新バージョンを探してインストールします。 バージョンは 1.4.0 以上である必要がありますが、最新のバージョンを推奨します。 packer
コマンドがパスにあるかどうかを確認します。
注記
AWS ParallelCluster バージョン 2.8.0 以前では、
pcluster createami
を使用するためには (gem install berkshelf
を使用してインストールされた)Berkshelfが必要でした。 -
-
Packer がユーザーに代わって AWS API オペレーションを呼び出すことができるように、AWS アカウント の認証情報を設定します。Packer が動作するために必要な最小限のパーミッションのセットは、Packer ドキュメントの「Amazon AMI Builder」の「IAM Task or Instance Role」
(トピックの IAM タスクまたはインスタンスのロール) セクションに記載されています。 -
ベースとして提供したものから始めて AWS ParallelCluster AMI を構築するために AWS ParallelCluster CLI の
createami
コマンドを使用できるようになります。pcluster createami --ami-id
<BASE_AMI>
--os<BASE_AMI_OS>
重要
実行中のクラスターの AWS ParallelCluster AMI を
createami
コマンドの<BASE_AMI>
として使用することはできません。そうしなければ、コマンドは失敗します。その他のパラメータについては、「pcluster createami」を参照してください。
-
ステップ 4 のコマンドは Packer を実行し、具体的には以下の処理を実行します。
-
提供されているベース AMI を使用してインスタンスを起動します。
-
AWS ParallelCluster クックブックをインスタンスに適用し、関連ソフトウェアのインストールやその他の必要な設定を行います。
-
インスタンスを停止します。
-
インスタンスから新しい AMI を作成します。
-
AMI の作成後にインスタンスを終了します。
-
クラスターの作成に使用する新しい AMI ID 文字列を出力します。
-
-
クラスターを作成するには、クラスター設定内の [custom_ami] フィールドに AMI ID を入力します。
注記
カスタムの AWS ParallelCluster AMI の構築に使用するインスタンスタイプは t2.xlarge
です。このインスタンスタイプは AWS の無料利用枠には該当しないため、この AMI を構築した際に作成されたインスタンスは課金されます。
実行時にカスタム AMI を使用する
警告
AWS ParallelCluster と互換性のない AMI を使用するリスクを避けるため、この方法は使用しないことをお勧めします。
実行時にテストされていない可能性のある AMI を使用してコンピューティングノードを起動すると、AWS ParallelCluster に必要なソフトウェアのランタイムインストールとの互換性がないために、AWS ParallelCluster が動作しなくなる可能性があります。
事前に何も作りたくない場合は、手持ちの AMI を使い、その AMI から AWS ParallelCluster を作ることができます。
この方法では、クラスター作成時に AWS ParallelCluster が必要とするソフトウェアをすべてインストールする必要があるため、AWS ParallelCluster の作成に時間がかかります。さらに、スケールアップにも時間がかかります。
-
クラスター設定内の [custom_ami] フィールドに AMI ID を入力します。