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
ナビタイムジャパンのクラウド活用事例~2週間でAlibaba Cloud上に本番サービスをデプ...
Search
NAVITIME JAPAN
PRO
October 30, 2019
Technology
0
32
ナビタイムジャパンのクラウド活用事例~2週間でAlibaba Cloud上に本番サービスをデプロイした話~
2019/10/30に開催された「Alibaba Cloud Internet Champion Day(秋)」にて発表した資料です。
NAVITIME JAPAN
PRO
October 30, 2019
Tweet
Share
More Decks by NAVITIME JAPAN
See All by NAVITIME JAPAN
つよつよリーダーが 抜けたらどうする? 〜ナビタイムのAgile⽀援組織の変遷〜
navitimejapan
PRO
22
15k
実践ジオフェンス 効率的に開発するために
navitimejapan
PRO
3
430
安全で使いやすいCarPlayアプリの 魅せ方:HIGと実例から学ぶ
navitimejapan
PRO
1
160
見えないユーザの声はログに埋もれている! ~ログから具体的なユーザの体験を数値化した事例紹介~
navitimejapan
PRO
6
2.5k
ユーザーのためなら 『デザイン』 以外にも手を伸ばせる
navitimejapan
PRO
2
1.4k
フツーのIT女子が、 Engineering Managerになるまで
navitimejapan
PRO
3
270
不確実性に打ち勝つOKR戦略/How to manage uncertainty with OKR strategy
navitimejapan
PRO
4
3.3k
アジャイルを小さいままで 組織に広める 二周目 / Agile Transformation in NAVITIME JAPAN iteration 2
navitimejapan
PRO
4
1.3k
変更障害率0%よりも「継続的な学習と実験」を価値とする 〜障害を「起こってはならないもの」としていた組織がDirtの実施に至るまで〜 / DevOps Transformation in NAVITIME JAPAN
navitimejapan
PRO
7
5.3k
Other Decks in Technology
See All in Technology
(機械学習システムでも) SLO から始める信頼性構築 - ゆる SRE#9 2025/02/21
daigo0927
0
200
AI エージェント開発を支える MaaS としての Azure AI Foundry
ryohtaka
6
630
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
2
510
人はなぜISUCONに夢中になるのか
kakehashi
PRO
6
1.7k
ホワイトボードチャレンジ 説明&実行資料
ichimichi
0
130
2/18/25: Java meets AI: Build LLM-Powered Apps with LangChain4j
edeandrea
PRO
0
150
Raycast AI APIを使ってちょっと便利な拡張機能を作ってみた / created-a-handy-extension-using-the-raycast-ai-api
kawamataryo
0
150
JEDAI Meetup! Databricks AI/BI概要
databricksjapan
0
280
CDKのコードを書く環境を作りました with Amazon Q
nobuhitomorioka
1
110
Cloud Spanner 導入で実現した快適な開発と運用について
colopl
1
890
表現を育てる
kiyou77
1
220
EDRの検知の仕組みと検知回避について
chayakonanaika
2
410
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Site-Speed That Sticks
csswizardry
4
390
Mobile First: as difficult as doing things right
swwweet
223
9.3k
Speed Design
sergeychernyshev
27
800
Why Our Code Smells
bkeepers
PRO
336
57k
The Invisible Side of Design
smashingmag
299
50k
Scaling GitHub
holman
459
140k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
YesSQL, Process and Tooling at Scale
rocio
172
14k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.3k
Transcript
φϏλΠϜδϟύϯͷΫϥυ׆༻ࣄྫ ʙ2िؒͰAlibaba Cloud্ʹຊ൪αʔϏεΛσϓϩΠͨ͠ʙ גࣜձࣾφϏλΠϜδϟύϯ ాத Ұथ
©NAVITIME JAPAN Who am I ? 2 ໊લɿాத Ұथ ׂɿCloud
Architect ܦྺɿ2013৽ଔೖࣾɻ2017ʙΫϥυܥͷ࡞ۀʹैࣄ ɹɹɹAWSΛϝΠϯʹ৮ͬͯ·͢ɻɻ
©NAVITIME JAPAN 3 • גࣜձࣾ φϏλΠϜδϟύϯ • ઃཱ 2000
3 ݄ 1 • ۀ༰ • φϏήʔγϣϯαΠτɾΞϓϦͷӡӦ։ൃ • ௨৴ΧʔφϏήʔγϣϯࣄۀ • ܦ࿏୳ࡧΤϯδϯͷϥΠηϯεࣄۀ ͳͲ • ैۀһ 540 ໊ (ΤϯδχΞ 80% Ҏ্ʣ Our Company
©NAVITIME JAPAN NAVITIME NAVITIME ެڞަ௨ όεNAVITIME ͜ΈΕΆ υϥΠϒ ΧʔφϏλΠϜ υϥΠϒαϙʔλʔ
τϥοΫΧʔφϏ πʔϦϯά πʔϦϯάαϙʔλʔ ࣗసंNAVITIME Travel/Inbound JapanTravel NAVITIME Transit NAVITIME Travel Plat ϔϧεέΞ ALKOO PC/SP Web 4 Our Products
©NAVITIME JAPAN 5 ϏδωεφϏλΠϜ ަ௨අਫ਼ࢉύοέʔδ ϏδωεφϏλΠϜ ಈଶཧιϦϡʔγϣϯ ࠂ/ΞϥΠΞϯε ΦϯυϝσΟΞ ަ௨ίϯαϧςΟϯά
ిమ/όεࣄۀऀ͚ ιϦϡʔγϣϯ API / SDK ςϨϚςΟΫεαʔϏε Our Products
©NAVITIME JAPAN φϏλΠϜδϟύϯͱதࠃࢢ
©NAVITIME JAPAN தࠃࢢͰͷҊ 7 NAVITIME Transit • ΦϑϥΠϯͰ͑Δܦ࿏୳ࡧ • தࠃࠃ͚ͩͰͳ͘ɺੈքதͷ࿏ઢਤ
Ӿཡ/ܦ࿏୳ࡧ͕Մೳ • தࠃࠃͰ্ւ, ژ, ੨ౡ, ҆, … Λܝࡌ • ຊͷ࿏ઢਤܝࡌ͍ͯ͠ΔͨΊɺ๚ ࣌ʹར༻Մೳ
©NAVITIME JAPAN தࠃࢢͰͷҊ 8 Japan Travel by NAVITIME • ๚؍ޫ٬͚ͷຊ؍ޫΞϓϦ
• ຊͷ؍ޫهࣄӾཡɺݕࡧɺਤɺ ϓϥϯχϯά͕Մೳ • தࠃޠ͚ͩͰͳ͘ӳޠɺؖࠃޠͳͲʹ ରԠ
©NAVITIME JAPAN தࠃࢢͰͷҊ 9 • ๚தࠃਓ͚ͷݕࡧαʔϏεΛ2019/5/28ʹఏڙ։࢝ • ެڞަ௨ػؔΛར༻ͨ͠Ӻ to Ӻͷܦ࿏ݕࡧ͕Մೳ
• தࠃࠃͰ͍׳ΕͨΞϓϦ͔ΒγʔϜϨεʹར༻Մೳ • ػೳʹಛԽͨ͠ϛχϓϩάϥϜͷఏڙຊاۀॳ ʢ2019/6/6࣌ʣ
©NAVITIME JAPAN தࠃࢢͰͷҊ 10 TOPը໘ पลӺݕࡧը໘ ೖྗαδΣετ
©NAVITIME JAPAN தࠃࢢͰͷҊ 11 ݕࡧ݁ՌҰཡ ݕࡧ݁Ռৄࡉ ఀंӺϦετ ӡߦใ
©NAVITIME JAPAN 12 ࠓճɺ͜ͷΞϓϦέʔγϣϯͷόοΫΤϯυʹ͍͓ͭͯ͠·͢
©NAVITIME JAPAN όοΫΤϯυͷߏ
©NAVITIME JAPAN όοΫΤϯυͷߏ 14 CDN SLB AutoScaling ContainerService DBAPIͳͲ ࣾϦιʔε
߳ߓϦʔδϣϯ OSS ECS
©NAVITIME JAPAN όοΫΤϯυͷߏ 15 CDN • தࠃࠃ͔ΒͷΞΫηεɺ๚࣌ʹຊࠃ͔ΒͷΞΫηεΛ ߴʹ͓͜ͳ͏ͨΊCDNܦ༝ͰͷΞΫηε
©NAVITIME JAPAN όοΫΤϯυͷߏ 16 ContainerService • ECSʹΞϓϦέʔγϣϯΛσϓϩΠ͢ΔͷͰͳ͘ɺ ࣾͰ͢Ͱʹར༻࣮ͷ͋ͬͨkubernetesΛར༻ CDN •
தࠃࠃ͔ΒͷΞΫηεɺ๚࣌ʹຊࠃ͔ΒͷΞΫηεΛ ߴʹ͓͜ͳ͏ͨΊCDNܦ༝ͰͷΞΫηε
©NAVITIME JAPAN όοΫΤϯυͷߏ 17 OSS • ΞΫηεϩάͯ͢Object Storage Service (OSS)
ʹอଘ • ߳ߓϦʔδϣϯ֎ʹग़͞ͳ͍Α͏ʹݸਓใʹྀ
©NAVITIME JAPAN όοΫΤϯυͷߏ 18 OSS • ΞΫηεϩάͯ͢Object Storage Service (OSS)
ʹอଘ • ߳ߓϦʔδϣϯ֎ʹग़͞ͳ͍Α͏ʹݸਓใʹྀ • ίϯςφ͔ΒͷΞΫηεϩάͷग़ྗʹfluentdΛར༻ • OSSʹϩάΛग़ྗ͔ͨͬͨͨ͠Ί
©NAVITIME JAPAN όοΫΤϯυͷߏ 19 • Container Service (Cluster/SLB/ASG/…) Resource Orchestration
Service - ROSΛ༻͍ͯϫϯΫϦοΫͰߏங SLB
©NAVITIME JAPAN σϓϩΠڥ 20 • ࣾͰར༻࣮ͷ͋ͬͨSpinnakerͰσϓϩΠ • Spinnaker • ϚϧνΫϥυڥͷCDπʔϧ
• AWS/GCP͚ͩͰͳ͘ɺAlibaba CloudͷσϓϩΠՄೳ
©NAVITIME JAPAN σϓϩΠڥ 21 ᶃJenkinsͷ࣮ߦ ᶅϦϙδτϦ͔ΒઃఆϑΝΠϧऔಘ ᶇઃఆϑΝΠϧΛಡΈࠐΜͰ ɹSpinnaker͕σϓϩΠΛ࣮ߦ ᶆઃఆϑΝΠϧΛݩʹ ɹSpinnakerΛ࣮ߦ
ᶈContainer Registry͔Β ɹ৽͍͠ΠϝʔδΛDL͠ ɹ৽͍͠ΠϯελϯεͰల։ ᶄContainer Registry ɹDockerΠϝʔδΛొ
©NAVITIME JAPAN πϚρΩϙΠϯτ&ॴײ
©NAVITIME JAPAN ߏங࣌ͷπϚρΩϙΠϯτ 23 • RAM (Resource Access Management) ݖݶཧ
• ݖݶΛ͚ͯར༻Ͱ͖ͳ͍αʔϏε͕͋ͬͨ • RootΞΧϯτͰActivate͢Δඞཁ͕͋ͬͨ • CDNͷࣄલݕূ • υϝΠϯઃఆલͷಈ࡞֬ೝ͕Ͱ͖ͳ͍ • ূ໌ॻແྉͷূ໌ॻ͕ར༻Մೳ • ূ໌ॻͷೝূʹυϝΠϯͷઃఆ͕ඞཁ • ͢Ͱʹ͍ͬͯΔυϝΠϯΛ͏߹Γସ͑࣌ʹSSLͷଓஅ ͕ൃੜ͢Δ
©NAVITIME JAPAN ߏங࣌ͷπϚρΩϙΠϯτ 24 • NAT Gatewayͷཧ • NAT GatewayΛ࡞͢ΔલʹɺContainer
ClusterΛ࡞͢Δͱࣗಈ Ͱ࡞͞ΕΔʢROSͰͷߏங࣌ʣ • ಉ࣌ʹ࡞͞Εͨ߹ɺClusterআ࣌ʹҰॹʹআ͞ΕΔͷͰҙ
©NAVITIME JAPAN ϦϦʔεޙͷॴײ 25 • ϚωʔδυαʔϏε͕๛ • ͍উख͕AWSϥΠΫʢ͓͔͛ͰͳΜͱ͔ͳͬͨʣ • ݖݶཧ͕͔ͬ͠ΓͰ͖Δ
• DataV͔͍͍ͬ͜ʂ • αϙʔτΤϯδχΞͷํʹͱ͜ͱΜೖͬͯΒ͑Δ Good
©NAVITIME JAPAN ϦϦʔεޙͷॴײ 26 • ຊޠͷυΩϡϝϯτ͕গͳ͍ʢӳޠগͳ͍ʣ • ϚωʔδυίϯιʔϧͷҰ෦͕ຊޠදهʹະରԠ • ݖݶཧ͕RAM͚ͩͰ݁͠ͳ͍
• RAMϩʔϧ͕͑ͣɺΞΫηεΩʔΛൃߦͤ͟ΔΛಘͳ͍ύλʔϯ͕ଟ͍ ཁ
©NAVITIME JAPAN ϦϦʔεޙͷॴײ 27 • ຊޠͷυΩϡϝϯτ͕গͳ͍ʢӳޠগͳ͍ʣ • ෆ໌ΤϯδχΞͷํʹ֬ೝ • ForumͳͲʹ༗ӹͳใ͕͋ΔͷͰɺதࠃޠΛ༁ͯ͠Ӿཡ
ཁ/ճආࡦᶃ
©NAVITIME JAPAN ϦϦʔεޙͷॴײ 28 • ϚωʔδυίϯιʔϧͷҰ෦͕ຊޠදهʹະରԠ • ը໘ભҠ͢ΔͱಥવதࠃޠʹมΘͬͨΓ͢Δ͜ͱ͕͋Δ • ͻͱ·ͣӳޠͰ࡞ۀ͢Δͷ͕ϕλʔ
ཁ/ճආࡦᶄ
©NAVITIME JAPAN ϦϦʔεޙͷॴײ 29 • ݖݶཧ͕RAM(Resource Access Management)͚ͩͰ݁͠ͳ͍ • Container
Registryผ్RootΞΧϯτ͔ΒActivate͕ඞཁ • RAMͰAdministratorAccessΛ༩͑ͯΤϥʔʹͳΔ͜ͱ • ॳظRootΞΧϯτͰ࡞ۀΛ࣮ࢪ ཁ/ճආࡦᶅ
©NAVITIME JAPAN ϦϦʔεޙͷॴײ 30 • RAMϩʔϧ͕͑ͣɺΞΫηεΩʔΛൃߦͤ͟ΔΛಘͳ͍ύλʔϯ͕ଟ͍ • ECS͔ΒAliyun CLIRAMϩʔϧͷར༻͕Մೳ •
ossutilΞΫηεΩʔͷΈར༻Մೳ • Aliyun CLIͰOSSૢ࡞͕Ͱ͖ͳ͍ • OSSૢ࡞ossutilΛར༻ • DataV͔ΒOSSͷࢀরΞΫηεΩʔͷΈՄೳ ཁ/ճආࡦᶆ
©NAVITIME JAPAN Alibaba CloudͷߋͳΔ׆༻
©NAVITIME JAPAN σʔλੳ 32 • ΞΫηεϩάͷՄࢹԽʹDataVΛ࠾༻ • DataV • ๛ͳάϥϑύλʔϯΛඋ͑ͨߴػೳͳσʔλՄࢹԽπʔϧ
• ΞϦόόάϧʔϓͰಠͷͷച্ՄࢹԽʹΘΕ͍ͯΔ • ՄࢹԽπʔϧͷͨΊɺࣄલʹूܭՃ͓ͯ͘͠ඞཁ͕͋Δ
©NAVITIME JAPAN σʔλੳ 33 • ETLॲཧECSͰ࣮ࢪ • ఆظతʹॲཧΛ࣮ߦ͠ɺఆظతʹΞοϓϩʔυ • ݱঢ়ɺϦΞϧλΠϜϩάੳͰ͖͍ͯ·ͤΜ
• DataVΞοϓϩʔυ͞ΕͨϑΝΠϧΛࢀর OSS ECS OSS DataV
©NAVITIME JAPAN σʔλੳ 34 σϞ
©NAVITIME JAPAN ࠓޙͷల
©NAVITIME JAPAN ۙͷ՝ 36 • ϦΞϧλΠϜσʔλੳڥͷߏங • DataVͷιʔεΛOSS͔ΒApsaraDB for RDSʹมߋ
• ETLॲཧΛECS͔ΒDataWorksʹมߋ • WAFͷಋೖ • ΞΫηεϩάΛݟ͍ͯΔͱظ௨Γதࠃ͔ΒͷΞΫηε͕ଟ͍ • ߈ܸ/ΫϩʔϥʔతΞΫηε͕ݟड͚ΒΕΔͷͰ͍͗ͨ
©NAVITIME JAPAN 37 ෭ʹ͋Δ௨Γɺ Alibaba Cloudͷར༻։͔࢝ΒσϓϩΠ·Ͱ2िؒ ຊ൪αʔϏεΠϯ·Ͱ4िؒͰͨ͠
©NAVITIME JAPAN 38 ࠓߋͰ͕͢ ͦͦɺࠓճͳͥAlibaba CloudΛ͔ͬͨ
©NAVITIME JAPAN 39 ࠓޙɺߋʹ૿Ճ͢ΔͰ͋Ζ͏ ๚தࠃਓͷํʹ͚ͨαʔϏεల։Λҙ͍ࣝͯ͠·͢
©NAVITIME JAPAN 40 ใ ຊɺAlibaba CloudͱφϏλΠϜδϟύϯɺ ๚தࠃਓཱྀߦऀʹ͚ͨαʔϏε࿈ܞΛൃද
©NAVITIME JAPAN 41 ຊɺAlibaba CloudͱφϏλΠϜδϟύϯɺ ๚தࠃਓཱྀߦऀʹ͚ͨαʔϏε࿈ܞΛൃද ใ ྆ࣾͰڠྗ͠๚தࠃਓ͚ͷαʔϏεΛఏڙ༧ఆ
©NAVITIME JAPAN