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
350
Progress the system operation drastically with Cloud Automator — AMIMOTO side—
amimoto
0
190
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
ACA でMAGI システムを社内で展開しようとした話
mappie_kochi
1
310
業務効率化をさらに加速させる、ノーコードツールとStep Functionsのハイブリッド化
smt7174
2
110
空間を設計する力を考える / 20251004 Naoki Takahashi
shift_evolve
PRO
4
450
『OCI で学ぶクラウドネイティブ 実践 × 理論ガイド』 書籍概要
oracle4engineer
PRO
3
170
後進育成のしくじり〜任せるスキルとリーダーシップの両立〜
matsu0228
7
3.2k
Function calling機能をPLaMo2に実装するには / PFN LLMセミナー
pfn
PRO
0
1k
KMP の Swift export
kokihirokawa
0
350
10年の共創が示す、これからの開発者と企業の関係 ~ Crossroad
soracom
PRO
1
690
The Cake Is a Lie... And So Is Your Login’s Accessibility
leichteckig
0
100
成長自己責任時代のあるきかた/How to navigate the era of personal responsibility for growth
kwappa
4
300
大規模サーバーレスAPIの堅牢性・信頼性設計 〜AWSのベストプラクティスから始まる現実的制約との向き合い方〜
maimyyym
5
3.8k
定期的な価値提供だけじゃない、スクラムが導くチームの共創化 / 20251004 Naoki Takahashi
shift_evolve
PRO
4
350
Featured
See All Featured
Balancing Empowerment & Direction
lara
4
680
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
What's in a price? How to price your products and services
michaelherold
246
12k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Code Reviewing Like a Champion
maltzj
525
40k
Keith and Marios Guide to Fast Websites
keithpitt
411
23k
Code Review Best Practice
trishagee
72
19k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
189
55k
Automating Front-end Workflow
addyosmani
1371
200k
Visualization
eitanlees
148
16k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
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!