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
新卒エンジニアから見たデータセンター移行
Search
Tetsuya Taguchi
August 24, 2014
Technology
0
1.2k
新卒エンジニアから見た データセンター移行
今年の5,6月にデータセンターを移行したので、そのときの話です。
DevLOVE現場甲子園2014 東日本大会
http://devlove.doorkeeper.jp/events/11792
Tetsuya Taguchi
August 24, 2014
Tweet
Share
More Decks by Tetsuya Taguchi
See All by Tetsuya Taguchi
どのようにマネージャーを育成するか?
tetsuyataguchi
0
130
わかりやすいブログを書くためにはどうすればよいか?
tetsuyataguchi
1
240
The basic of Scrum
tetsuyataguchi
1
91
Nginxによるリバースプロキシ
tetsuyataguchi
0
580
Chef
tetsuyataguchi
0
56
Docker Pi
tetsuyataguchi
0
130
スクラム開発の広め方
tetsuyataguchi
4
1.2k
Denki de Tenki
tetsuyataguchi
1
320
ポチベル
tetsuyataguchi
1
1k
Other Decks in Technology
See All in Technology
英語は話せません!それでも海外チームと信頼関係を作るため、対話を重ねた2ヶ月間のまなび
niioka_97
0
130
生成AIで「お客様の声」を ストーリーに変える 新潮流「Generative ETL」
ishikawa_satoru
1
330
多様な事業ドメインのクリエイターへ 価値を届けるための営みについて
massyuu
1
390
20250929_QaaS_vol20
mura_shin
0
130
PLaMo2シリーズのvLLM実装 / PFN LLM セミナー
pfn
PRO
2
1k
Optuna DashboardにおけるPLaMo2連携機能の紹介 / PFN LLM セミナー
pfn
PRO
2
900
定期的な価値提供だけじゃない、スクラムが導くチームの共創化 / 20251004 Naoki Takahashi
shift_evolve
PRO
3
330
SwiftUIのGeometryReaderとScrollViewを基礎から応用まで学び直す:設計と活用事例
fumiyasac0921
0
150
AI ReadyなData PlatformとしてのAutonomous Databaseアップデート
oracle4engineer
PRO
0
210
BirdCLEF+2025 Noir 5位解法紹介
myso
0
200
AIが書いたコードをAIが検証する!自律的なモバイルアプリ開発の実現
henteko
1
350
SOC2取得の全体像
shonansurvivors
1
410
Featured
See All Featured
The Pragmatic Product Professional
lauravandoore
36
6.9k
Unsuck your backbone
ammeep
671
58k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
A better future with KSS
kneath
239
17k
BBQ
matthewcrist
89
9.8k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
189
55k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.2k
Code Reviewing Like a Champion
maltzj
525
40k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
Six Lessons from altMBA
skipperchong
28
4k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Transcript
৽ଔΤϯδχΞ͔Βݟͨ σʔληϯλʔҠߦ %FW-PWFߕࢠԂ גࣜձࣾ͛͡Μాޱ !ZPLP[VOB@IBOBP
ాޱ !ZPLP[VOB@IBOBP גࣜձࣾ͛͡Μ ೖࣾ ΠϯϑϥΤϯδχΞ ΞϧόΠτ&9ΤϯδχΞ ΞϝϑτܥΤϯδχΞ
ΠϯϑϥνʔϜͷ͝հ • Πϯϑϥ໊ • ΤϯδχΞ໊ • શࣾһ ຊମ ໊
ΠϯϑϥνʔϜͷ͝հ • Πϯϑϥ໊ • ϦʔμʔϕτφϜͷࢠձࣾ ʮ7FOUVSBʯ
ΠϯϑϥνʔϜͷ͝հ TRXJHHMFʹΑΔϦϞʔτϫʔΫ
ΠϯϑϥνʔϜͷ͝հ 5SFMMPʹΑΔλεΫཧ
͛͡ΜͷΠϯϑϥΛࢧ͑Δٕज़
͢͜ͱ • ࠓͷϓϨθϯͷରऀɺ – αʔόҠߦΛࢼΈΔΠϯϑϥΤϯδχΞ – ৽ਓΠϯϑϥΤϯδχΞ • σʔληϯλʔҠߦͷಈػ • σʔληϯλʔҠߦͷ४උ •
σʔληϯλʔҠߦͷ࣮ߦ • ؾ͍ͮͨ͜ͱɾྑ͔ͬͨ͜ͱɾֶΜͩ͜ ͱ
גࣜձࣾ͛͡Μ
0 2 4 6 8 10 12 14 16 18
20 2008 2009 2010 2011 2012 2013 2014 サービス 18個 ͛͡ΜͷαʔϏεͷ
͢Δձࣾ ૿͑Δ৽نαʔϏε
ͦΕʹରͯ͠ʜ
ݱͷ๊͑Δ • ෳͷ410' ୯Ұো • αʔϏε͝ͱʹඍົʹҟͳΔΠϯϑϥ • ։ൃऀݸਓʹґଘͨ͠ઃఆ
୯Ұোͷڪා • ෳͷαʔϏε͕ಉ࣌ʹམͪΔͷͰɺ – ݪҼ͕Θ͔Βͳ͘ͳΔ – μϯͨ͠ͱ͖ͷμϝʔδ͕େ͖͍
ー ー 移 行 。
Ͳ͏ͯ͠ࠓ·ͰҠߦग़དྷͳ͔ͬͨ ͷʁ ༏ઌॱҐ͕அͰ͖ͳ ͍ • ॏཁΛઆ໌Ͱ͖ͳ͍ • ୭͕Ε͍͍ͷ͔Θ͔Βͳ͍
σʔληϯλʔΛҠߦ͢ΔͨΊʹ ४උͨ͜͠ͱ • ৫ • ϓϥϯ • ઃܭ
σʔληϯλʔΛҠߦ͢ΔͨΊʹ ४උͨ͜͠ͱ • ৫ • ϓϥϯ • ઃܭ
lਖ਼ࣜͳਪਐ୲ऀʹͳΔz • ΠϯϑϥνʔϜଘࡏ͠ͳ͔ͬͨ
lਖ਼ࣜͳਪਐ୲ऀʹͳΔz • ΠϯϑϥνʔϜଘࡏ͠ͳ͔ͬͨ • ΠϯϑϥνʔϜΛ࡞Δ
lਖ਼ࣜͳਪਐ୲ऀʹͳΔz • ܦӦਞʹઆ໌͠ͳ͍ͱ͍͚ͳ͍ • ํΛ֬ݻͨΔͷʹ͠ͳ͍ͱ͍͚ͳ͍
lஶ໊ਓΛট͘z • ܦӦਞʹઆ໌͠ͳ͍ͱ͍͚ͳ͍ • ํΛ֬ݻͨΔͷʹ͠ͳ͍ͱ͍͚ͳ͍ • ;0*% ;*(&Y/0VUTUBOEJOH *OOPWBUJWF%JSFDUPS ੍
lஶ໊ਓΛট͘z • ܦӦਞʹઆ໌͠ͳ͍ͱ͍͚ͳ͍ • ํΛ֬ݻͨΔͷʹ͠ͳ͍ͱ͍͚ͳ͍ • ;0*% ;*(&Y/0VUTUBOEJOH *OOPWBUJWF%JSFDUPS ੍
@naoya
σʔληϯλʔΛҠߦ͢ΔͨΊʹ ४උͨ͜͠ͱ • ৫ • ϓϥϯ • ઃܭ
L1 L2 L3 L4 L5 備考 Webサーバ(Nginxリバー スプロキシ導⼊入) アプリケーションサーバ 切切り出し
DBレプリケーション DBサービス別切切り分け Solrサービス別切切り分け 410'ղফਐḿγʔτ • 初期設定 Level1 • モデルPJ 導⼊入 • 開発環境 へ適⽤用 Level2 • 本番PJ⼀一 部導⼊入 • 本番環境 へ⼀一部適 ⽤用 Level3 ・本番適 ⽤用範囲拡 ⼤大中 Level4 本番全体 運⽤用 メンバー 全体運⽤用 Level5
σʔληϯλʔΛҠߦ͢ΔͨΊʹ ४උͨ͜͠ͱ • ৫ • ϓϥϯ • ઃܭ
Ϋϥυºϋδϯά • ճઢɺαʔόΛαʔϏεͰΓ͚͍ͨ • XFCαʔό؆୯ʹεέʔϧΞτग़དྷ ΔΑ͏ʹ͍ͨ͠ • 4PMSߴػೳͷαʔόΛ͍͍ͨ
Solr 01 Solr 02 FW FW FW FW 回線A 回線B
回線C 回線D 回線B 回線B Solr 03 Solr 04 回線A 回線C Solr 05 回線C Batch 01 Batch 02 回線B 回線B Batch 03 Batch 04 回線A 回線A Bkup 01 Phy01 (VM) 回線D 回線D File 01 回線B ωοτϫʔΫճઢਤ Web DB Solr
Image file and other(sitemap) mail bomber Mail Magazine web Solr
gateway FTP batch NFS web app app app app αʔόߏਤ NGINX Apache MySQL Solr
Image file and other(sitemap) mail bomber Mail Magazine web Solr
gateway FTP batch NFS web app app app app αʔόߏਤ • ୯ҰোΛগͳ͘͢Δ • ͜ͷߏΛඪ४ͱ͢Δ
σʔληϯλʔΛҠߦ͢Δ • σʔληϯλʔܾఆ • ϥοΩϯά • ڥߏங
ڥߏங • *OGSBTUSVDUVSFBTDPEF • ιʔγϟϧίʔσΟϯά • αʔϏε୲ऀͱ֬ೝΛͱΓͳ͕Βڥ Λߏங • ϨϏϡʔͯ͠Β͑Δ
ڥߏங • *OGSBTUSVDUVSFBTDPEF • ιʔγϟϧίʔσΟϯά • αʔϏε୲ऀͱ֬ೝΛͱΓͳ͕Βڥ Λߏங • ϨϏϡʔͯ͠Β͑Δ
ՌɾΑ͔ͬͨ͜ͱɾֶΜͩ͜ͱ
Ռ • ୯Ұোͷղফ • Πϯϑϥߏͷඪ४Խ • ଐਓԽ͞Ε͍ͯͨ࡞ۀͷݟ͑ΔԽ
Α͔ͬͨ͜ͱ
ΠϯϑϥҠߦͷޭཁҼ • ৫ɺϓϥϯɺઃܭΛ͓͑͞Δ – lਖ਼ࣜͳਪਐ୲ऀʹͳΔz – lஶ໊ਓΛট͘z
αʔόߏਤɺ ίϛϡχέʔγϣϯπʔϧ
αʔόߏਤɺ ίϛϡχέʔγϣϯπʔϧ • શαʔόͷߏਤΛॻ͍ͨ • ͜ΕΛݩʹαʔόͷߏΛ͠߹͏͜ͱ ͕ग़དྷΔ
ΈΜͳΛר͖ࠐΉ ιʔγϟϧίʔσΟϯά • Πϯϑϥͷ࡞ۀؔऀ͕ଟ͍ • ίϛϡχέʔγϣϯΛ(JU)VCͰऔΕΔ • ίϛϡχέʔγϣϯίετͷݮ
ֶΜͩ͜ͱ • Πϯϑϥ͕શ͘Θ͔Βͳ͍ঢ়ଶ͔Βɺγε ςϜͷߏ͕Θ͔ΔΑ͏ʹͳͬͨ • ΠϯϑϥͱαʔϏεͷͭͳ͕Γ͕Θ͔ͬ ͨ • πʔϧ͑Δ͚Ͳɺཧղग़དྷͯΔʁ
͛͡ΜͰɺ ҰॹʹΠϯϑϥΛͬͱͬͱ վળ͍ͨ͠ΤϯδχΞΛ ืू͍ͯ͠·͢ɻ
ͱ͍͏͔ɺҿΈ·͠ΐ͏ʂ