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
辛くない CloudFormation
Search
Takafumi Omuro
October 28, 2021
Technology
1
960
辛くない CloudFormation
2021/10/28(木)に行われた【JAWS-UG朝会 #26】にて発表した
「辛くない CloudFormation」
の資料です。
Takafumi Omuro
October 28, 2021
Tweet
Share
More Decks by Takafumi Omuro
See All by Takafumi Omuro
Stripeでサブスクリプションに割引を適用したときの注意点
tomuro
0
170
クラウドを利用したサブスクリプションサービスに向けて内製化開発に切り替えた話
tomuro
2
240
SESからSendGridに変更したけど移行で問題が出た話
tomuro
1
1.5k
なぜ老舗企業がOktaでDXを実現できたのか?
tomuro
1
430
Serverless で運用を楽にしたい
tomuro
0
500
Amazon SES のバウンス率が急上昇 〜Amazon SES を止めてしまった日〜
tomuro
5
4.3k
DevOpsの推進からのFour Keysの計測へ
tomuro
1
1.7k
老舗企業が開発組織カルチャーの刷新を行い SaaS 戦略に切り替えた話
tomuro
4
1.6k
未経験からデータ基盤を1年で作ってみた
tomuro
1
1.3k
Other Decks in Technology
See All in Technology
エンジニア向け会社紹介資料
caddi_eng
14
230k
What is DRE? - Road to SRE NEXT@広島
chanyou0311
3
630
サーバーレスAPI(API Gateway+Lambda)とNext.jsで 個人ブログを作ろう!
shuntaka
PRO
0
560
E2Eテスト自動化プラットフォームにおけるAIの活用
shift_evolve
0
190
dxd2024-生成AIに振り回された3か月間の成功と失敗/dxd2024-link-and-motivation
lmi
2
260
Luupの開発組織におけるインシデントマネジメントの変遷 ver.RoadtoSRENEXT2024
grimoh
1
270
Datadog Cloud SIEMを使ってAWS環境の脅威を可視化した話/lifeistech-datadog-cloud-siem
gidajun
0
480
「我々はどこに向かっているのか」を問い続けるための仕組みづくり / Establishing a System for Continuous Inquiry about where we are
daitasu
0
170
開発生産性をむしろ向上させる セキュリティパートナーの作り方 / Dev Productivity Con 2024
flatt_security
0
390
コミュニティサービスに「あなたへ」フィードを リリースするまでの試行錯誤
takapy
1
150
大規模ドラレコデータ収集・機械学習基盤を支える AWS CDK 〜導入・運用事例紹介〜
pemugi
0
110
エンジニアリングマネージャーはどう学んでいくのか #devsumi / How Do Engineering Managers Continue to Learn and Grow?
expajp
4
1.3k
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
16
1.6k
Docker and Python
trallard
37
2.9k
For a Future-Friendly Web
brad_frost
173
9.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
90
47k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
189
16k
No one is an island. Learnings from fostering a developers community.
thoeni
17
2.8k
Why Our Code Smells
bkeepers
PRO
332
56k
Optimizing for Happiness
mojombo
373
69k
Facilitating Awesome Meetings
lara
46
5.8k
Web development in the modern age
philhawksworth
203
10k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
245
1.2M
Into the Great Unknown - MozCon
thekraken
20
1.3k
Transcript
ਏ͘ͳ͍$MPVE'PSNBUJPO גࣜձࣾϞϦαϫ খࣨو࢙
໊લɿখࣨو࢙ ࣗݾհ ࣄɿςοΫϦʔυ "84ΠϯϑϥΤϯδχΞ ͖ͳαʔϏεɿ$PEF#VJME $MPVE'PSNBUJPO ॴଐɿגࣜձࣾϞϦαϫ γεςϜ։ൃ෦ Πϊϕʔγϣϯ։ൃ՝
w $MPVE'PSNBUJPOͱ w ࢲతਏ͍$MPVE'PSNBUJPO w ਏ͘ͳ͍$MPVE'PSNBUJPO w ·ͱΊ ΞδΣϯμ
$MPVE'PSNBUJPOͷӡ༻ਏ͍ʁ
ͦΜͳʹਏ͘ͳ͍Α
$MPVE'PSNBUJPOͱ $MPVE'PSNBUJPOͷ͓͞Β͍ IUUQTEPDTBXTBNB[PODPNKB@KQ"84$MPVE'PSNBUJPOMBUFTU6TFS(VJEFDGOXIBUJTIPXEPFTJUXPSLIUNMΑΓҾ༻ :".-+40/ͰςϯϓϨʔτϑΝΠϧΛ࡞͠ɺϦιʔεͷ ϓϩϏδϣχϯάΛߦ͏͜ͱ͕Ͱ͖ΔαʔϏεͰ͢ɻ "84ϦιʔεΛݸผʹ࡞ɺઃܭͯ͠ɺͦΕͧΕͷґଘؔ Λߟ͑Δඞཁ͋Γ·ͤΜɻ ࡞͞ΕͨϦιʔεɺελοΫͱ͍͏୯ҐͰཧ͞Ε·͢ɻ
$MPVE'PSNBUJPOͱ $MPVE'PSNBUJPOͷ͓͞Β͍ IUUQTEPDTBXTBNB[PODPNKB@KQ"84$MPVE'PSNBUJPOMBUFTU6TFS(VJEFDGOXIBUJTIPXEPFTJUXPSLIUNMΑΓҾ༻ :".-+40/ͰςϯϓϨʔτϑΝΠϧΛ࡞͠ɺϦιʔεͷ ϓϩϏδϣχϯάΛߦ͏͜ͱ͕Ͱ͖ΔαʔϏεͰ͢ɻ "84ϦιʔεΛݸผʹ࡞ɺઃܭͯ͠ɺͦΕͧΕͷґଘؔ Λߟ͑Δඞཁ͋Γ·ͤΜɻ ࡞͞ΕͨϦιʔεɺελοΫͱ͍͏୯ҐͰཧ͞Ε·͢ɻ ɹςϯϓϨʔτͰϦιʔεͷґଘؔ ɹߟ͑Δඞཁ͕͋Γ·͢ɻ
$MPVE'PSNBUJPOͱ $MPVE'PSNBUJPOͷ͓͞Β͍ IUUQTEPDTBXTBNB[PODPNKB@KQ"84$MPVE'PSNBUJPOMBUFTU6TFS(VJEFDGOXIBUJTIPXEPFTJUXPSLIUNMΑΓҾ༻ :".-+40/ͰςϯϓϨʔτϑΝΠϧΛ࡞͠ɺϦιʔεͷ ϓϩϏδϣχϯάΛߦ͏͜ͱ͕Ͱ͖ΔαʔϏεͰ͢ɻ "84ϦιʔεΛݸผʹ࡞ɺઃܭͯ͠ɺͦΕͧΕͷґଘؔ Λߟ͑Δඞཁ͋Γ·ͤΜɻ ࡞͞ΕͨϦιʔεɺελοΫͱ͍͏୯ҐͰཧ͞Ε·͢ɻ ɹෳςϯϓϨʔτΛ͏߹ɺෳͷελοΫ͕Ͱ͖·͢ɻ ɹελοΫؒͰͷґଘ͕ؔൃੜ͠·͢ɻ
$MPVE'PSNBUJPOͱ $MPVE'PSNBUJPOͷ͓͞Β͍ IUUQTEPDTBXTBNB[PODPNKB@KQ"84$MPVE'PSNBUJPOMBUFTU6TFS(VJEFDGOXIBUJTIPXEPFTJUXPSLIUNMΑΓҾ༻ :".-+40/ͰςϯϓϨʔτϑΝΠϧΛ࡞͠ɺϦιʔεͷ ϓϩϏδϣχϯάΛߦ͏͜ͱ͕Ͱ͖ΔαʔϏεͰ͢ɻ "84ϦιʔεΛݸผʹ࡞ɺઃܭͯ͠ɺͦΕͧΕͷґଘؔ Λߟ͑Δඞཁ͋Γ·ͤΜɻ ࡞͞ΕͨϦιʔεɺελοΫͱ͍͏୯ҐͰཧ͞Ε·͢ɻ ɹ"84Λ͏Ҏ্ɺͲ͔͜Ͱґଘؔઈରʹग़͖ͯ·͢ɻ ɹґଘؔΛΘ͔Γ͘͢ཧ͢Δͷ͕؊ͩͱࢥ͍·͢ɻ
ࢲతਏ͍$MPVE'PSNBUJPO
ڊେͳςϯϓϨʔτ ࢲతਏ͍$MPVE'PSNBUJPO ಡΉͷ͕ΊͬͪΌେม w ͪΐͬͱͨ͠มߋͷσϓϩΠ͕ࠔ w ࠓΤϥʔ͕ग़ͯܧଓͰ͖Δ͔ΒϚγ w ॳճͷߏஙೲʹ༗༻͕ͩӡ༻ʹෆ͖ w
ҰൃͰγεςϜΛϓϩϏδϣχϯάͰ͖Δ w ςϯϓϨʔτ֎ͷґଘؔ࠷ݶ w ൈ͚࿙Ε͕ͳ͘ͳΔ
ͦͷ··ೖͰ͖ͳ͍ͷ ࢲతਏ͍$MPVE'PSNBUJPO ৽نελοΫ࡞Ͱಈ࡞͠ͳ͍ w ॳճͷΈͷରԠ͕ඞཁͰίϝϯτΞτͱ͔ w ྫʣ3%4ͳΒॳճ6TFS1BTTͷࢦఆ͕ඞཁ w Ξοϓσʔτ࣌ʹෆཁʹͳͬͯίϝϯτΞτ w
$POEJUJPOTl"84/P7BMVFͰ͍͍ײ͡ʹ͢Δ w ςϯϓϨʔτʹϦιʔε͕Ճ͞Εͯґଘ͕ؔൃੜ w $'OͰฒߦͯ͠Ϧιʔε͕࡞͞ΕΔ w ه͢Δͱॱ࣮࣍ߦ࣌ͳ͍ w ৽ن࡞ͰґଘؔΛղܾͰ͖ͣʹΤϥʔͱͳΔ w %FQFOET0O3FGͰґଘؔΛ໌ࣔ͢Δ
ΫϩεελοΫࢀরͷଟ༻ ࢲతਏ͍$MPVE'PSNBUJPO ࢀরݩͷελοΫͷআมߋ͕Ͱ͖ͳ͍ w ΫϩεελοΫࢀরͱ w ࢀরݩͷςϯϓϨʔτ&YQPSUͰύϥϝʔλ໊Λ༩ w ࢀরઌͷςϯϓϨʔτ*NQPSU7BMVFͰࢀরͰ͖Δ w
ࢀরݩͷελοΫͷআɺมߋ͕Ͱ͖ͳ͘ͳΔ w ӡ༻࣌ʹࠔΔέʔε͕ൃੜ͢ΔͷͰҙ w มߋ͕ଟ͍ελοΫͷ߹ҎԼΛར༻ w $MPVE'PSNBUJPOͷύϥϝʔλͰ͢ w "SOΛμΠφϛοΫࢀর͢Δ
ਏ͘ͳ͍$MPVE'PSNBUJPO
ςϯϓϨʔτఔΑ͍େ͖͞ ਏ͘ͳ͍$MPVE'PSNBUJPO ϦιʔεͷϥΠϑαΠΫϧͰ͚Δ w ॳظߏஙʹඞཁͳͷ w ࠪܥɿ$MPVE5SBJM $POpH (VBSE%VUZͳͲ w
*".ɿ*".6TFS (SPVQ 3PMF w ωοτϫʔΫɿ3PVUF 71$ *(8 /"5ͳͲ w ӡ༻ʹར༻͢Δͷ w 4/4 w $IBUCPU w Ӭଓతʹར༻͢Δͷ w 4 &$3 w 3%4 %ZOBNP%#
ελοΫ࡞ॱ͢ ਏ͘ͳ͍$MPVE'PSNBUJPO ΫϩεελοΫࢀরͰࠔΒͳ͍Α͏ʹ͢Δ w 3&"%.&Λ४උͯ͠هࡌ͢Δ w ϑΝΠϧʹ൪߸Λৼ͍͍ͬͯ w ΫϩεελοΫࢀর͍ͯ͠Δ͜ͱΛղΔΑ͏ʹ͢Δ w
(JUʹςϯϓϨʔτͱڞʹอଘཧ͢Δ w ESBXJPͰਤղҰॹʹίϛοτ͢Δͱ၆ᛌͰ͖Δ | テンプレート | 主なリソース | 説明 | | ------------- | ------------------------------ | ——————————————————————————————————————— | | Audit.yml | CloudTrail, Config, GuardDuty | 監査用 | | IAM.yml | IAM | IAM 作成 | | Network.yml | VPC, IGW, NAT, Route53 | VPC 作成, IPv4/IPv6, Route53 | | SNS.yml | SNS | 通知用 SNS Topics | | Chatbot.yml | Chatbot | Chatbot 通知作成, Audit/SNS 依存あり | | ECR.yml | ECR | ECR 作成 | | Datastore.yml | S3, KMS | ログ、リソース S3 | | DynamoDB.yml | DynamoDB | DynamoDB 作成 | | RDS.yml | RDS(Aurora Cluster), SG, SNS | Aurora 作成, VPC/SNS/Datastore 依存あり |
$MPVE'PSNBUJPOΛΘͳ͍ ਏ͘ͳ͍$MPVE'PSNBUJPO શͯΛ$'OͰແཧʹΒͳ͍ w ͔͠࡞ۀΛߦΘͳ͍ͷ$-*Ͱߦ͏ w $-*ͷίϚϯυΛͯ͠࠶ར༻͢Δ w "1*ͳͲͷόοΫΤϯυҰࣜผπʔϧָ͕ w
։ൃऀ͕ΨϦΨϦ։ൃ͢Δ෦ w 4FSWFSMFTT'SBNFXPSL 4". $%,Λ͏ w "1*(BUFXBZ -BNCEB w "-# &$4 w $*$%ύΠϓϥΠϯ
·ͱΊ
ແཧͷͳ͍ൣғͰ$'OΛ͓͏ ·ͱΊ w ςϯϓϨʔτఔΑ͍େ͖͞ʹ w ϥΠϑαΠΫϧͰΓ͚Δ w มԽ͕গͳ͍ͷΫϩεελοΫࢀর͢Δ w ґଘ͕ؔग़ͯ͠·͏͕3&"%.&Ͱิ
w ςϯϓϨʔτͷ࠶ར༻ੑΛ্͛Δ w $POEJUJPOT"84/P7BMVFΛ্खʹ͏ w Ұ͔͠Θͳ͍ͷผखஈ w $-*׆༻ w όοΫΤϯυ$'OΛੜ͢Δπʔϧָ͕ w 4FSWFSMFTT'SBNFXPSL 4". $%,
ؒืूத ΧδϡΞϧ໘ஊͯ͠·͢ w ϓϩδΣΫτϚωʔδϟʔ w 1.0#31%9ܦݧऀ w όοΫΤϯυΤϯδχΞ w "84
(P1ZUIPO %PDLFSܦݧऀ 1IPUP1",65"40 'POU.PSJTBXB