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
[東京]Cloud_Automatorで攻めのシステム運用 AMIMOTO スタック編
Search
Amimoto - Flexible Cloud WordPress Hosting
May 13, 2016
Technology
0
890
[東京]Cloud_Automatorで攻めのシステム運用 AMIMOTO スタック編
Amimoto - Flexible Cloud WordPress Hosting
May 13, 2016
Tweet
Share
More Decks by Amimoto - Flexible Cloud WordPress Hosting
See All by Amimoto - Flexible Cloud WordPress Hosting
[日本語] AMIMOTO-AMI Lineup
amimoto
0
160
EdgeCase - A speaker series by J2 Design
amimoto
0
360
Progress the system operation drastically with Cloud Automator — AMIMOTO side—
amimoto
0
200
AMIMOTO Design Pattern + Server-less Architecture
amimoto
0
510
WooCommerce with Elasticsearch
amimoto
1
480
[日本語] WooCommerce with Elasticsearch
amimoto
0
260
Amazon CloudFront with AWS Certificate Manager
amimoto
0
220
WordPress with CloudFront + AMAZON RDS + S3
amimoto
1
700
[日本語]Amazon CloudFront with AWS Certificate Manager
amimoto
2
4.6k
Other Decks in Technology
See All in Technology
『星の世界の地図の話: Google Sky MapをAI Agentでよみがえらせる』 - Google Developers DevFest Tokyo 2025
taniiicom
0
360
ABEMAのCM配信を支えるスケーラブルな分散カウンタの実装
hono0130
4
1.1k
【ASW21-02】STAMP/CAST分析における生成AIの支援 ~羽田空港航空機衝突事故を題材として (Support of Generative AI in STAMP/CAST Analysis - A Case Study Based on the Haneda Airport Aircraft Accident -)
hianraku9498
0
120
AI開発の定着を推進するために揃えるべき前提
suguruooki
1
360
学術的根拠から読み解くNotebookLMの音声活用法
shukob
0
440
LINEギフト・LINEコマース領域の開発
lycorptech_jp
PRO
0
390
Pandocでmd→pptx便利すぎワロタwww
meow_noisy
2
970
米軍Platform One / Black Pearlに学ぶ極限環境DevSecOps
jyoshise
2
540
OSだってコンテナしたい❗Image Modeが切り拓くLinux OS運用の新時代
tsukaman
0
130
AI時代のインシデント対応 〜時代を切り抜ける、組織アーキテクチャ〜
jacopen
4
150
Android Studio Otter の最新 Gemini 機能 / Latest Gemini features in Android Studio Otter
yanzm
0
390
改竄して学ぶコンテナサプライチェーンセキュリティ ~コンテナイメージの完全性を目指して~/tampering-container-supplychain-security
mochizuki875
1
400
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Producing Creativity
orderedlist
PRO
348
40k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
How STYLIGHT went responsive
nonsquared
100
5.9k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.5k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
118
20k
Transcript
AWSͷӡ༻ࣗಈԽαʔϏε Cloud Automator Ͱ"߈Ί"ͷγεςϜӡ༻ AMIMOTOฤ @Amimoto_Ami amimoto-ami.com AMIMOTOͷαʔϏεઃܭࢥͱͦͷࠜఈʹ͋Δ͍
WordPressϢʔβʔͷతίϯςϯπͷެ։ ͦΕҎ্ͰҎԼͰͳ͍ʂ
֓ཁ AMIMOTOΛར༻͢ΕAWS্ʹΫϦοΫͰߴʹνϡʔχϯά͞Εͨ WordPressαΠτ͕Ͱ͖͕͋Γ·͢ɻ ͔͠͠ɺͦΕAMIMOTOΛར༻͢ΔϝϦοτͷණࢁͷҰ֯Ͱ͔͋͠Γ·ͤΜɻ AMIMOTOΛར༻͢ΔਅͷՁɺʮϏδωεͷूதͰ͖Δ͜ͱʯʹ͋Γ·͢ɻ ࢲͨͪAMIMOTO։ൃTeamɺৗʹͦΕ͚ͩΛߟ͑ͯαʔϏεͷઃܭΛߦͬͯ·͢ɻ
AMIMOTOΛࢧ͑Δٕज़ج൫ͱαʔϏε 1. Automation → పఈతʹࣗಈԽ 2. Cloud Native → ϚωʔδυαʔϏεΛϑϧ׆༻
3. MicroServices → ૄ݁߹ͳػೳ࣮ ͜ΕΒʹΑͬͯɺ୭͕؆୯ʹಉ࣭͡ͷڥαʔϏεͰΛ։ൃɺӡ༻ཧΛՄೳʹ͢ Δ͜ͱͰʮϏδωεूதʯ͕Ͱ͖Δڥͮ͘ΓΛࢧԉͰ͖ΔϓϥοτϑΥʔϜΛఏڙ͠ ͍ͯ·͢ɻ
ͱ՝ 1.AWSͷεέʔϥϏϦςΟΛ࠷େݶʹൃشͰ͖ͳ͍ɻWordPressͷਂ͍ҋɻ 2.ංେԽ͠ଓ͚ΔσʔλϕʔεͱେྔͷPluginʹΑΔີ݁߹Խɻϝϯςφϯεෆೳঢ়ଶɻ
ղܾखஈͱํ๏ 1.JIN-KEI CloudfFormation ʹΑΔ (Infrastructure as Code with WordPress) 2.MicroServices
ߏ / Server-less Architecture ʹΑΔ Ϟμϯͳ։ൃΞϓϩʔν
Session1
WordPress with Infrastructure as Code @Amimoto_Ami ja.amimoto-ami.com
ͱΓ͋͑ͣϓϥάΠϯ WordPress + ύϑΥʔϚϯε ਓྗͰαʔόΛνϡʔχϯά ਓྗͰΞϓϦΛνϡʔχϯά
ʊਓਓਓਓਓਓਓʊ ʼɹAWSؔͳ͍ɹʻ ʉY^Y^Y^Y^Y^Yʉ
ͦΜͳʹGoogle͕ා͍͔ʁ ݁ہEC2 AWSͷαʔϏε͑ͯͳ͍ ਓྗཔΓҋΛੜΉ
Let’s ࣗಈԽ
AutoScaling WordPress + ࣗಈԽ ϚωʔδυαʔϏεͷ׆༻ CloudFormationͰႈԽ
AutoScaling WordPress + ࣗಈԽ ϚωʔδυαʔϏεͷ׆༻ CloudFormationͰႈԽ
8PSE1SFTTͰϚωʔδυαʔϏε͑Δ w "NB[PO3%4 w "NB[PO4 w "NB[PO$MPVE'SPOU w "NB[PO$FSUJpDBUJPO.BOBHFS w
FUDʜ Managed Services 6TF.BOHFE4FSWJDF
ཧ 04 ϛυϧΣΞ ΞϓϦέʔγϣϯ ཧ 04 ϛυϧΣΞ ΞϓϦέʔγϣϯ ڥք ڥք
EC2ͷ߹ ϚωʔδυαʔϏεͷ߹
ϚωʔδυαʔϏεͰ ʮϝϯς͕ඞཁͳྖҬʯΛ ۃྗݮΒ͢ Managed Services 6TF.BOHFE4FSWJDF
AutoScaling WordPress + ࣗಈԽ ϚωʔδυαʔϏεͷ׆༻ CloudFormationͰႈԽ
ϚωʔδυαʔϏεΛͬͯɺ ߏங͕ෳࡶԽͯ͠͠·ͬͨΒ ݁ہਓྗʹґଘ͢Δ
ྫ͑͜ͷߏ
ઌ΄ͲͷߏΛ࡞ΔϋϯζΦϯ https://amimoto.doorkeeper.jp/events/41522
ઌ΄ͲͷߏΛ࡞ΔϋϯζΦϯ https://amimoto.doorkeeper.jp/events/41522
ઌ΄ͲͷߏΛ࡞ΔϋϯζΦϯ https://amimoto.doorkeeper.jp/events/41522 ख࡞ۀͩͱ΄΅͔͔Δ
None
WPϓϥάΠϯ࿈ܞࣗಈԽ CloudFormation ίʔυͰϦιʔεΛఆٛ kumogataͰϢχοτԽ
GitHubʹίʔυެ։ࡁΈ https://github.com/megumiteam/amimoto-enterprise-cfn
ϦιʔεຖʹϑΝΠϧΛׂ͠ɺ࠶ར༻ੑΛߴΊΔ _include 'include/vpc/vpc.rb' _include 'include/ec2/waithandle_ec2.rb' _include "include/security_group.rb" _include "include/elb.rb" _include
'include/iam/for_stack_001.rb' _include "include/cloudfront/cf.rb" _include "include/s3/s3-media.rb" https://github.com/megumiteam/amimoto-enterprise-cfn/blob/master/ include/001-base-resource.rb
AWS MPʹܝࡌࡁΈ https://aws.amazon.com/marketplace/pp/B01B3ZE1NC/
Aurora൛ϦϦʔεࡁ(Ұ෦) https://aws.amazon.com/marketplace/pp/B01B3ZE1NC/ "VSPSB3FBEMZ
ख࡞ۀͩͱҎ্͔͚ͯࣗྗߏங $MPVE'PSNBUJPOͳΒ͚ͭͩ ͲͪΒ͕ϏδωεʹߩݙͰ͖·͔͢ʁ
AutoScaling WordPress + ࣗಈԽ ϚωʔδυαʔϏεͷ׆༻ CloudFormationͰႈԽ
ϑΝΠϧγεςϜ͕ωοΫ AutoScaling αʔόͷ૿ݮΛࣗಈԽ མͪͯࣗಈͰ෮چͰ͖Δ
ϑΝΠϧγεςϜ
None
࣮CloudFormationରԠͯ͠Δ http://docs.aws.amazon.com/ja_jp/AWSCloudFormation/latest/UserGuide/aws- resource-efs-filesystem.html
ϓϨϏϡʔ൛ͱ͍͑Ͳɺ ޫ໌͍ͯ͞͠Δ
AMIMOTOϚωʔδυͰͷAutoScaleߏ
"VUP4DBMFߏΛ ϝϯς͠ͳ͍ͱμϝ ͱ͍͏
ྫ͑͜Μͳ w $PEF%FQMPZΤʔδΣϯτ͕མͪͨΒͲ͏͢Δ͔ʁ w ಉ͡ߏΛօ͕࡞ΕΔͷ͔ʁ w "84.BSLFU1MBDFʹग़ͤΔ͔ʁ
Now Developing
Session2
AMIMOTO + Server-less Architecture @Amimoto_Ami amimoto-ami.com AMIMOTOʹ͓͚ΔαʔόϨεΞʔΩςΫνϟͷ׆༻ʹ͍ͭͯ
Summary 1. Πϯϑϥϝϯςφϯε͔Βͷ։์ 2. ίετ࠷దԽ 3. MicroServicesʹΑΔૄ݁߹ͳػೳ࣮ AMIMOTOͷػೳ։ൃҎԼͷϝϦοτΛڗड͢ΔͨΊʹαʔόϨεΞʔΩςΫνϟͰͷ࣮ ʹऔΓΜͰ͍·͢:
1. Πϯϑϥϝϯςφϯε͔Βͷ։์ 2. ίετ࠷దԽ 3. MicroServicesʹΑΔૄ݁߹ͳػೳ࣮
ཧ 04 ϛυϧΣΞ ΞϓϦέʔγϣϯ ཧ 04 ϛυϧΣΞ ΞϓϦέʔγϣϯ ڥք ڥք
EC2ͷ߹ Lambdaͷ߹
1. Πϯϑϥϝϯςφϯε͔Βͷ։์ 2. ίετ࠷దԽ 3. MicroServicesʹΑΔૄ݁߹ͳػೳ࣮
࣌ؒ ίετ ࣌ؒ ίετ EC2ͷ߹ Lambdaͷ߹
1. Πϯϑϥϝϯςφϯε͔Βͷ։์ 2. ίετ࠷దԽ 3. MicroServicesʹΑΔૄ݁߹ͳػೳ࣮
௨ৗͷWordPressͷػೳ։ൃ 8PSE1SFTT$PSF 1MVHJO 1MVHJO 1MVHJO 1MVHJO
1MVHJO
ൃੜ͢Δ • ιʔείʔυͷංେԽ • DBͷංେԽ • DB͕୯ҰোͱͳΔ Auto Scalling͕ແҙຯʹ •
ػೳͱίΞɺςʔϚ͕ີ ݁߹ʹ 8PSE1SFTT$PSF 1MVHJO 1MVHJO 1MVHJO 1MVHJO 1MVHJO 1MVHJO 1MVHJO 1MVHJO 1MVHJO 1MVHJO 1MVHJO 1MVHJO
Solution MicroServicesͱ͍͏ൃ
Microservices • γεςϜΛෳͷίϯϙʔωϯτͰߏங • ίϯϙʔωϯτͦΕͧΕಠཱͨ͠γε ςϜͱͯ͠ՔಇͰ͖Δ • ૄ݁߹ • RestfulͳAPIͰγεςϜΛ࿈݁
8PSE1SFTT$PSF $POOFDUPS1MVHJO "1* "1* "1* .JDSP4FSWJDF .JDSP4FSWJDF .JDSP4FSWJDF ͜Ε͔ΒͷWordPressͷػೳ։ൃ
࣮ࣄྫ 1
Problem ݕࡧػೳͷڧԽ
1. શจݕࡧͷػೳͳ͍ɻ୯७ͳλΠτϧͱຊจͷLIKEݕࡧ 2. ΧελϜϑΟʔϧυΛݕࡧରʹΧελϚΠζ͢Δͱٸܹʹݕࡧ͕͘ͳΔέʔε͕༗Δ 3. ίϯςϯπͷྔʹൺྫͯ͠DBͷෛՙ্͕͕Δ Problem
AMAZON Elasticsearch ੌ͍ݕࡧ
Architecture 8PSE1SFTT$PSF $POOFDUPS1MVHJO "1* ".";0/&MBTUJDTFBSDI
࣮ࣄྫ 2
Problem αΠτݕࡧ͔Βͷച্σʔλΛՄࢹԽ͍ͨ͠
AMAZON lambda AMAZON DynamoDB AMAZON API Gateway
Server-less ArchitectureͰՄࢹԽػೳΛ࣮
Architecture 8PSE1SFTT$PSF $POOFDUPS1MVHJO "1* "1* "1* 'VMMUFYUTFBSDI $PMMFDU TVCTDSJQUJPOEBUB 7JTVBMJTF
TVCTDSJQUJPOEBUB
None
'VMM5FYU 4FBSDI %BUB7JTVBMJTJOH %BUB$PMMFDUJPO
None
࣮ࣄྫ 3
Problem AMIMOTOͷϢʔβίϯιʔϧ͕ཉ͍͠
Cognito User Pools ੌ͍Ϣʔβೝূج൫
None
None
None
Server-less ArchitectureʹΑΔ։ൃख๏ͷมԽ
ͳͥ։ൃख๏ͷมԽ͕ى͜Δͷ͔ 1. sshଓͷଘࡏ͠ͳ͍ੈքͰͷ։ൃɺςετɺσϓϩΠ 2. αʔόαΠυϨϯμϦϯά͔ΒΫϥΠΞϯταΠυϨϯμϦϯά ࠓ·Ͱαʔό͕ଘࡏ͢ΔલఏͰൃల͖ͯͨ͠։ൃख๏͕Ұ͑ͳ͘ͳΔ
1. sshଓͷଘࡏ͠ͳ͍ੈքͰͷ։ൃɺςετɺσϓϩΠ 2. αʔόαΠυϨϯμϦϯά͔ΒΫϥΠΞϯταΠυϨϯμϦϯά
• API Gateway, LambdaͷϓϩδΣΫτཧ • ϩʔΧϧڥͰͷLambda࣮ߦ • API GatewayͷҰݩతͳઃఆ •
։ൃɺεςʔδϯάɺຊ൪ڥͷΓସ͑ • AWSڥͷσϓϩΠ • ࣗ࡞ͷΞϓϦέʔγϣϯͷGithubͷެ։ Serverless Framework
1. sshଓͷଘࡏ͠ͳ͍ੈքͰͷ։ൃɺςετɺσϓϩΠ 2. αʔόαΠυϨϯμϦϯά͔ΒΫϥΠΞϯταΠυϨϯμϦϯά
• ViewʹಛԽͨ͠UIϥΠϒϥϦ • ϓϦίϯύΠϧʹΑΔϨϯμϦϯά • ܰྔͰίʔυ͕ॻ͖͍͢ • API Gateway LambdaͷΞϓϦέʔγϣϯͷ
Viewͱͯ͠࡞Γ͍͢ Riot.js
http://qiita.com/horike37 ࠓհͨ͠ΞʔΩςΫνϟͷৄࡉQiitaͷํʹιʔείʔυؚΊͯॻ͍͍ͯ·͢ ڵຯ͋Δํੋඇͷ͍ͧͯΈ͍ͯͩ͘͞
·ͱΊ
ͱ՝ 1.AWSͷεέʔϥϏϦςΟΛ࠷େݶʹൃشͰ͖ͳ͍ɻWordPressͷਂ͍ҋɻ 2.ංେԽ͠ଓ͚ΔσʔλϕʔεͱେྔͷPluginʹΑΔີ݁߹Խɻϝϯςφϯεෆೳঢ়ଶɻ
ղܾ
ͱ՝ ߏஙࣗಈԽͰ͖͚ͨͲ…… ͱ͜ΖͰӡ༻ʁ
ʊਓਓਓਓਓਓਓਓਓਓਓʊ ʼɹӡ༻ࣗಈԽ͍ͨ͠ɹʻ ʉY^Y^Y^Y^Y^Y^Y^Y^Y^Yʉ
Next Stage
@Amimoto_Ami amimoto-ami.com THANK YOU!