無限ノック › SOA 練習問題一覧 › 問題
SOAデプロイ、プロビジョニング、および自動化

あるプラットフォームエンジニアリングチームは、複数のアプリケーションチームが利用できる標準化された再利用可能なインフラコンポーネント(VPC・ECSクラスター・RDS など)を提供する必要があります。アプリケーションチームは TypeScript を主に使用しており、IDE のコード補完・型安全性・ユニットテスト機能を活用してインフラを定義したいと考えています。プラットフォームチームが社内ベストプラクティスを封じ込めた高レベルな抽象化を提供する場合、最も適切なアプローチはどれですか?

A
AWS CDK でカスタム Construct を作成し、TypeScript パッケージとして内部 npm レジストリで公開して各アプリケーションチームが利用できるライブラリとして提供する
✓ 正解
AWS CDK の Construct を TypeScript パッケージとして配布することで、型安全性・IDE コード補完・ユニットテスト(Jest)を完全サポートし、プログラミング言語の抽象化機能を活かした再利用可能なインフラライブラリを実現できます。
B
AWS CloudFormation のネストされたスタックとクロススタック参照を使用し、共通テンプレートを S3 バケットで管理してアプリケーションチームと共有する
CloudFormation ネストスタックは YAML/JSON テンプレートによるリソース共有を提供しますが、TypeScript の IDE 補完・型チェック・ユニットテスト機能はなく、プログラミング言語での高レベル抽象化という要件を満たしていません。
C
AWS Service Catalog でポートフォリオとプロダクトを作成し、承認済み CloudFormation テンプレートを各アプリケーションチームに提供して利用申請させる
Service Catalog は承認済みテンプレートのカタログ管理とガバナンスに強みがありますが、TypeScript でのプログラマティックなインフラ定義や IDE 補完・型安全性・ユニットテストという要件には対応していません。
D
AWS CloudFormation カスタムモジュールをプライベートレジストリに登録し、各チームのテンプレートで再利用可能なリソース定義として参照できるようにする
CloudFormation モジュールはテンプレート内でのリソース定義の再利用を可能にしますが、TypeScript の型安全性や IDE 補完・ユニットテスト機能を提供せず、プログラミング言語による高レベル抽象化という要件を満たしません。

解説

AWS CDK(Cloud Development Kit)は TypeScript などの汎用プログラミング言語でインフラを定義できるフレームワークです。L3 Construct(Pattern Construct)と呼ばれる高レベル抽象化を作成することで、複数の AWS リソースをベストプラクティスで構成した再利用可能なコンポーネントをパッケージ化できます。TypeScript パッケージとして内部 npm レジストリに公開することで、アプリケーションチームは IDE のコード補完・型安全性・ユニットテスト(Jest)を活用しながらインフラを定義でき、ループや条件分岐などプログラミング言語の機能をそのまま使えます。 選択肢AのAWS CDK カスタム Construct は TypeScript パッケージとして npm レジストリで配布でき、IDE の補完・型チェック・ユニットテストをフル活用したプログラマティックなインフラ定義が実現できます。問題の要件(TypeScript・IDE 補完・型安全性・ユニットテスト・高レベル抽象化)をすべて満たします。 選択肢BのCloudFormation ネストスタックは YAML/JSON テンプレートベースであり、TypeScript の IDE 補完・型チェック・ユニットテスト機能を直接提供できません。クロススタック参照でのリソース共有は可能ですが、プログラマティックな高レベル抽象化という要件は実現できません。 選択肢CのAWS Service Catalog は承認済みテンプレートのカタログ管理とガバナンスに優れますが、TypeScript でのプログラマティックなインフラ定義や IDE 補完・型安全性・ユニットテストという要件には対応していません。 選択肢DのCloudFormation モジュールは、テンプレート内での CloudFormation リソース定義の再利用を可能にしますが、TypeScript の型安全性・IDE 補完・ユニットテスト機能は提供されず、プログラミング言語による高レベル抽象化もできません。

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

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

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