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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Amimoto - Flexible Cloud WordPress Hosting
May 13, 2016
Technology
910
0
Share
[東京]Cloud_Automatorで攻めのシステム運用 AMIMOTO スタック編
Amimoto - Flexible Cloud WordPress Hosting
May 13, 2016
More Decks by Amimoto - Flexible Cloud WordPress Hosting
See All by Amimoto - Flexible Cloud WordPress Hosting
[日本語] AMIMOTO-AMI Lineup
amimoto
0
180
EdgeCase - A speaker series by J2 Design
amimoto
0
370
Progress the system operation drastically with Cloud Automator — AMIMOTO side—
amimoto
0
210
AMIMOTO Design Pattern + Server-less Architecture
amimoto
0
530
WooCommerce with Elasticsearch
amimoto
1
490
[日本語] WooCommerce with Elasticsearch
amimoto
0
270
Amazon CloudFront with AWS Certificate Manager
amimoto
0
230
WordPress with CloudFront + AMAZON RDS + S3
amimoto
1
720
[日本語]Amazon CloudFront with AWS Certificate Manager
amimoto
2
4.6k
Other Decks in Technology
See All in Technology
AWS WAFの運用を地道に改善し、自社で運用可能にするプラクティス
andpad
1
540
みんなの考えた最強のデータ基盤アーキテクチャ'26前期〜前夜祭〜ルーキーズ_資料_遠藤な
endonanana
0
460
Claude Code で使える DuckDB Skills を試してみた / DuckDB Skills and Claude Code
masahirokawahara
1
870
Purview Endpoint DLP 動かしてみた
kozakigh
1
450
いつの間にかデータエンジニア以外の業務も増えていたけど、意外と経験が役に立ってる
zozotech
PRO
0
690
インプロセスQAのための要因から捉えるプロジェクトリスクマネジメントnano #1 開発リソース効率状態への対処 #jasstnano
barus_qa
0
190
可視化から活用へ — Mesh化・Segmentation・アライメントの研究動向
gpuunite_official
0
230
20260516_SecJAWS_Days
takuyay0ne
2
500
開発サイクルのボーダーレス化に伴う組織変革から学んだこと / Organizational Transformation Amid the Borderless Development Cycle
mii3king
0
270
Fラン学生が考える、AI時代のデザインに執着した突破口
husengs7
1
220
CARTA HOLDINGS エンジニア向け 採用ピッチ資料 / CARTA-GUIDE-for-Engineers
carta_engineering
0
47k
20260515 ID管理は会社を守る大切な砦!〜🔰情シス向け〜
oidfj
0
700
Featured
See All Featured
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
530
Crafting Experiences
bethany
1
150
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
170
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
140
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.3k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
330
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
550
Ruling the World: When Life Gets Gamed
codingconduct
0
230
Thoughts on Productivity
jonyablonski
76
5.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
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!