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
AWSでの漸進的なアーキテクチャ変更 at タップル誕生 / step-by-step-mig...
Search
michinobu_shimatani
April 09, 2019
Technology
230
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
AWSでの漸進的なアーキテクチャ変更 at タップル誕生 / step-by-step-migration-at-tapple
michinobu_shimatani
April 09, 2019
More Decks by michinobu_shimatani
See All by michinobu_shimatani
タップル誕生における、事業成長に合わせた継続的なシステム改善について/tapple-continuous-system-improvement
michio0o
1
780
見積もりとは〇〇である / estimate-is-hogehoge
michio0o
0
96
タップル誕生における事業の成長と開発体制の歩み / tapple-development-org-history
michio0o
0
1.5k
タップル誕生におけるマッチ体験向上アイテムの実装
michio0o
0
2.9k
Elasticsearchの活用と課題 at タップル誕生
michio0o
0
4.1k
Other Decks in Technology
See All in Technology
機械学習を「社会実装」するということ 2026年夏版 / Social Implementation of Machine Learning June 2026 Version
moepy_stats
5
2.4k
SONiCのLinuxベースを活かしたZabbix監視
sonic
0
160
小さくはじめるSLI/SLO ~育てながら組織に定着させる実践知~ / Starting Small with SLI/SLOs: Building Adoption Through Continuous Growth
nari_ex
7
1.9k
ルールやカスタム機能、どう活かす?ハンズオンで体感するIBM Bobの出力コントロール
muehara
1
160
SONiC Scale-Up Working Group から探る Scale-UpやUltraEthernet機能の実装方法
ebiken
PRO
2
340
Claude Code の Sandbox 機能を Anthropic Sandbox Runtime(srt) で試そう!/lets-play-anthropic-sandbox-runtime
tomoki10
1
600
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.5k
LayerX コーポレートエンジニアリング室におけるサプライチェーンセキュリティへの取り組み / Supply Chain Security at LayerX Corporate Engineering
yuyatakeyama
2
370
AAIFに入ってみた ~内から見えるコミュニティ動向~
sato4
0
230
AIの性能が向上しても未解決な組織の重大問題は何か?/An Unsolved Organizational Problem in the Age of AI
moriyuya
4
680
就職⽀援サービスにおけるキャリアアドバイザーのシフトスケジューリング
recruitengineers
PRO
1
150
プロダクト開発から業務改善コンサルまで。事業全体へ「染み出す」ことで広がるエンジニアの可能性
ham0215
0
130
Featured
See All Featured
Google's AI Overviews - The New Search
badams
0
1k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
140
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
270
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
320
Navigating Weather and Climate Data
rabernat
0
220
Ruling the World: When Life Gets Gamed
codingconduct
0
250
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
340
Accessibility Awareness
sabderemane
1
140
Evolving SEO for Evolving Search Engines
ryanjones
0
220
Bash Introduction
62gerente
615
220k
Design in an AI World
tapps
1
240
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
420
Transcript
AWSͰͷਐతͳΞʔΩςΫνϟมߋ at λοϓϧੜ 2019/04/09ɹBackend Engineerɹ Michinobu Shimatani
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 2 About Me 䃊靼խ㸾⠼ 4IJNBUBOJ.JDIJOPCV $ZCFSBHFOU*OD .BUDIJOH"HFOU*OD NJDIJP NJDIJPP
1SPEVDU _TPDJBMHBNF _OPXUBQQMF غحؙؒٝسؒٝآص،
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 3 झຯͰͭͳ͕Δ࿀׆αʔϏεʮλοϓϧੜʯ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 4 झຯͰͭͳ͕Δ࿀׆αʔϏεʮλοϓϧੜʯ 馯ךؕذ؞ٔ鼅䫛 ְְַ٥؎و؎ثד 湫䠬涸ח鼅䫛 ֶ✼ְךְְַד ًحإ٦آ❛䳔
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 5 αʔϏεॱௐʹ 2018ʹձһ400ສಥഁ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 6 ࢢͷมԽʹ͏γεςϜͷཁٻมԽ - ΑΓߴ͍ύϑΥʔϚϯεɾεέʔϥϏϦςΟ͕ٻΊΒΕ͖ͯͨ - Ϣʔβͷ૿ՃʹͬͯɺτϥϑΟοΫ૿Ճ - ϝσΟΞ࿐ग़ʹΑΔεύΠΫͷൃੜ -
ΑΓޮతͳ։ൃ͕ٻΊΒΕ͖ͯͨ - ͨ͘͞Μͷڝ߹ʹଧͪউͭͨΊʹ վળαΠΫϧΛૣΊ͍͖͍ͯͨ "84פך獳鏣
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 7 ҠઃγεςϜ৽ͷқ - γεςϜΛมߋ͢Δ͜ͱগͳ͔ΒͣϦεΫൃੜ͢Δ - ΞϓϦΤϥʔɺ௨৴োɺσʔλϩετɺαʔϏεμϯͳͲ - ͦͷҠઃࠓΔҙຯ͕͋Δͷʁʹ͑Δ -
αʔϏεͷάϩʔε͕ඞཁͳதɺେ͖ͳϦεΫෛ͍ͨ͘ͳ͍ - ܦӦऀͷઆ໌େ͖͘ͳΔ - γεςϜʹѱ͍ӨڹΛग़ͣ͞ɺΞʔΩςΫνϟΛେ͖͘ม͑Δ͜ ͱқ͕ߴ͍ ٔأؙ剑㼭⻉׃אאծ 圓䧭㢌⻉ׇׁגְֻחכוֲׅלְְֲַ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 8 ෳࡶͳมߋେมʂ - ܭըΛ࡞Δͷ͕େม - ఔ͕૿͑ΕͦΕ͚ͩෆ࣮֬ੑ͕૿͢ - ӨڹΛ֬ೝ͢Δͷ͕େม -
୯७ʹ֬ೝ͢Δ߲͕૿͑Δ - ൃੜ࣌ͷΓ͚͕େม - Γ͢ͷ͕େม - શͯͷཁૉΛߟ্ྀͨ͠ͰՄٯੑΛ୲อ͢Δͷ͍͠ ؽحؚغٝٔٔ٦أכ/(կزٓـٕח㼎ׅٔأؙ盖椚ָꨇ׃ְկ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 9 ಉ࣌ʹൃੜ͢Δߋ৽গͳ͍ํ͕ྑ͍ 葺ְ1VMM3FRVFTUך銲稆 ⽃♧ך湡涸ח穾גְֿה 㢌⻉ך珏겲כא֮
BEE VQEBUF EFMFUF SFGBDUPS 珏겲嫣ח13ָ⳿גֻהٖؽُ٦׃װְׅ 䕦갟ָ椚鍑׃װֻׅծ醱꧟⻉׃חְֻ 堣腉ך鷄⸇ 堣腉ך⹛⡲㢌刿 堣腉ךꤐ 堣腉ך䮶莸ְ㢌刿ׇ׆ח刿倜
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 10 ਐతʹΔͱ͏·͍͘͘ • ਐతͱʮॱΛͬͯখ͞ͳมԽΛى͍ͯ͘͜͠ʯ͜ͱ • খ͞ͳมԽϦεΫཧ͍͢͠ • ܭըΛ࡞͢Δൣғ͕ݶఆͰ͖Δ •
มߋʹΑΔӨڹൣғ͕ߜΒΕΔ • τϥϒϧରԠͷൣғ͕ߜΒΕΔ וְֲֲ䕦갟ָ饯ֹ䖤ַ姻׃ֻ椚鍑דֹלծٔأؙח㼎䘔׃װְׅկ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 11 ࠓ͢͜ͱ • AWSͷҠઃΞʔΩςΫνϟ৽ΛͲ͏ͬͯਐతʹਐΊ͔ͨ • ਐతͳߏมߋʹAWSͷͲͷΑ͏ͳػೳ͕͔͑ͨ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 12 ҠઃͷܭըϑΣʔζ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 13 ࣌ͷγεςϜߏ(ϓϥΠϕʔτΫϥυ)
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 14 طଘγεςϜͷ՝ • ߏͷཧίετͷߴ͞ • σϓϩΠ͕େม • ύϑΥʔϚϯε͕ෆ҆ •
ͦͷଞٕज़తෛ࠴
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 15 վળͷΰʔϧΛܾΊΔ • ղফ͖͢ࢁੵΈ • վળ͍ͨ͠ͷʹ༏ઌॱҐΛ͚ͭΔ͜ͱ͕େࣄ • ࢦͨ͠ߏ •
ECSͰͷίϯςφӡ༻ͱΦʔτεέʔϦϯάରԠ • DB࠷దͳΠϯελϯελΠϓͰΫϥελ࠶ߏங • σʔλϕʔεͰ͖Δ͚ͩϚωʔδυΛར༻ • ͱ͍͑શ෦ΛҰؾʹΓ͖Δͷେมͦ͏ɻɻɻ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 16 ҠઃΛ̏ͭͷϑΣʔζʹׂ فٓ؎ك٦ز ؙٓؐس ϑΣʔζ1 σʔλϕʔεͷҠઃ فٓ؎ك٦ز ؙٓؐس ϑΣʔζ2
EC2ͷҠઃ ϑΣʔζ3 ECSͷҠઃ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 17 σʔλϕʔεҠઃ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 18 ڌؒͷωοτϫʔΫӽ͕͑՝ فٓ؎ك٦ز ؙٓؐس "QQ 倜%# וֲװג籬ּ 㣐ֹזنزٕطحؙהזגְ%#⮚⯓涸ח何㊣׃ְ
%#⮚⯓׃ג獳鏣ׅחכ فٓ؎ك٦زؙٓؐسה"84הךדך鸐⥋䬐⥂׃זֽלזזְ ػؿؓ٦وٝأ⸋⻉ח״גծ؟٦ؽأ⡤꿀衅הֽׅחכְַזְ ؎ٝة٦طحز穗歋דך䱸竲דכ⿑׃ְ וֲװג㹋植ׅ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 19 AWS Direct Connect "84%JSFDU$POOFDU %9 הכ
"84הِ٦ؠ鏣⪒㼔欽㔐简ד䱸竲ׅطحزٙ٦ؙ؟٦ؽأ ؎ٝة٦طحز穗歋ד䱸竲ׅ״ծع؎ػؿؓ٦وٝأד㸜㹀׃橆㞮㹋植דֹ 䒦爡דכ傀ח荈爡فٓ؎ك٦زؙٓؐسה"84ד圓眠幥 Ⰻ爡דⰟ鸐ך㔐简ⵃ欽 獳鏣㼎韋 NPOHPEC筨㺁ꆀ(#⟃♳ծ〴玎䏝ד圓䧭ׁؙٓأة 䬿挿ך鸐⥋ؔ٦غ٦قحسחאְג 頾蚚鑐꿀ך穠卓ծⰋ⡤ךإٔ٦فحزכ㣐䌴ח何㊣կ䬿挿דך鸐⥋؝أزכ 搀鋔דֹ眔㔲 黝ⴖז؎ٝأةٝأة؎فծ*0ألحؙ鼅ץֿהדך䛷䜋ך倯ָכַח㣐ְֹ فٓ؎ك٦ز ؙٓؐس "QQ 倜%# %JSFDU$POOFDU
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 20 AWS Direct ConnectʹΑΔϋΠϒϦουڥ "QQ %# 倜%# %9ח״"84הفٓ؎ك٦زؙٓؐس䱸竲 "84⩎ך%#⯓遤׃גٖفٔ؛٦ءׇׁّٝ
%9穗歋ד ٖفٔ؛٦ءّٝ فٓ؎ك٦زؙٓؐس "QQ %# 倜%# 倜%#ך彊⪒ָ㸣✪䖓 فٓ؎ك٦زؙٓؐس♳ך"11倜%#פ %9穗歋 ד،ؙإأ 鸐䌢ךEVNQծSFTUPSF״稆傍ְ獳鏣ָ〳腉 فٓ؎ك٦ز ؙٓؐس فٓ؎ك٦ز ؙٓؐس
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 21 σʔλϕʔε͚ͩҠઃͨ͠ޙͷߏ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 22 Direct Connectར༻ʹΑΔԸܙ • ٻΊΒΕΔύϑΥʔϚϯεతʹɺઐ༻ճઢͰͳ͍ͱڌؒΛލ͍ͩ ߏݫ͔ͬͨ͠ • Direct Connect͕ͳ͔ͬͨΒΞϓϦͱDB྆ํΛಉ࣌ʹҠઃ͢Δ͜ͱʹ
ͳͬͨͣ • αʔϏεͷ࠷େ͖ͳϘτϧωοΫͱͳ͍ͬͯͨDBΛૣظʹ վળͰ͖ͨͷྑ͔ͬͨ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 23 EC2ͷҠઃ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 24 ϓϥΠϕʔτΫϥυ্ͷapiΛAWSҠઃ͢Δ فٓ؎ك٦زؙٓؐس %# BQJ؟٦غ٦ "84♳חBQJ؟٦غ٦圓眠׃ծفٓ؎ك٦سؙٓؐسפך،ؙإأ搀ֻׅ %9穗歋 ד،ؙإأ
BQJ؟٦غ٦ LB ֿח،ؙإأׅ״ֲח
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 25 ECSͷલʹEC2ҠߦΛڬΜͩཧ༝ • ༏ઌࣄ߲ύϑΥʔϚϯε্ͱΦʔτεέʔϦϯάରԠ • ·ͣٸͳεύΠΫʹ͑ΒΕΔ͜ͱ͕࠷༏ઌ • ίϯςφԽͰಘΒΕΔӡ༻ίετܰݮɺ࣍ͷϑΣʔζͰେৎ •
EC2ͷߏมߋͳΒૉૣ࣮͘ߦͰ͖ͦ͏ • طଘͷϓϩϏδϣχϯάࢿ࢈(ansible)͕׆༻Ͱ͖Δ • ϗετ໊ͱ͍ͬͨڥґଘͷઃఆͷमਖ਼͘Β͍Ͱྃͦ͠͏ • มߋ͞ΕΔཁૉ͕গͳ͍ͨΊɺݕূ߲͕গͳͯ͘ࡁΉ • ίϯςφରԠ͢ΔͱͳΔͱผ్ݕূɾमਖ਼߲͕ൃੜͦ͠͏ গͳ͍มߋͰେ͖ͳϝϦοτΛड͚ΒΕΔ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 26 ϓϥΠϕʔτΫϥυ্ͷapiΛAWSҠઃ͢Δ فٓ؎ك٦زؙٓؐس %# BQJ؟٦غ٦ "84♳חBQJ؟٦غ٦圓眠׃ծفٓ؎ك٦سؙٓؐسפך،ؙإأ搀ֻׅ %9穗歋 ד،ؙإأ
BQJ؟٦غ٦ LB ֿח،ؙإأׅ״ֲח
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 27 Route53 Traffic flowʹ͍ͭͯ 3PVUF5SBDPX 醱꧟זٕ٦ذ؍ؚٝهٔء٦ַװֻׅؽآُ،ٓ؎ؤծ鏣㹀דֹ
鏣㹀דֹٕ٦ٕכ圫ղ ؿؑ؎ٕؔ٦غ٦ծٖ؎ذٝء٦ծ⡘縧䞔㜠ծ⸇ꅾծFUD ➙㔐כչ⸇ꅾٕ٦ٕպ⢪欽
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 28 Route53 Traffic flowΛͬͨΞϓϦͷҠઃ فٓ؎ك٦زؙٓؐس %# BQJ؟٦غ٦ ⴱ劍ך鸐⥋穗騟
فٓ؎ك٦زؙٓؐسך-#ָ湫䱸せ鍑寸ׁגְ %9穗歋 ד،ؙإأ BQJ؟٦غ٦ 3PVUF 5SBDPX LB
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 29 Route53 Traffic flowΛͬͨΞϓϦͷҠઃ فٓ؎ك٦زؙٓؐس %# BQJ؟٦غ٦ 5SBDPX穗歋׃גفٓ؎ك٦زؙٓؐسפٕ٦ذ؍ؚٝ
"84橆㞮פךٕ٦ذ؍ؚٕٝ٦ٕ鏣㹀׃גֶֻ ⸇ꅾٕ٦ٕח׃גֶֽלծٕ٦ذ؍ׁؚٝזְ %9穗歋 ד،ؙإأ BQJ؟٦غ٦ 3PVUF 5SBDPX LB
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 30 Route53 Traffic flowΛͬͨΞϓϦͷҠઃ فٓ؎ك٦زؙٓؐس %# BQJ؟٦غ٦ 㼰׃׆א"84⩎ך⸇ꅾٕ٦ٕ㟓װ׃גְֻ
剑ⴱכדؒٓ٦涪欰剣搀ך圫㶨鋅 鹈ְַֻֽגծⰋגךزٓؿ؍حؙ"84פ %9穗歋 ד،ؙإأ BQJ؟٦غ٦ 3PVUF 5SBDPX LB
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 31 Traffic flowͷϝϦοτ - τϥϑΟοΫௐͷ؆୯͞ - ༧ظͤ͵τϥϒϧൃੜ࣌ʹ͙͢ΓͤΔͱ͍͏҆৺ײ 䖚ղח崧׃גְֽךדծأ؛٦ؚٔٝך锃侭瘝׃װְׅ
ฏۉͰ2.5ഒ͍ʂ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 33 ECSͷҠઃ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 34 ECSͷߏ ةحفٕך&$4圓䧭 &$דؙٓأة麊欽 BQJծ盖椚歗ծXFC晛؝ٝذش⻉
'BSHBUF⢪זַ椚歋 ث٦يװ⠓爡ⰻד㣐鋉垷زٓؿ؍حؙ䪔ֲ'BSHBUF圓䧭ך濼鋅ָזַ 植㖈כ⠓爡ⰻדך㹋籐֮ծ؝أزך⦼♴־֮ג'BSHBUFפך鯹ׇ䳔ִ嗚鎢 ؝ٝذش⻉ךع٦سٕ ⟃ַ؝٦سٔؿ؋ؙةדזץֻGBDUPS חז״ֲח 何⥜׃גֹךד؝٦س㢌刿כ㼰זֻ幥 5IF5XFMWFGBDUPS"QQխխIUUQTGBDUPSOFUKB
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 35 EC2͔ΒECSͷҠઃ %# BQJ؟٦غ٦ 3PVUF 5SBDPX &$獳鏣הずֻׄ5SBDPXⵃ欽
-#ず㡦ך䮶ⴓֽח㼎䘔 ؚٗ鯄鷏חג鹼䒀涪欰կⴖ䨱׃㹋倵׃ ؙٔؒأزꆀָ㼰זַ ּׅחⴖ䨱ׇךד㣐׃㉏겗חזזַ 5SBDPX BQJ؟٦غ٦PO&$4
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 36 Ҡઃલ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 37 શͯͷҠઃϑΣʔζྃޙ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 38 ECSͷΓ͑Ͱײͨ͡ϝϦοτ ؝ٝذش⻉ח״ًٔحز ぐ橆㞮דずׄ؎ً٦آ⢪ְ㔐ֿׅהדծ⥋걾䚍ָ䬐⥂דֹ ؎ىُ٦ةـٕזךדծ涪鎉铂זוךغ٦آّٝ،حفָ⟃״孡鯪ח
ؔ٦زأ؛٦ָؚٔٝ知⽃ &$ה嫰ץծ،فٔך剑倜晛ךرفٗ؎וֲַׅ孡ח׃זֻג葺ְ ٗ٦ٕغحؙⳢ椚ָ㺁僒ח ⟃ךةأؙ㹀纏ⱄ黝欽ׅלծ⹛⡲׃גְ朐䡾חٗ٦ٕغحؙדֹ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 39 ࠓޙͷల و؎ؙٗ؟٦ؽأ⻉ ✲噟䧭ꞿ⸇鸞ׇׁծ״أ؛٦ٓـٕז穈籼٥ءأذي湡䭷ׅ &$4♳דך؟٦ؽأ嗚⳿זוծ♴㖑כ䲧גְ
وحثؚٝ،ٕ؞ٔؤيװ♶姻ِ٦ؠך嗚濼ך䓼⻉ ر٦ةⴓ匿٥"*٥堣唒㷕统זוזו "NB[PO1FSTPOBMJ[Fծ3FLPHOJUJPOծ/FQUVOFזוזו ءأذي獳鏣ח״ծ"84ח֮ꟼ鸬؟٦ؽأה鸬䵿ָ׃װֻׅזגְ
h.BUDIJOH"HFOU*OD"MM3JHIUT3FTFSWFE 40 ·ͱΊ ءأذي㢌⻉ך䗳銲䚍 㢌⻉ךأؾ٦سָ鸞ְ⚅ך⚥חさׇגծءأذي㢌⻉ׅ䗳銲ָ֮ չ恷鹌䚍պהְֲ罋ִ倯כ㢌⻉ךع٦سٕ♴־
זץֻ♧㔐ך㢌刿㼭ֻׁׅ "84חכ؟ه٦زׅ堣腉ָֻׁ֮