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
TypeScripterに送るIaCの世界への招待〜AWS CDKと共に〜/inviting-...
Search
tomoki10
June 04, 2024
Technology
0
740
TypeScripterに送るIaCの世界への招待〜AWS CDKと共に〜/inviting-typescripters-to-the-world-of-iac-with-aws-cdk
TSKaigi 2024 After Talkで話した内容です。
https://layerx.connpass.com/event/318123/
tomoki10
June 04, 2024
Tweet
Share
More Decks by tomoki10
See All by tomoki10
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
200
あの日俺達が夢見たサーバレスアーキテクチャ/the-serverless-architecture-we-dreamed-of
tomoki10
0
430
re:Invent2024のIaC周りのアップデート&セッションの共有/around-re-invent-2024-iac-updates
tomoki10
0
1k
Classmethod流のPlatform Engineering / classmethod-platform-engineering-devio2024
tomoki10
1
1.3k
AWS CDK Conference Japan 2024 OP
tomoki10
0
700
AWSでもBuildpacksを使ってDockerfileレスに出来るのか!?/can-i-use-buildpacks-to-go-dockerfile-less-in-aws
tomoki10
0
2.8k
ECS on Fargate のセキュリティ対策は何をやるべき?開発者目線で考える/security-for-ecs-on-fargate-secjawsdays
tomoki10
14
11k
AWS CDKの最強の書き方を実践してみる 2023年版/practice-the-strongest-writing-method-of-aws-cdk-2023-edition
tomoki10
4
6.7k
CDK支部のこれまでとこれから / jaws-ug-cdk-past-and-future
tomoki10
1
880
Other Decks in Technology
See All in Technology
サイボウズフロントエンドエキスパートチームについて / FrontendExpert Team
cybozuinsideout
PRO
5
38k
ブラックフライデーで購入したPixel9で、Gemini Nanoを動かしてみた
marchin1989
1
520
権威ドキュメントで振り返る2024 #年忘れセキュリティ2024
hirotomotaguchi
2
730
PHP ユーザのための OpenTelemetry 入門 / phpcon2024-opentelemetry
shin1x1
0
150
マルチプロダクト開発の現場でAWS Security Hubを1年以上運用して得た教訓
muziyoshiz
2
2.2k
Snowflake女子会#3 Snowpipeの良さを5分で語るよ
lana2548
0
230
多領域インシデントマネジメントへの挑戦:ハードウェアとソフトウェアの融合が生む課題/Challenge to multidisciplinary incident management: Issues created by the fusion of hardware and software
bitkey
PRO
2
100
Oracle Cloud Infrastructure:2024年12月度サービス・アップデート
oracle4engineer
PRO
0
170
成果を出しながら成長する、アウトプット駆動のキャッチアップ術 / Output-driven catch-up techniques to grow while producing results
aiandrox
0
220
私なりのAIのご紹介 [2024年版]
qt_luigi
1
120
GitHub Copilot のテクニック集/GitHub Copilot Techniques
rayuron
26
11k
ハイテク休憩
sat
PRO
2
140
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Code Review Best Practice
trishagee
65
17k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Building Adaptive Systems
keathley
38
2.3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
Rails Girls Zürich Keynote
gr2m
94
13k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Site-Speed That Sticks
csswizardry
2
190
Fashionably flexible responsive web design (full day workshop)
malarkey
405
66k
YesSQL, Process and Tooling at Scale
rocio
169
14k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Transcript
5ZQF4DSJQUFSʹૹΔ*B$ͷੈքͷট ʙ"84$%,ͱڞʹʙ ࠤ౻ஐथ ϏδωεςΫϊϩδʔ෦
Έͳ͞Μ AWS CDKͬͯͬͯ·͢ʁ
ࠤ౻ஐथ ϏδωεςΫϊϩδʔ෦ ΞʔΩςΫτνʔϜ +"846($%,ࢧ෦ӡӦ ͖ͳ"84αʔϏε ࣗݾհ !UNL !UPNPLJ "84-BNCEB
"84$%,
ࠓ͍͑ͨ͜ͱ ͚ͨͬͨͭͩͰ͢ wΠϯϑϥ͕5ZQF4DSJQUͷܕิͰؾ࣋ͪΑ͘ॻ͚Δ w$%,ຊޠͷใ͕͔ͳΓ͋ͬͯ࢝Ί͍͢ ͞ͳ͍͜ͱ w*B$ࣗମͷར
࣍ w"84$%,ͱԿ͔ w5ZQF4DSJQUͰ͋Δ͜ͱͷར wຊͱ$%,ͷؔ wΠϕϯτએ
"84$%,ͱ w͍׳ΕͨݴޠͰ"84ϦιʔεΛ࡞Ͱ͖ΔπʔϧαʔϏε wݴޠ w5ZQF4DSJQU+BWB4DSJQU 1ZUIPO +BWB $ (PͰهड़Մೳ wಛ
w"84ϦιʔεҰ෦4BB4ΛநԽͯ͠ίʔυͰཧ w044ͳͷͰ࣮ͷৄࡉιʔεϨϕϧͰ֬ೝՄೳ "84$MPVE%FWFMPQNFOU,JU "84$%,
$%,ͷछྨ ͓͓·͔ʹछྨ͋Γ·͢ ʮcdk8s(+)Ͱ͡ΊΔKubernetesʯ https://speakerdeck.com/horsewin/cdk8s-plus-dehazimerukubernetes "84$%, $MPVE'PSNBUJPOςϯϓ ϨʔτͳͲΛੜ͠Ϋϥυ ΠϯϑϥڥΛίʔυཧ "84ϦιʔεҰ෦4BB4
ΛநԽͯ͠ཧՄೳ 5FSSBGPSNςϯϓϨʔτΛੜ ͠ɺΫϥυΠϯϑϥڥ Λίʔυཧ "84($"[VSF4BB4 ΛநԽͯ͠ཧՄೳ LTϚχϡϑΣετΛੜ ͠ɺLTڥΛखଓ͖ܕͷॻ ͖ํͰཧ LTΛཧՄೳ ※ʮTerraform ॳ৺ऀ͕ CDK for Terraform Λ৮ͬͯΈͨॴײʯ https://zenn.dev/mayforblue/articles/09574f95fdbf69 ˢࠓ͜͜ͷʂ
"84$%,ͷྫ ίʔυྫ ࡞͞ΕΔϦιʔεʢҰ෦ʣ
"84$%,ͷϢʔβ͔Βݟͨ֓ཁ Client CI/CD Env Source code AWS CloudFormation AWS
account OR AWS CDK AWS Lambda Amazon API Gateway Stack (Resource State) Generate $ cdk deploy
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code OR AWS CDK
const getItemFunction = new node_lambda.NodejsFunction(this, "getItem", { runtime: lambda.Runtime.NODEJS_20_X, entry: path.join(__dirname, "../../src/hoge/index.ts"), handler: "getItem", timeout: cdk.Duration.seconds(30), });
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code OR AWS CDK
Cfn Template 1.Synthesize Assets w"TTFUT wόϯυϧͰ͖ΔϩʔΧϧϑΝΠϧσΟϨΫτ Ϧɺ%PDLFSΠϝʔδͳͲؚ͕·ΕΔ w-BNCEBͷίʔυؚΉ w $MPVE'PSNBUJPOςϯϓϨʔτ w $%,͕ੜͨ͠$MPVE'PSNBUJPOͷςϯϓ ϨʔτϑΝΠϧ
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code AWS account OR
AWS CDK Cfn Template 1.Synthesize S3 Bucket Assets 2.Upload
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code AWS CloudFormation AWS
account OR AWS CDK Cfn Template 1.Synthesize S3 Bucket Assets 2.Upload 3.Deploy
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code AWS CloudFormation AWS
account OR AWS CDK Cfn Template Cfn Template 1.Synthesize S3 Bucket Assets 2.Upload 3.Deploy 4.Pull
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code AWS CloudFormation AWS
account OR AWS CDK Cfn Template Stack (Resource State) Cfn Template 1.Synthesize S3 Bucket Assets 2.Upload 3.Deploy 5.Generate 4.Pull
"84$%,ͷཪଆͷجຊతͳಈ͖ Client CI/CD Env Source code AWS CloudFormation AWS
account OR AWS CDK Cfn Template Stack (Resource State) Cfn Template 1.Synthesize S3 Bucket Assets 2.Upload 3.Deploy 5.Generate AWS Lambda Amazon API Gateway 6.API Call 4.Pull
Ͱ͏ϦιʔεखͰ࡞ͬͪΌͬͨΜͩΑͳ͋ *B$(FOFSBUPSͱ$%,.JHSBUFͳΒ·ͩؒʹ߹͏͔ʁ ˠ*B$(FOFSBUPS *B$( ɿطଘΠϯϑϥ͔ΒίʔυΛੜ ˠ$%,.JHSBUFɿ*B$(Λ͍$%,ίʔυΛੜ ؾʹͳΔํɺJAWS-UG CDKࢧ෦ 14ճࢀর
ຊͱ$%,ͷؔ ࣮ੈքͰ൪ʹελʔΛ͚͕ͭͨଟ͍ࠃ https://ossinsight.io/analyze/aws/aws-cdk#people
1VMM3FRVFTU࡞ࠃผͰੈքҐ ຊͱ$%,ͷؔ https://ossinsight.io/analyze/aws/aws-cdk#people
ຊਓͷίϯτϦϏϡʔλʔϨϏϡΞʔ͍ͯ૬ஊ͍͢͠ ຊͱ$%,ͷؔ https://aws.amazon.com/jp/developer/community/heroes/kenta-goto/ https://github.com/aws/aws-cdk/wiki/CDK-Community-PR-Reviews
+"846(ͷ$%,ࢧ෦ͱͯ͠ఆظతʹΠϕϯτ։࠵ ճ։࠵ $%,ͷࡉ͔͍ϊϋ͕ຊޠͰֶΔʂ ຊͱ$%,ͷؔ https://jawsug-cdk.connpass.com/
ࠓͷΠϕϯτ։࠵͠·͢ʂൃද͚ͩͰͳ͘ ϫʔΫγϣοϓ։࠵༧ఆͳͷͰؾʹͳΔํੋඇʂ એ https://jawsug-cdk.connpass.com/event/317921/
None