AWS CDKとは?
AWS CDK(Cloud Development Kit)は、インフラストラクチャをコード(IaC)として定義するためのフレームワーク。
- 開発者はTypeScript、JavaScript、Pythonなどのプログラミング言語を使用して、AWSリソースを定義・デプロイできる
- 複雑な設定を簡潔なコードで表現できるので、手動設定のミスを減らし、開発速度と運用効率を向上させる
利用可能な言語の中で、Typescriptが最も利用されており、リファレンスやサンプルも多い非常に多い。
AWS CDKの構成要素
AWS CDKのプロジェクトを構成する要素は大きく「App」「Stack」「Construct」の3つ。
(参考:https://docs.aws.amazon.com/ja_jp/cdk/v2/guide/home.html)
- App
- AWS CDKプロジェクトの最上位の概念。アプリ―ケション全体。
- Stack
- App配下に紐づくリソース。Stack単位でCloudFormationのスタックが生成・デプロイされる。
- Construct
- Stack配下に紐づくリソース。1つまたは複数のAWSりろーすを表現。これをStack内で組み合わせることで、リソースの設定値などを定義する。
Construct Libraryについて
Constructには、L1, L2, L3 の3種類がある。数字が大きくなるごとに抽象度が上がる。
抽象度が上がると、定義するパラメータが減りラクだが、その分何が設定されているかわかりづらくなるので、ここではバランスのよいL2Constructを推奨。