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
150
EdgeCase - A speaker series by J2 Design
amimoto
0
350
Progress the system operation drastically with Cloud Automator — AMIMOTO side—
amimoto
0
180
AMIMOTO Design Pattern + Server-less Architecture
amimoto
0
500
WooCommerce with Elasticsearch
amimoto
1
470
[日本語] WooCommerce with Elasticsearch
amimoto
0
250
Amazon CloudFront with AWS Certificate Manager
amimoto
0
210
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
サンドボックス技術でAI利活用を促進する
koh_naga
0
140
退屈なことはDevinにやらせよう〜〜Devin APIを使ったVisual Regression Testの自動追加〜
kawamataryo
4
1k
Webアクセシビリティ入門
recruitengineers
PRO
3
1.5k
つくって納得、つかって実感! 大規模言語モデルことはじめ
recruitengineers
PRO
32
12k
「魔法少女まどか☆マギカ Magia Exedra」のグローバル展開を支える、開発チームと翻訳チームの「意識しない協創」を実現するローカライズシステム
gree_tech
PRO
0
420
【5分でわかる】セーフィー エンジニア向け会社紹介
safie_recruit
0
30k
Grafana MCPサーバーによるAIエージェント経由でのGrafanaダッシュボード動的生成
hamadakoji
1
960
カミナシ社の『ID管理基盤』製品内製 - その意思決定背景と2年間の進化 #AWSUnicornDay / Kaminashi ID - The Big Whys
kaminashi
3
710
allow_retry と Arel.sql / allow_retry and Arel.sql
euglena1215
0
140
実践アプリケーション設計 ②トランザクションスクリプトへの対応
recruitengineers
PRO
4
1.2k
おやつは300円まで!の最適化を模索してみた
techtekt
PRO
0
250
今!ソフトウェアエンジニアがハードウェアに手を出すには
mackee
0
130
Featured
See All Featured
Building an army of robots
kneath
306
46k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
Gamification - CAS2011
davidbonilla
81
5.4k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Done Done
chrislema
185
16k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Documentation Writing (for coders)
carmenintech
73
5k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
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!