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
900
[東京]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
370
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
710
[日本語]Amazon CloudFront with AWS Certificate Manager
amimoto
2
4.6k
Other Decks in Technology
See All in Technology
Redshift認可、アップデートでどう変わった?
handy
1
120
Keynoteから見るAWSの頭の中
nrinetcom
PRO
1
160
会社紹介資料 / Sansan Company Profile
sansan33
PRO
11
390k
2025年のデザインシステムとAI 活用を振り返る
leveragestech
0
680
First-Principles-of-Scrum
hiranabe
2
1.1k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.5k
I tried making a solo advent calendar!
zzzzico
0
130
Node vs Deno vs Bun 〜推しランタイムを見つけよう〜
kamekyame
1
200
国井さんにPurview の話を聞く会
sophiakunii
1
310
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
4
17k
AIと融ける人間の冒険
pujisi
0
110
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
331
21k
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
360
Technical Leadership for Architectural Decision Making
baasie
0
200
Building the Perfect Custom Keyboard
takai
2
670
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
100
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
400
The Language of Interfaces
destraynor
162
26k
Optimizing for Happiness
mojombo
379
70k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
140
エンジニアに許された特別な時間の終わり
watany
106
220k
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!