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.1k
はてなの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
7k
ecspressoへの貢献を振り返る / JAWS-UG コンテナ支部 #24 ecspresso MeetUp
cohalz
1
6.8k
はてなフォトライフをECSに移行した話 / Hatena Engineer Seminar #20
cohalz
1
19k
SREの異動と働き方 〜はてなブログ編〜 / Hatena Engineer Seminar #13
cohalz
0
2.3k
Other Decks in Programming
See All in Programming
機能が複雑化しても 頼りになる FactoryBotの話
tamikof
1
260
Domain-Driven Design (Tutorial)
hschwentner
13
22k
AIレビュー導入によるCIツールとの共存と最適化
kamo26sima
1
1.2k
Kotlinの開発でも AIをいい感じに使いたい / Making the Most of AI in Kotlin Development
kohii00
5
2.1k
自力でTTSモデルを作った話
zgock999
0
130
仕様変更に耐えるための"今の"DRY原則を考える
mkmk884
9
3.3k
推しメソッドsource_locationのしくみを探る - はじめてRubyのコードを読んでみた
nobu09
2
370
PHPのバージョンアップ時にも役立ったAST
matsuo_atsushi
0
240
LINE messaging APIを使ってGoogleカレンダーと連携した予約ツールを作ってみた
takumakoike
0
140
コードを読んで理解するko build
bells17
1
120
読まないコードリーディング術
hisaju
1
140
若手バックエンドエンジニアが Elasticsearch を使ってみた話
hott0mott0
1
100
Featured
See All Featured
The Art of Programming - Codeland 2020
erikaheidi
53
13k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Being A Developer After 40
akosma
89
590k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
A Tale of Four Properties
chriscoyier
158
23k
Visualization
eitanlees
146
15k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Product Roadmaps are Hard
iamctodd
PRO
51
11k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
52k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
Code Reviewing Like a Champion
maltzj
521
39k
Done Done
chrislema
182
16k
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ͷπʔϧ܈ຊʹศར • ։ൃऀϓϨϏϡʔதͳͷͰར༻ҙ