CloudFormation プライベートレジストリのモジュールの使用
このトピックでは、CloudFormation テンプレートでモジュールを使用する方法について説明します。モジュールは、テンプレートに追加できるリソースの事前作成されたバンドルと考えてください。
モジュールを使用するには、次の手順を実行してください。
-
モジュールの登録 – CloudFormation レジストリでモジュールをプライベート拡張機能として登録します。作業している AWS アカウント およびリージョンで登録されていることを確認します。詳細については、「CloudFormation レジストリの概念」を参照してください。
-
テンプレートに含める – 他のリソースと同様に、モジュールを CloudFormation テンプレートの CloudFormation テンプレートの Resources セクション構文リファレンス セクションに追加します。モジュールに必要なプロパティを指定する必要もあります。
-
スタックの作成または更新 – スタックオペレーションを開始すると、含まれているモジュールを適切なリソースに解決する処理済みテンプレートが CloudFormation によって生成します。
-
変更のプレビュー – 変更を行う前に、変更セットを使用して追加または変更されるリソースを確認できます。詳細については、「変更セットを使用して CloudFormation スタックを更新する」を参照してください。
次の例を考えてみましょう。リソースとモジュールの両方を含むテンプレートがあります。テンプレートには、1 つの個別のリソース ResourceA
とモジュール ModuleParent
が含まれます。このモジュールには、ResourceB
および ResourceC
の 2 つのリソースと、ネストされたモジュール ModuleChild
が含まれます。ModuleChild
には、1 つのリソース ResourceD
が含まれます。このテンプレートからスタックを作成すると、CloudFormation はテンプレートを処理し、モジュールを適切なリソースに解決します。結果のスタックには、ResourceA
、ResourceB
、ResourceC
、ResourceD
の 4 つのリソースがあります。
CloudFormation は、スタック内のどのリソースがモジュールから作成されたかを追跡します。この情報は、特定のスタックの [Events] (イベント)、[Resources] (リソース)、および [Drifts] (ドリフト) タブに表示できます。また、変更セットのプレビューにも表示されます。
モジュールはテンプレート内のリソースと区別できます。これは、リソースで使用される一般的な 3 つのパート規則とは対照的に、次の 4 つの部分からなる命名規則に従っているためです。
organization
::service
::use-case
::MODULE