Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWS CDKの推しポイントN選
Search
アキキー | Akihisa Ikeda
November 25, 2025
Programming
330
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AWS CDKの推しポイントN選
アキキー | Akihisa Ikeda
November 25, 2025
More Decks by アキキー | Akihisa Ikeda
See All by アキキー | Akihisa Ikeda
ドリフトを絶対に許さない(?)CDK運用 / CDK Ops with Zero Tolerance for Drifts (?)
akihisaikeda
0
66
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
3
4.4k
ECR拡張スキャンでSBOMを収集して サプライチェーン攻撃の影響調査を 爆速で終わらせてみた
akihisaikeda
2
280
AWSはOSSをどのように 考えているのか?
akihisaikeda
1
170
最初からAWS CDKで技術検証してもいいんじゃない?
akihisaikeda
4
250
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
5
260
地獄絵図!CDKプロジェクトを手動更新して生まれた大量のプロパティ差分を解消する方法
akihisaikeda
5
1.5k
AWS CDK初期設定のプラクティス集 with Projen
akihisaikeda
2
490
AWS CDKの推しポイント 〜CloudFormationと比較してみた〜
akihisaikeda
5
810
Other Decks in Programming
See All in Programming
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
450
AWS CDK を「作」ってみた 〜フルスクラッチで見えた CDK の裏側〜 / aws-cdk-from-scratch
gotok365
3
2.7k
Apache Hive: そしてCloud Native Lakehouseへ
okumin
1
190
テーブルをDELETEした
yuzneri
0
120
AI時代に設計が 最大の生産性レバーになる 意図駆動開発とデータを消さない設計|Don't Delete Your Data or Your Intent — Design as the Deepest Lever in the AI Era
tomohisa
0
120
「寝てても仕事が進む」Claude Codeで組む第二の脳
tomoyafujita2016
0
200
Laravel Boostに学ぶ、AIにPHPを書かせる技術 〜OSSの実装から蒸留するエージェント制御の王道〜
kentaroutakeda
3
560
Android CLI
fornewid
0
190
霧の中の代数的エフェクト
funnyycat
1
440
GDG Korea Android: 2026 I/O Extended ~ What's new in Android development tools
pluu
0
190
【やさしく解説 設計編・中級 #6】良いアーキテクチャとは ~ 一本の登り道の、行き先 ~
panda728
PRO
0
190
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
180
Featured
See All Featured
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
200
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
640
jQuery: Nuts, Bolts and Bling
dougneiner
66
8.5k
Believing is Seeing
oripsolob
1
170
A better future with KSS
kneath
240
18k
The Invisible Side of Design
smashingmag
301
52k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
330
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
The Pragmatic Product Professional
lauravandoore
37
7.4k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
190
My Coaching Mixtape
mlcsv
0
180
Transcript
UV Study : AWS LT 会 〜現場で活きる、ちょっとした工夫と発見〜 AWS CDK の推しポイント
N 選 2025.11.25(火) 池田 晃尚(@akikii__) 1
自己紹介 アキキー | 池田 晃尚 (@akikii__) Backend / SRE エンジニア
AWS CDK が推し CDK コントリビューター AWS CDK の推しポイント N 選 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 2
AWS CDK とは? AWS CDK の推しポイント N 選 - AWS
CDKとは? UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 3
AWS リソースをデプロイするときの主な選択肢 CLI Management Console SDK リソースの設定をコードで定義してデプロイ操作 AWS コンソールから画⾯操作でデプロイ CLI
からコマンド実⾏でデプロイ アプリケーションからSDK を呼び出してデプロイ IaC AWS CDK の推しポイント N 選 - AWS CDKとは? UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 4
IaC(Infrastructure as Code)とは? インフラリソースをコードで定義して管理する手法 「状態管理」を通じてデプロイ前後のリソースを比較し、変更点をデプロイする AWS CDK の推しポイント N 選
- AWS CDKとは? UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 5
AWS CDK とは? AWS のインフラリソースをプログラミング言語で定義して管理する IaC ツール CDK の対応言語:TypeScript, Python,
Go, JavaScript, Java, C#, F# AWS CDK の推しポイント N 選 - AWS CDKとは? UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 6
AWS CDK とは? 内部では CloudFormation(CFn)を利用している CDK のコードは CFn テンプレート(JSON/YAML)へ合成される 状態は
CFn のスタックを利用している AWS CDK の推しポイント N 選 - AWS CDKとは? UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 7
推しポイントの紹介 IaC 編 IDE(統合開発環境)編 AWS CDK のコアコンセプト編 AWS CDK の推しポイント
N 選 - 推しポイントの紹介 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 8
IaC 編 AWS CDK の推しポイント N 選 - IaC編 UV
Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 9
推しポイント ①: Git 管理できる テキストファイルなので Git で差分管理できる レビュワーは、変更箇所に絞って確認できる 最新の状態を確認できる AWS
CDK の推しポイント N 選 - IaC編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 10
推しポイント ②: リソースの設定を集約できる AWS コンソールからリソースの関係性を読み解くにはコツが必要 リソースの設定が Git リポジトリに集約されているので関係性の把握がしやすい AWS CDK
の推しポイント N 選 - IaC編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 11
推しポイント ③: デプロイの安全性が向上する AWS コンソールで手動デプロイすると、クリックミスや設定漏れが起きやすい IaC ではデプロイ前にレビューできるため、意図しない変更やミスを未然に防ぎや すい AWS CDK
の推しポイント N 選 - IaC編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 12
IDE(開発統合環境)編 AWS CDK の推しポイント N 選 - IDE編 UV Study
: AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 13
推しポイント ④: コード補完が効く コードの予測をしてくれる機能 コードを途中まで入力したら予測を出してくれたり、階層構造になっているプロ パティの一覧を出せたりする。 AWS CDK の推しポイント N
選 - IDE編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 14
推しポイント ⑤: ドキュメントをすぐ読める オブジェクトにマウスオーバーするとドキュメントを確認できる機能 TypeScript の場合、CDK のソースコードの JSDoc が読める AWS
CDK の推しポイント N 選 - IDE編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 15
推しポイント ⑥: 構文エラーがわかる 構文が間違っていた場合にエラーメッセージを表示する機能 型エラーや typo など、気付きづらい間違いを検出できる AWS CDK の推しポイント
N 選 - IDE編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 16
AWS CDK のコアコンセプト編 AWS CDK の推しポイント N 選 - CDKコアコンセプト編
UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 17
推しポイント ⑦: Construct 1 つ以上の AWS リソースの設定が定義されているコンポーネント リソースの抽象度によってレベル分けがされている CloudFormation Stack
L2 Construct L3 Construct ApplicationLoadBalancedFargateService Bucket Bucket CfnBucket L1 Construct 抽象度 ⼩ ⼤ ・・・ AWS CDK の推しポイント N 選 - CDKコアコンセプト編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 18
推しポイント ⑦: Construct L1 Construct(抽象度:小) リソースのプロパティが CloudFormation のプロパティと 1:1 で対応している
CloudFormation Template S3 Bucket CDK L1 Construct aws_s3.CfnBucket 1:1 で対応 AWS CDK の推しポイント N 選 - CDKコアコンセプト編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 19
推しポイント ⑦: Construct L2 Construct(抽象度:中) リソースのプロパティが扱いやすいように抽象化されている CDK L2 Construct aws_s3.Bucket
CloudFormation Template 対応 抽象化 S3 Bucket KMS Key ⾃動的に作成 ( 指定しない場合) AWS CDK の推しポイント N 選 - CDKコアコンセプト編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 20
推しポイント ⑦: Construct L2 Construct: 直感的にわかりやすいプロパティに抽象化されている 例:VPC の L2 Construct
VPC (10.0.0.016) Subnets IGW NAT GW Public Subnet (AZ-c) Private Subnet (AZ-a) Private Subnet (AZ-c) Public Subnet (AZ-a) ・・・ RTB CDK ソースコード(15 ⾏) CFn テンプレート (266 ⾏) AWS Cloud AWS CDK の推しポイント N 選 - CDKコアコンセプト編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 21
推しポイント ⑦: Construct L2 Construct: 関連するリソースを解釈して作成してくれる 例:Lambda 関数の L2 Construct
デフォルトでは⾃動的に作成される CDK L2 Construct aws_lambda.Function IAM Policy Lambda 関数 CloudWatch Logs Lambda 実⾏ロール CreateLogGroup CreateLogStream PutLogEvents ✅ AWS Cloud AWS CDK の推しポイント N 選 - CDKコアコンセプト編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 22
推しポイント ⑦: Construct 自作 Construct L1 や L2 などの Construct
を組み合わせて自作の Construct を定義できる 自作 Construct も他の自作 Construct に組み込める AWS CDK の推しポイント N 選 - CDKコアコンセプト編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 23
推しポイント ⑧: Permissions Grants で直感的に許可設定が付与できる 例:Lambda 関数 → S3 バケット
へ読み取りを許可したい IAM Policy ✅ Lambda 実⾏ロール Lambda 関数 S3 バケット GetObject* GetBucket* List* AWSLambdaBasic ExecutionRole ✅ AWS CDK の推しポイント N 選 - CDKコアコンセプト編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 24
推しポイント ⑨: バリデーション L2 Construct: プロパティの値をバリデーションしている デプロイするときにエラーになる内容を検証 CFn テンプレート合成時に検証される AWS CDK
の推しポイント N 選 - CDKコアコンセプト編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 25
推しポイント ⑩: Aspects Construct Tree について App をルートとするツリー構造 App...1つ以上のスタックを含む コレクション
Stack...デプロイの最小単位 Construct...L1, L2, 自作 Construct 等 AWS CDK の推しポイント N 選 - CDKコアコンセプト編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 26
推しポイント ⑩: Aspects Aspects とは? Construct Tree の特定のスコー プ配下全てに操作を適用する機 能
バリデーション プロパティ更新...など 対象リソースを絞れる AWS CDK の推しポイント N 選 - CDKコアコンセプト編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 27
推しポイント ⑩: Aspects ユースケース 全てのリソースにタグをつける(環境、プロジェクトなど) 開発環境のリソース全てに削除保護しない設定を適用する リソースが会社のポリシーに対応しているか検査する AWS CDK の推しポイント
N 選 - CDKコアコンセプト編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 28
推しポイント ⑪: 単体テスト デプロイ対象のリソースが正しい値になるか検証できる スナップショットテスト Template (旧) Template (新) ⽣成
⽣成 CDK ⽐較 Test Fine-grained assertion テスト バリデーションテスト VPC Public Subnet Private Subnet Private Subnet Public Subnet 検証 Subnet の数は4 個? VPC flow log は有効? Test Stack Fargate メモリは2GB 以上 かつ16GB 以下? Test 変更差分が想定したものか検証 想定したパラメータに設定されているか検証 バリデーションの境界値検証 参考:AWS CDK における単体テストの使い所を学ぶ AWS CDK の推しポイント N 選 - CDKコアコンセプト編 UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 29
推しポイントおさらい IaC 編 ① Git 管理できる ② リソースの設定を集約できる ③ デプロイの安全性が向上する
IDE 編 ④ コード補完が効く ⑤ ドキュメントをすぐ読める ⑥ 構文エラーがわかる コアコンセプト編 ⑦ Construct ⑧ Permissions ⑨ Validation ⑩ Aspects ⑪ 単体テスト AWS CDK の推しポイント N 選 - 推しポイントおさらい UV Study : AWS LT会 〜現場で活きる、ちょっとした工夫と発見〜 30
ご清聴ありがとうございました! 31