AWS CloudFormation IaC generatorを試してみた。
概要
IaC generator は CloudFormation の機能であり、CloudFormation スタックで管理されていないアカウント内のリソースの CloudFormation テンプレートと AWS CDK アプリを生成するために使用できます。CloudFormation テンプレートは、JSON と YAML の 2 つの形式で生成されます。この記事では CloudFormation が管理していない VPC の CloudFormation スタックの生成を試してみました。
CloudFormation スタックまたは CDK アプリを作成する手順:
- アカウント内のリソースをスキャンします。
- リソースを選択して CloudFormation テンプレートを作成します。
- リソースをスタックまたは CDK アプリにインポートします。
やってみた
アカウントをスキャンする
- CloudFormation コンソールで IaC generator を選択しておきます。
- [Start a new scan] を選択して、アカウント内のリソースのスキャンします。
- スキャンが完了すると、スキャンのステータスが完了に変わり、テンプレートの作成を開始できます。
テンプレートを作成する
- [Create template] を選択し、テンプレートの名前を入力します。
- [Deletion policy], [Update replace policy] として [Retain] を選択しておきます。[Retain] または [Delete] を選択できます。
- スキャンされたリソースのリストからリソース [VPC] を選択しておきます。CloudFormation によって管理されていないリソースのみを選択できます。
- 前のステップで選択したリソースに関連付けられたリソースのリストが取得されます。デフォルトではすべてのリソースが選択されていますが、テンプレートで必要なリソースのみを選択できます。これでテンプレートが作成されます。
CloudFormation スタックを作成する
- 前の手順で作成したテンプレートを開きます。
- テンプレートをダウンロードでき、表示されたコマンドを実行して CDK アプリケーションを生成することもできます。
- [Template definition]タブで [Import a stack] を選択しておきます。スタックの名前を入力し、CloudFormation スタックを作成しておきます。
- スタックが作成されると、ステータスが [IMPORT_COMPLETE] に変わります。これで、選択したすべてのリソースがスタックにインポートされました。要件に応じて CDK アプリケーションを作成することもできます。
まとめ
IaC generator は、コードを書かずに数分以内に AWS リソースを Infrastructure as Code (IaC) にインポートするのに役立ちます。
Refrence: