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
2
990
生成AIで生産性向上
tomuro
0
470
Cloudflare Workers の実行時間が遅くなることがある
tomuro
0
19
生成AI使ってますか? 〜Amazon Bedrockで試してみよう〜
tomuro
2
340
Morisawa Fonts 新プランでのStripe導入事例
tomuro
0
140
Cloudflareを活用したWebフォントサービスの概要
tomuro
0
260
Stripeでサブスクリプションに割引を適用したときの注意点
tomuro
0
350
クラウドを利用したサブスクリプションサービスに向けて内製化開発に切り替えた話
tomuro
2
620
SESからSendGridに変更したけど移行で問題が出た話
tomuro
1
2.2k
Other Decks in Technology
See All in Technology
TS-S205_昨年対比2倍以上の機能追加を実現するデータ基盤プロジェクトでのAI活用について
kaz3284
1
230
要件定義・デザインフェーズでもAIを活用して、コミュニケーションの密度を高める
kazukihayase
0
120
LLMを搭載したプロダクトの品質保証の模索と学び
qa
1
1.1k
Webアプリケーションにオブザーバビリティを実装するRust入門ガイド
nwiizo
7
890
「どこから読む?」コードとカルチャーに最速で馴染むための実践ガイド
zozotech
PRO
0
570
Apache Spark もくもく会
taka_aki
0
140
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
270
20250905_MeetUp_Ito-san_s_presentation.pdf
magicpod
1
100
Rustから学ぶ 非同期処理の仕組み
skanehira
1
150
測りにくい成果を測る — BtoB SaaSにおける効果検証への挑戦 / Shirokane Kougyou vol 20
sansan_randd
1
110
COVESA VSSによる車両データモデルの標準化とAWS IoT FleetWiseの活用
osawa
1
400
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
460
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.6k
Automating Front-end Workflow
addyosmani
1370
200k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3k
BBQ
matthewcrist
89
9.8k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Designing for humans not robots
tammielis
253
25k
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