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 経験者が CDK for Terraform 使ってみた / I tried ...
Search
yayoi_dd
March 28, 2024
Technology
3.9k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AWS CDK 経験者が CDK for Terraform 使ってみた / I tried using CDK for Terraform
弥生株式会社 もくテク
インフラ構築、どうしてる? ~IaCの知見共有会~(2024/03/28)
https://mokuteku.connpass.com/event/311038/
yayoi_dd
March 28, 2024
More Decks by yayoi_dd
See All by yayoi_dd
JSAI2026ランチョンセミナー登壇テーマ「AIと挑む確定申告」/Tackling Tax Returns with AI
yayoi_dd
0
120
勘定科目の推論機能における運用/Operations of Account Category Inference
yayoi_dd
0
120
AWS re:Invent 2025 参加報告 / AWS re:Invent 2025 Participation Report
yayoi_dd
0
30
re:Inventの学びを最大化するためにしたこと / What I Did to Maximize Learning at re:Invent
yayoi_dd
0
36
Werner Vogelsが語った”T型人材” / "T-Shaped Talent" as Discussed by Werner Vogels
yayoi_dd
0
41
AI駆動開発のさらにその先へ / Beyond AI-Driven Development
yayoi_dd
0
54
AWS DevOps Agentで見えた運用の未来 / The Future of Operations with AWS DevOps Agent
yayoi_dd
0
33
OpenSearch Warm Tier設計の実践 / Practical Implementation of OpenSearch Warm Tier Design
yayoi_dd
0
59
なぜ私たちは「生成AI-LT大会」を終了するのか / Why we are ending the Generative AI-LT competition
yayoi_dd
0
84
Other Decks in Technology
See All in Technology
探索・可視化・自動化を一本化 Amazon Quickでデータ活用スピードを上げる方法
koheiyoshikawa
0
170
それでも、技術なブログを書く理由 #kichijojipm / Why I Still Write Tech Blogs Even Now
shinkufencer
0
230
どこまでAIに任せるか 〜確率論と決定論の境界決定〜
shukob
0
440
AIツールを導入しても生産性はあがらない? カオナビが直面した 3つの壁と乗り越え方。/ Overcoming 3 Barriers to AI-Driven Productivity at kaonavi
kaonavi
0
150
生成 AI 時代にいま一度「問い合わせ」について考えてみる
kazzpapa3
1
130
発表と総括 / Presentations and Summary
ks91
PRO
0
190
VPCセキュリティ対応の最新事情
nagisa53
1
200
AI時代におけるテストの基礎の再定義 / Rethinking the Fundamentals of Testing in the AI Era
mineo_matsuya
12
4k
_NIKKEI_Tech_Talk__勉強会は熱量では続かない___17回続いた輪読会の設計術.pdf
_awache
1
100
Oracle Exadata Database Service on Cloud@Customer X11M (ExaDB-C@C) サービス概要
oracle4engineer
PRO
2
8.5k
AIが当たり前の組織で エンジニアはどう育つか
nishihira
1
950
“それは自分の仕事じゃない"を越えて行け
yuukiyo
1
520
Featured
See All Featured
Testing 201, or: Great Expectations
jmmastey
46
8.2k
The Power of CSS Pseudo Elements
geoffreycrofte
82
6.5k
Scaling GitHub
holman
464
140k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.5k
Design in an AI World
tapps
1
260
Optimising Largest Contentful Paint
csswizardry
37
3.8k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
260
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.4k
Between Models and Reality
mayunak
4
380
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.1k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
Transcript
AWS CDK 経験者が CDK for Terraform 使って 苦労したこと&よかったこと @maniawase2
What’s CDK for Terraform?
What’s CDK for Terraform? (公式から翻訳)https://developer.hashicorp.com/terraform/cdktf 使い慣れたプログラミング言語を使用してインフラストラクチャを定義およびプロビジ ョニングできます。 HashiCorp Configuration Language
(HCL) を学習しなくても Terraform エコシ ステム全体にアクセスできます。 (現在、最新バージョンは v0.20 なので注意)
What’s CDK for Terraform? (公式から翻訳)https://developer.hashicorp.com/terraform/cdktf 使い慣れたプログラミング言語を使用してインフラストラクチャを定義およびプロビジ ョニングできます。 HashiCorp Configuration Language
(HCL) を学習しなくても Terraform エコシ ステム全体にアクセスできます。 (現在、最新バージョンは v0.20 なので注意) AWS CDK の最後に動くものが CloudFormationではなく Terraformになったもの TypeScript, etc… Cloudformation
苦労したこと&よかったこと
当時のスキル ・AWS自体:4年 ・AWS CDK:3年 ・CloudFormation:2, 3ヶ月 ・Terraform:なし
よかったこと 苦労したこと ・Terraformの知識がまあまあ必要 ・コードがCDKのL1ライクでしか書けない ・リファレンスが見にくい(未完成?) ・Terraformの恩恵がすごい ・クロスリージョン/アカウントも同一スタックで作れる ・AWS以外のリソースも作れる ・ignore_changes で作成したリソースを管理対象外にできる
・local-exec でローカルで(やろうと思えば)なんでもできる
よかったこと 苦労したこと ・Terraformの知識がまあまあ必要 ・コードがCDKのL1ライクでしか書けない ・リファレンスが見にくい(未完成?) ・Terraformの恩恵がすごい ・クロスリージョン/アカウントも同一スタックで作れる ・AWS以外のリソースも作れる ・ignore_changes で作成したリソースを管理対象外にできる
・local-exec でローカルで(やろうと思えば)なんでもできる かるーくどんなことに使ったか お話します
苦労したこと コードがCDKのL1ライクでしか 書けない
コードがCDKのL1ライクでしか書けない ・AWS CDK ではL2コンストラクトがとても便利 ・作成したいリソースを完全に理解してなくても作れてしまう ・CloudFormation を理解してなくても使えてしまう ・しかし、CDK for Terraform
では、L1ライクでしか書けない ・Terraformがそのままプログラムで書けるようになっただけ (結局Terraformのリファレンスを見ることに...)
コードがCDKのL1ライクでしか書けない 例)CodePipelineを作成するコード(CDK)
コードがCDKのL1ライクでしか書けない 例)CodePipelineを作成するコード(CDK for Terraform) ちっさ。見えない
コードがCDKのL1ライクでしか書けない 例)CodePipelineを作成するコード(CDK for Terraform)
コードがCDKのL1ライクでしか書けない 例)CodePipelineを作成するコード(CDK for Terraform) 適切なIAMロールの 作成が必要
コードがCDKのL1ライクでしか書けない 例)CodePipelineを作成するコード(CDK for Terraform) 適切なIAMロールの 作成が必要 必須のパラメータが 多い
コードがCDKのL1ライクでしか書けない 例)CodePipelineを作成するコード(CDK for Terraform) 適切なIAMロールの 作成が必要 必須のパラメータが 多い リソース間の参照が 文字列
ただし、コレはコレで 悪いわけではない
ただし、コレはコレで悪いわけではない 例)CodePipelineを作成するコード(CDK)
ただし、コレはコレで悪いわけではない 例)CodePipelineを作成するコード(CDK)
ただし、コレはコレで悪いわけではない 例)CodePipelineを作成するコード(CDK) S3のServerSideEncryptionByDefaultが 「SSEAlgorithm: aws:kms」のためKMSが作られる
よかったこと Terraformの恩恵がすごい
Terraformの恩恵がすごい(1) ・ignore_changes で作成したリソースを管理対象外にできる ・ECSタスクとかは更新しないようにできる
Terraformの恩恵がすごい(1) ・ignore_changes で作成したリソースを管理対象外にできる ・ECSタスクとかは更新しないようにできる オートスケーリングで タスク数が変わっても無視してくれる CDでタスク定義が 変わっても無視してくれる
Terraformの恩恵がすごい(2) ・local-exec でローカルで(やろうと思えば)なんでもできる ・ECR作成して、ローカルBuildしてPush。なんてこともできる
Terraformの恩恵がすごい(2) ・local-exec でローカルで(やろうと思えば)なんでもできる ・ECR作成して、ローカルBuildしてPush。なんてこともできる ECR作成 ①ECRログイン ②ローカルで docker build ③ビルドイメージにタグ付け
④ECRにPush 曲芸!
今後どちらを使っていくか
AWS CDKを使います !?
AWS CDKを使います ・今回話していませんが、AWS CDK が便利すぎる ・L2コンストラクトで、関連リソースを自動で作ってくれるのがとにかくラク ・AWS CDK(TypeScript)のリファレンスがすごい見やすい ・加入していればですが、AWSサポートが手厚すぎる ・CDK
for Terraform にも期待! ・個人的に Terraform vs CloudFromation だと、Terraformのほうがいい ・Terraform使っている人には学習コストかなり少ない! ・まだ v0.20。今後に期待して星5つです ★★★★★
END