Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
AWS CDKについて / about AWS CDK
Search
cohalz
January 25, 2019
Programming
2.3k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AWS CDKについて / about AWS CDK
YAPC::Tokyo 2019 前夜祭 LTソン
cohalz
January 25, 2019
More Decks by cohalz
See All by cohalz
toittaにOpenTelemetryを導入した話 / Mackerel APM リリースパーティ
cohalz
1
1k
はてなにおけるfujiwara-wareの活用やecspressoのCI/CD構成 / Fujiwara Tech Conference 2025
cohalz
3
12k
はてなのSRE組織2024 / Road to SRE NEXT@福岡
cohalz
2
2.4k
SREのキャリア、 あるいは生態 / #ya8
cohalz
11
1.9k
カンファレンスのボランティアスタッフって何やるの? / DAIMYO Meetup #4
cohalz
0
290
小さなものでも Step Functions / Serverless Meetup Fukuoka Re:boot
cohalz
0
300
ECSのCI/CD改善と標準化の取り組み / JAWS FESTA 2023 in Kyushu
cohalz
8
7.9k
ecspressoへの貢献を振り返る / JAWS-UG コンテナ支部 #24 ecspresso MeetUp
cohalz
1
9.9k
はてなフォトライフをECSに移行した話 / Hatena Engineer Seminar #20
cohalz
1
20k
Other Decks in Programming
See All in Programming
Streamlitで実現する自然言語データアプリ開発
ayumu_yamaguchi
1
310
Snowflakeで業務アプリを作ろう。 Snowflakeのアプリ機能解説&実践ガイド
ayumu_yamaguchi
2
300
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
330
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
170
フロントエンドUIフレームワークのこれまでとこれから
ssssota
5
2.9k
AGENTS.md Is Not Enough:Build Skills, Don't Download Them
lx_t
0
130
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
240
速習iPhone Duo対応
yuukiw00w
1
710
SREの越境 / SRE Collaboration
y0hgi
2
270
『寄り添うラジオ』をAIで作る 体験価値から逆算した、会話しないUXと品質設計
theoriatec2024
3
180
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
500
モバイル交通系ICへのチャージ実例から考える、クロスプラットフォーム開発におけるiOS実機テスト設計とCI運用
yusuga
1
540
Featured
See All Featured
sira's awesome portfolio website redesign presentation
elsirapls
0
420
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
340
The Language of Interfaces
destraynor
162
27k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
290
RailsConf 2023
tenderlove
30
1.6k
We Have a Design System, Now What?
morganepeng
55
8.3k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
550
Amusing Abliteration
ianozsvald
1
310
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.3k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
510
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.8k
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ͷπʔϧ܈ຊʹศར • ։ൃऀϓϨϏϡʔதͳͷͰར༻ҙ