IaC ジェネレーターを使用して既存のリソースからテンプレートを生成する - AWS CloudFormation

IaC ジェネレーターを使用して既存のリソースからテンプレートを生成する

IaC ジェネレーター (Infrastructure as Code ジェネレーター) では、まだ CloudFormation の管理対象になっていないアカウントにプロビジョニングされた AWS リソースを使用してテンプレートを生成することができます。

IaC ジェネレーターの利点は次のとおりです。

  • CloudFormation 管理でアプリケーション全体を使用するか、AWS CDK アプリに移行します。

  • プロパティでリソースプロパティを記述することなくテンプレートを生成し、それを JSON または YAML 構文に変換します。

  • 新しいアカウントかリージョンにリソースをレプリケートするときは、こちらのテンプレートを使用します。

IaC 生成プロセスは、以下のステップで構成されています。

  1. リソースのスキャン – 最初のステップは、リソースのスキャンを開始することです。このスキャンは、リージョン全体で、30 日間続きます。この間、同じスキャンから複数のテンプレートを作成できます。

  2. テンプレートの作成 – テンプレートを作成するには、次の 2 つのオプションがあります。

    • 新しいテンプレートを最初から作成し、スキャンしたリソースと関連リソースをそこに追加します。

    • 既存の CloudFormation スタックを開始点として使用して、スキャンされたリソースと関連リソースをそのテンプレートに追加します。

  3. リソースのインポート – テンプレートを使用して、リソースを CloudFormation スタックとしてインポートするか、AWS CDK アプリに移行します。

IaC ジェネレーターの機能は、すべての商用リージョンで利用可能で、多くの一般的な AWS リソースタイプをサポートしています。詳細なリストについては、「リソースタイプのサポート」を参照してください

考慮事項

ユーザーは、読み取りアクセス許可を持つリソースに対して、CloudFormation レジストリに発行される AWS リソースの JSON または YAML テンプレートを生成できます。IaC ジェネレーターの機能のテンプレートは、リソースプロパティをプロパティごとに記述することなく、クラウドリソースを確実かつ迅速にモデル化します。

次の表は、IaC の生成機能に使用できるクォータの一覧です。

名前 Value

1 回のアカウントスキャンで処理できるリソースの最大数

100000

1 日あたりのスキャン数 (リソースが 10,000 未満のアカウントの場合)

3

1 日あたりのスキャン数 (リソースが 10,000 以上のアカウントの場合)

1

アカウントあたりの同時に生成されるテンプレートの数

5

1 回のテンプレート生成で同時にモデル化されるリソースの数

5

1 つのテンプレートでモデル化できるリソースの合計数

500

生成されたテンプレートのアカウントあたりの最大数

1,000

重要

IaC ジェネレーターは、お使いのリージョンの Cloud Control API でサポートされているリソースのみをサポートします。詳細については、「Cloud Control API ユーザーガイド」の「リソースタイプが Cloud Control API をサポートしているかどうかの判断」を参照してください。

テンプレートの生成、管理、削除によく使用されるコマンド

IaC ジェネレーターの操作用によく使用されるコマンドには以下が含まれます。

テンプレートを AWS CDK に移行する

AWS Cloud Development Kit (AWS CDK) は、一般的なプログラミング言語を使って CloudFormation リソースを開発、管理、デプロイするときに使用できるオープンソースのソフトウェア開発フレームワークです。

AWS CDK CLI は、IaC ジェネレーターとの統合を提供します。CloudFormation テンプレートを変換し、ユーザーのリソースを含む新しい CDK アプリを作成するには、AWS CDK CLI cdk migrate コマンドを使用します。その後、AWS CDK を使用してリソースを管理し、CloudFormation にデプロイできます。

詳細については、「AWS Cloud Development Kit (AWS CDK) デベロッパーガイド」の「Migrate to AWS CDK」を参照してください。