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
toittaにOpenTelemetryを導入した話 / Mackerel APM リリースパーティ
cohalz
1
770
はてなにおけるfujiwara-wareの活用やecspressoのCI/CD構成 / Fujiwara Tech Conference 2025
cohalz
3
8.6k
はてなのSRE組織2024 / Road to SRE NEXT@福岡
cohalz
2
2k
SREのキャリア、 あるいは生態 / #ya8
cohalz
11
1.8k
カンファレンスのボランティアスタッフって何やるの? / DAIMYO Meetup #4
cohalz
0
220
小さなものでも Step Functions / Serverless Meetup Fukuoka Re:boot
cohalz
0
250
ECSのCI/CD改善と標準化の取り組み / JAWS FESTA 2023 in Kyushu
cohalz
8
7.5k
ecspressoへの貢献を振り返る / JAWS-UG コンテナ支部 #24 ecspresso MeetUp
cohalz
1
8k
はてなフォトライフをECSに移行した話 / Hatena Engineer Seminar #20
cohalz
1
19k
Other Decks in Programming
See All in Programming
開発生産性が組織文化になるまでの軌跡
tonegawa07
0
190
ゼロダウンタイムでミドルウェアの バージョンアップを実現した手法と課題
wind111
0
210
GeistFabrik and AI-augmented software development
adewale
PRO
0
160
Feature Flags Suck! - KubeCon Atlanta 2025
phodgson
0
160
Stay Hacker 〜九州で生まれ、Perlに出会い、コミュニティで育つ〜
pyama86
2
2.5k
DartASTとその活用
sotaatos
2
150
PHPライセンス変更の議論を通じて学ぶOSSライセンスの基礎
matsuo_atsushi
0
170
Doc Translate - LLMを活用したコードドキュメント自動翻訳VSCode拡張機能
eycjur
0
110
目的で駆動する、AI時代のアーキテクチャ設計 / purpose-driven-architecture
minodriven
10
3.3k
Honoを技術選定したAI要件定義プラットフォームAcsimでの意思決定
codenote
0
260
Querying Design System デザインシステムの意思決定を支える構造検索
ikumatadokoro
1
1.2k
AIエージェントでのJava開発がはかどるMCPをAIを使って開発してみた / java mcp for jjug
kishida
4
770
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Building Adaptive Systems
keathley
44
2.8k
What's in a price? How to price your products and services
michaelherold
246
12k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
132
19k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Building an army of robots
kneath
306
46k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
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ͷπʔϧ܈ຊʹศར • ։ൃऀϓϨϏϡʔதͳͷͰར༻ҙ