無限ノック › DOP 練習問題一覧 › 問題
DOP構成管理と Infrastructure as Code (IaC)

大手小売企業のプラットフォームチームは、200以上のCloudFormationテンプレートにわたって、すべてのリソース名に標準パターン({事業部}-{環境名}-{リソースタイプ}-{連番})を自動適用したいと考えています。個々のテンプレートへの修正を最小限に抑えつつ、デプロイ時にテンプレート全体を動的に変換する仕組みを実装したいと考えています。この要件を満たす最も適切なアプローチはどれですか?

A
CloudFormation StackSetsを使用して、すべてのアカウント・リージョンに同一テンプレートをデプロイし、パラメータでリソース名を制御する
StackSets はマルチアカウント・マルチリージョンへの同一テンプレート展開を管理する機能であり、テンプレートの内容(リソース名など)を動的に変換する仕組みを持たない。200 テンプレートへの一括命名変換には不向き。
B
AWS CloudFormation Macrosを作成し、Lambda関数でテンプレートのJSON/YAMLを解析・変換してリソース名を書き換える処理を実装する
✓ 正解
Macros はデプロイ前に Lambda でテンプレート全体を変換できる。Transform セクションへの 1 行追加だけで 200 以上の既存テンプレートへの修正を最小限に抑えながらリソース名を自動書き換えできる最適な方法。
C
AWS CDK Aspectsを使用して、すべてのCDKコンストラクトに対してリソース名の上書き処理を適用する
CDK Aspects は CDK コンストラクトに対してのみ適用可能で、既存の CloudFormation テンプレート(JSON/YAML)には使用できない。全テンプレートを CDK に移行しない限り本要件への対応は不可。
D
CloudFormation カスタムリソースをテンプレートに追加し、Lambda関数でデプロイ後にリソース名の変更処理を実行する
カスタムリソースはデプロイ時に Lambda を呼び出して外部リソースを管理する仕組みであり、テンプレート自体の変換機能はない。デプロイ後のリソース名変更はリソースの再作成を伴う可能性があり要件を満たさない。

解説

CloudFormation Macros は、テンプレートのデプロイ前に Lambda 関数でテンプレート全体を変換する機能です。`Transform` セクションにマクロ名を 1 行追加するだけで既存テンプレートへの修正を最小限に抑えながら、リソース名を命名規則に従って動的に書き換えられます。 選択肢A の CloudFormation StackSets はマルチアカウント・マルチリージョン展開を管理する仕組みであり、テンプレートの内容を動的に変換する機能を持ちません。パラメータによる制御では 200 以上のテンプレートへの統一的な命名規則の自動適用が困難です。 選択肢C の AWS CDK Aspects は CDK コンストラクトのプロパティを横断的に変更する機能ですが、既存の CloudFormation テンプレート(JSON/YAML ファイル)には適用できません。CDK への全面移行が前提となり、現行テンプレートそのままの利用は不可能です。 選択肢D の CloudFormation カスタムリソースはデプロイ時に Lambda を呼び出して外部リソースを管理するためのものです。テンプレート自体を変換する機能はなく、デプロイ後のリソース名変更はリソースの再作成を招く場合があり要件を満たしません。

ドメイン別正答率・予想スコアでリアルタイムに実力把握

無限ノックでDOPを徹底対策。全問AI生成のオリジナル問題。

無料で演習を始める →
← DOP の問題一覧に戻る