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について / about AWS CDK
Search
cohalz
January 25, 2019
Programming
1
2.2k
AWS CDKについて / about AWS CDK
YAPC::Tokyo 2019 前夜祭 LTソン
cohalz
January 25, 2019
Tweet
Share
More Decks by cohalz
See All by cohalz
はてなにおけるfujiwara-wareの活用やecspressoのCI/CD構成 / Fujiwara Tech Conference 2025
cohalz
3
5.4k
はてなのSRE組織2024 / Road to SRE NEXT@福岡
cohalz
2
1.7k
SREのキャリア、 あるいは生態 / #ya8
cohalz
11
1.6k
カンファレンスのボランティアスタッフって何やるの? / DAIMYO Meetup #4
cohalz
0
150
小さなものでも Step Functions / Serverless Meetup Fukuoka Re:boot
cohalz
0
190
ECSのCI/CD改善と標準化の取り組み / JAWS FESTA 2023 in Kyushu
cohalz
8
7.1k
ecspressoへの貢献を振り返る / JAWS-UG コンテナ支部 #24 ecspresso MeetUp
cohalz
1
6.9k
はてなフォトライフをECSに移行した話 / Hatena Engineer Seminar #20
cohalz
1
19k
SREの異動と働き方 〜はてなブログ編〜 / Hatena Engineer Seminar #13
cohalz
0
2.4k
Other Decks in Programming
See All in Programming
Functional APIから再考するLangGraphを使う理由
os1ma
4
640
読もう! Android build ドキュメント
andpad
1
190
Node.js, Deno, Bun 最新動向とその所感について
yosuke_furukawa
PRO
6
3k
バックエンドNode.js × フロントエンドDeno で開発して得られた知見
ayame113
4
1.2k
php-fpm がリクエスト処理する仕組みを追う / Tracing-How-php-fpm-Handles-Requests
shin1x1
4
750
CQRS+ES勉強会#1
rechellatek
0
380
CTFのWebにおける⾼難易度問題について
hamayanhamayan
1
920
リアクティブシステムの変遷から理解するalien-signals / Learning alien-signals from the evolution of reactive systems
yamanoku
1
190
マルチアカウント環境での、そこまでがんばらない RI/SP 運用設計
wa6sn
0
220
20250326_生成AIによる_レビュー承認システムの実現.pdf
takahiromatsui
15
4.4k
Devin入門と最近のアップデートから見るDevinの進化 / Introduction to Devin and the Evolution of Devin as Seen in Recent Update
rkaga
7
3k
私の愛したLaravel 〜レールを超えたその先へ〜
kentaroutakeda
11
3k
Featured
See All Featured
Building Adaptive Systems
keathley
40
2.5k
How STYLIGHT went responsive
nonsquared
99
5.4k
The World Runs on Bad Software
bkeepers
PRO
67
11k
Scaling GitHub
holman
459
140k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
8
690
Into the Great Unknown - MozCon
thekraken
35
1.7k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
31
4.7k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
The Language of Interfaces
destraynor
156
24k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
28
2k
Transcript
AWS CDKʹ͍ͭͯ YAPC::Tokyo 2019 લࡇ LTιϯ id:cohalz
ࣗݾհ • id:cohalz / @cohalz • גࣜձࣾͯͳ SRE(ژ) • Perlະܦݧ
AWS CDKฉ͍ͨ͜ͱ͋Δਓ
AWS CDKͬͯΔਓ
AWS CDKͱ • https://awslabs.github.io/aws-cdk/ • AWSެࣜͷϑϨʔϜϫʔΫ • TypeScriptͰCloudFormationϦιʔεΛॻ͍ͯσϓϩΠ • ։ൃऀϓϨϏϡʔ
ͷஈ֊
Ϟνϕʔγϣϯ • ڊେͳYAMLಡΈॻ͖͍ͨ͠Ͱ͔͢ʁ • CFnͰෳࡶͳذͯ͠ͳ͍Ͱ͔͢ʁ
TypeScript • ܕʹΑΔิ • ߴͳϩδοΫͷ࣮ݱ • ϥΠϒϥϦͷΈ߹Θͤ
རͦΕ͚ͩʁ
CDK Construct Library • ҰൠతͳύλʔϯΛϥΠϒϥϦͱͯ͠ఏڙ • ར༻ऀͷهड़ྔΛେ෯ʹݮ • ެࣜϥΠϒϥϦͷଞʹࣗ࡞વՄೳ
࣮ࡍͷίʔυ const vpc = new ec2.VpcNetwork(this, 'MyVpc', { maxAZs: 2
}); const cluster = new ecs.Cluster(this, 'Cluster', { vpc }); const fargateService = new ecs.LoadBalancedFargateService(this, "FargateService", { cluster, image: ecs.ContainerImage.fromDockerHub("amazon/amazon-ecs-sample"), });
σϓϩΠπʔϧ • cdk deploy • TypeScriptΛॻ͍ͯͦͷ··σϓϩΠͰ͖Δ • cdk diff •
ਓ͕ؒಡΊΔมߋΛग़͢
ηΩϡϦςΟ • IAMͱSecurity GroupͷมߋΛܯࠂ
CDKͷϝϦοτ • SRE͔Β • ϦιʔεΛςϯϓϨʔτͱͯ͠ఏڙ͍͢͠ • ΞϓϦέʔγϣϯΤϯδχΞ͔Β • TypeScriptͩͱ৮Γ͍͢ •
ηΩϡϦςΟͷܯࠂخ͍͠
େมͳ͜ͱ͋Δ • Construct Libraryͱ͍ͬͯ͘ • தͰԿΛͬͯΔͷ͔֬ೝ͢Δͷ͍͠ • ར༻ऀগͳ͍ͷͰใ͕ͳ͍ • ؾ͕͍ͭͨΒຊਓτοϓͷίϯτϦϏϡʔλʹͳͬͯͨ
·ͱΊ • YAMLͰͳ͘TypeScriptͷ࣌ • CDKͷπʔϧ܈ຊʹศར • ։ൃऀϓϨϏϡʔதͳͷͰར༻ҙ