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
1.1k
辛くない 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
生成AIで生産性向上
tomuro
0
430
Cloudflare Workers の実行時間が遅くなることがある
tomuro
0
13
生成AI使ってますか? 〜Amazon Bedrockで試してみよう〜
tomuro
2
300
Morisawa Fonts 新プランでのStripe導入事例
tomuro
0
120
Cloudflareを活用したWebフォントサービスの概要
tomuro
0
250
Stripeでサブスクリプションに割引を適用したときの注意点
tomuro
0
330
クラウドを利用したサブスクリプションサービスに向けて内製化開発に切り替えた話
tomuro
2
550
SESからSendGridに変更したけど移行で問題が出た話
tomuro
1
2.1k
なぜ老舗企業がOktaでDXを実現できたのか?
tomuro
1
580
Other Decks in Technology
See All in Technology
エンジニア向け技術スタック情報
kauche
0
110
原則から考える保守しやすいComposable関数設計
moriatsushi
3
500
Agentic DevOps時代の生存戦略
kkamegawa
0
1.1k
Observability в PHP без боли. Олег Мифле, тимлид Altenar
lamodatech
0
300
PHPでWebブラウザのレンダリングエンジンを実装する
dip_tech
PRO
0
180
2年でここまで成長!AWSで育てたAI Slack botの軌跡
iwamot
PRO
2
450
Wasm元年
askua
0
110
Liquid Glass革新とSwiftUI/UIKit進化
fumiyasac0921
0
150
第9回情シス転職ミートアップ_テックタッチ株式会社
forester3003
0
160
20250623 Findy Lunch LT Brown
3150
0
790
AWS CDK 実践的アプローチ N選 / aws-cdk-practical-approaches
gotok365
4
530
監視のこれまでとこれから/sakura monitoring seminar 2025
fujiwara3
10
2.9k
Featured
See All Featured
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
GraphQLとの向き合い方2022年版
quramy
46
14k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.3k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
228
22k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Optimising Largest Contentful Paint
csswizardry
37
3.3k
Done Done
chrislema
184
16k
GitHub's CSS Performance
jonrohan
1031
460k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Facilitating Awesome Meetings
lara
54
6.4k
Practical Orchestrator
shlominoach
188
11k
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