AWS CDK
AWS Cloud Development Kit
AWSインフラをコードで作成・管理するための開発キット。
一言でいうと
AWSインフラをコードで作成・管理するための開発キット。
概要
AWS CDKは、TypeScriptやPythonなどのプログラミング言語でAWSインフラを定義できるIaCツールです。
主な用途
- IaC管理
- 環境の再現
- 複数AWSリソースの一括構築
CLF-C02 試験ポイント
- Infrastructure as Codeの選択肢である
- CloudFormationを生成してAWSリソースを管理する
- 開発言語でインフラを定義できる
SAA-C03 試験ポイント
- 環境差分をコードレビューできる
- スタック単位でリソースを管理できる
- 削除操作の影響範囲を理解する必要がある
実際の使いどころ
AWS CDK(Cloud Development Kit)は、TypeScript / Python / Java / C# / Go などの 汎用プログラミング言語で AWS インフラを定義できる Infrastructure as Code(IaC) ツールである。CDK で書いたコード(CDK アプリ)は内部的に CloudFormation テンプレート に合成(synth)され、CloudFormation スタックとしてデプロイされる。実務では、複雑な リソース構成を再利用可能な Construct(コンポーネント)に切り出して標準化する用途、 環境ごと(dev / staging / prod)の差分をパラメータ化して同一コードから複数環境を 払い出す用途、Lambda 関数のコードとインフラ定義を 1 つの言語で完結させる用途で 採用される。 CloudFormation テンプレート(YAML / JSON)を直接書く場合と比べたメリットは、IDE 補完 や型チェックが効く、ループや条件分岐をプログラミング言語の構文で記述できる、再利用 可能な Construct ライブラリ(L1 / L2 / L3 Constructs / AWS Solutions Constructs)で ベストプラクティスをコードとして取り込める、といった点である。一方、CDK 経由でデプロイ された CloudFormation スタックを CDK を介さずに直接編集すると同期が崩れるため、運用 ルールとして「CDK 管理対象は CDK 経由でのみ変更する」原則を守る必要がある。CDK 自体 には課金されないが、作成された AWS リソースには通常通り料金が発生するため、誤って 高額リソースを作らないよう PR レビューでチェックする運用が望ましい。 CLF-C02 では、「インフラをコードで管理する選択肢は何か」「CloudFormation を生成して リソースを管理するツールは何か」という形で問われる。CloudFormation / CDK / Terraform (サードパーティ)の使い分けが論点になりやすく、CDK は「AWS 公式の IaC ツールで 汎用言語が使える」という位置付けを押さえておく。SAA-C03 以降では、スタック分割の 粒度、CDK Construct の階層(L1 = CloudFormation リソースの薄いラッパー / L2 = 安全な デフォルト付き / L3 = ベストプラクティスを束ねた高レベル)、本番環境へのデプロイ権限 制御が踏み込んで問われる。
公式ドキュメント
コスト注意点
- CDK自体に追加料金はないが、作成されるAWSリソースには課金される
- 誤って高額リソースを作らないようレビューする
セキュリティ注意点
- 作成されるIAM権限を確認する
- 本番環境へのデプロイ権限を制限する
関連サービス
関連する比較記事
この用語には、まだ関連比較記事が登録されていません。
関連する構成図
この用語には、まだ関連構成図が登録されていません。
タグ
最終更新日:2026-06-07