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
ECS to GKE 〜実運用から考えるコンテナ運用の最適化〜
Search
NAVITIME JAPAN
PRO
December 12, 2016
Programming
0
42
ECS to GKE 〜実運用から考えるコンテナ運用の最適化〜
GCPの環境が最近急速に整ってきたので、
既存のECS環境をGKE上に構築してみた話
※ サービス自体を移行した話ではないです
NAVITIME JAPAN
PRO
December 12, 2016
Tweet
Share
More Decks by NAVITIME JAPAN
See All by NAVITIME JAPAN
つよつよリーダーが 抜けたらどうする? 〜ナビタイムのAgile⽀援組織の変遷〜
navitimejapan
PRO
23
15k
実践ジオフェンス 効率的に開発するために
navitimejapan
PRO
3
660
安全で使いやすいCarPlayアプリの 魅せ方:HIGと実例から学ぶ
navitimejapan
PRO
1
220
見えないユーザの声はログに埋もれている! ~ログから具体的なユーザの体験を数値化した事例紹介~
navitimejapan
PRO
6
2.8k
ユーザーのためなら 『デザイン』 以外にも手を伸ばせる
navitimejapan
PRO
2
1.5k
フツーのIT女子が、 Engineering Managerになるまで
navitimejapan
PRO
3
340
不確実性に打ち勝つOKR戦略/How to manage uncertainty with OKR strategy
navitimejapan
PRO
4
3.5k
アジャイルを小さいままで 組織に広める 二周目 / Agile Transformation in NAVITIME JAPAN iteration 2
navitimejapan
PRO
4
1.3k
変更障害率0%よりも「継続的な学習と実験」を価値とする 〜障害を「起こってはならないもの」としていた組織がDirtの実施に至るまで〜 / DevOps Transformation in NAVITIME JAPAN
navitimejapan
PRO
7
5.6k
Other Decks in Programming
See All in Programming
システム成長を止めない!本番無停止テーブル移行の全貌
sakawe_ee
1
210
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
270
“いい感じ“な定量評価を求めて - Four Keysとアウトカムの間の探求 -
nealle
2
11k
NPOでのDevinの活用
codeforeveryone
0
860
なんとなくわかった気になるブロックテーマ入門/contents.nagoya 2025 6.28
chiilog
1
280
テスト駆動Kaggle
isax1015
1
430
猫と暮らす Google Nest Cam生活🐈 / WebRTC with Google Nest Cam
yutailang0119
0
160
Webの外へ飛び出せ NativePHPが切り拓くPHPの未来
takuyakatsusa
2
560
iOS 26にアップデートすると実機でのHot Reloadができない?
umigishiaoi
0
130
Advanced Micro Frontends: Multi Version/ Framework Scenarios @WAD 2025, Berlin
manfredsteyer
PRO
0
280
ご注文の差分はこちらですか? 〜 AWS CDK のいろいろな差分検出と安全なデプロイ
konokenj
2
120
GitHub Copilot and GitHub Codespaces Hands-on
ymd65536
2
150
Featured
See All Featured
KATA
mclloyd
30
14k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
54k
Building an army of robots
kneath
306
45k
Faster Mobile Websites
deanohume
307
31k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Why Our Code Smells
bkeepers
PRO
336
57k
Music & Morning Musume
bryan
46
6.6k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Statistics for Hackers
jakevdp
799
220k
How to train your dragon (web standard)
notwaldorf
96
6.1k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Transcript
ECS to GKE ʙ࣮ӡ༻͔Βߟ͑Δίϯςφӡ༻ͷ࠷దԽʙ .JOBNJ"PZBNB/JHIU
ࣗݾհ େೆɹݡ྄ גࣜձࣾφϏλΠϜδϟύϯ ΞʔΩςΫτ Cloud, Container, Datadog
NAVITIME × Cloud ΦϯϓϨத৺ʢ2000نʣ ϩάج൫ɺσʔλੳɺCDN ͳͲͰར༻ FaaS Λར༻ͨ͠ Serverless Architecture
ͳͲ ࠃ͚αʔϏε
NAVITIME × Cloud ւ֎͚αʔϏε ΫϥυʢेΠϯελϯεنʣ NAVITIME Transit ʢւ֎͚αʔϏεʣ NAVITIME Travelʢւ֎ཱྀߦऀ͚αʔϏεʣ
NAVITIME Travel ւ֎ཱྀ͚ߦऀ͚νέοτ༧αʔϏε WEB Ͱఏڙ 2016/11 ϩʔϯνɺAWS ECS Λར༻
NAVITIME Transit iOS, Android, WEB Ͱఏڙ ւ֎͚ҊαʔϏε 2015/04 ʙ ΦϯϓϨ͔Β
AWS ҠߦʢEC2ʣ 2016/03 ʙ ECS Λར༻ →GKE Ͱࢼͯ͠Έͨ
ຊ͓͢͠Δ͜ͱ GCP ͷڥ͕࠷ۙٸʹ͖ͬͯͨͷͰɺ طଘͷ ECS ڥΛ GKE ্ʹߏஙͯ͠Έͨ ※ αʔϏεࣗମΛҠߦͨ͠Ͱͳ͍Ͱ͢
Agenda ECS ࠾༻ͷཧ༝ ECS Λӡ༻ͯ͠Έͯ GKEʢGoogle Container Engineʣ GKE ར༻ͷಈػ
GKE ࢼͯ͠Έͯ ·ͱΊ ࠓޙ
ECS ࠾༻ͷཧ༝ ɾAWS ͷ࣮ࣾ ɾAWS ͷ֤ίϯϙʔωϯτͱͷ࿈ܞ ɹɾಛʹ Cloudformation ɾγϯϓϧͰബ͍࣮ ɾ·ͣطଘαʔόͷ
Docker ԽΛඪʹͨ͠
ECS Λӡ༻ͯ͠Έͯ ɾ҆ఆՔಇத ɾECS, ECS पลͷΞοϓσʔτ͕ॆ࣮ ɹɾಈతϙʔτ & ALB ͷߏ͕ͱΕΔ
ɹɾSpot Fleet ΠϯελϯεͱΈ߹Θ͍ͤͨ ɹɾcfn ͷ yaml ରԠຯʹخ͍͠ ɾཧܗʹ͍͖ۙͮͯͨ
ECS Λӡ༻ͯ͠Έͯ ɾϓϩϓϥΠΤλϦ ɾίϯςφ୯ҐͰͷϦιʔεΛݟΒΕͳ͍ ɹɾDatadog Ͱࢹʢ$18/instanceʣ ɾssh ͢ΔʹλʔϛφϧΛ্ཱͪ͛Δͷ͕ࡶ ɾϩάݕࡧʹ Amazon
ES, Redshift Λ͏ͱߴֹ
GKEʢGoogle Container Engineʣ ɾGKE Kubernetesʢk8sʣ ͷϚωʔδυαʔϏε ɹɾk8s Google
͕ެ։ͨ͠ίϯςφεέδϡʔϥ ɾNAVITIME αʔϏεΦϯϓϨࢿ࢈͕ଟ͍ͨΊ ɹΦʔϓϯιʔεͳ k8s ͰཧͰ͖Δͱ͏Ε͍͠ ɾOpenshift v3 ͕ Docker & k8s Λ࠾༻ ɹɾΦϯϓϨڥͷίϯςφҠߦ࣌ʹڞ௨Խ͍ͨ͠
GKE ར༻ͷಈػ ɾTokyo Region ։ઃ ɾCloud SQL 2nd Gen.ʢβʣ ɹɾMySQL
ͷ४ಉظϨϓϦέʔγϣϯ ɹɾ1st Gen. ͔ΒੑೳΞοϓʢRDS ΑΓˢʣ ɹɹɾεϨου͕ଟ͍߹ Aurora ͷํ͕҆ఆ ɹɾCloud Proxy SQL
GKE ར༻ͷಈػ ɾStackdriverʢβʣ ɹ2014 Google ʹങऩ͞ΕͨϞχλϦϯάαʔϏε ɹɾStackdriver Monitoring ɹɹɾGKE ίϯςφͷϞχλϦϯάՄೳ
ɹɾStackdriver Logging ɹɹɾGKE ͳΒඪ४Ͱग़ྗ
GKE Λࢼͯ͠Έͯ ɾGoogle Cloud Shell ɹɾϒϥβ্Ͱ͑Δ CLI ڥ ɹɾඵͰىಈɺศར ɾgcloud,
kubectl ɹɾײతͰѻ͍͍͢ ɹɾaws cli ίϚϯυ͕͘ json Ͱฦ٫͞ΕΔͷͰ ՃʹҰखؒඞཁ
GKE Λࢼͯ͠Έͯ
ɾStackdriver ɹɾStackdriver Monitoring ɹɹɾPod, Container ୯ҐͰϞχλϦϯάՄೳ ɹɾStackdriver Logging ɹɹɾadvanced logs
filter ͕͍͍͢ ɹɹɾBigQuery ͱͷ࿈ܞ͢͠͞ GKE Λࢼͯ͠Έͯ
GKE Λࢼͯ͠Έͯ
GKE Λࢼͯ͠Έͯ
·ͱΊ ɾECS Λ͍͍ͨύλʔϯ ɹɾݫີͳΞΫηε੍ޚ ɹɾAWS ֤ίϯϙʔωϯτͷطଘࢿ࢈ ɹɾAurora ͷ҆ఆੑ
·ͱΊ ɾGKE Λ͍͍ͨύλʔϯ ɹɾKubernetes ɹɾΦϖϨʔγϣϯ࣌ͷ͍উख ɹɾϩΪϯάͷखܰ͞ ɹɾϞχλϦϯάͷखܰ͞
ࠓޙ ɾ৽نɺখنαʔϏεͰ GKE Λಋೖͯ͠ΈΔ ɾطଘࢿ࢈ɺΞΫηε੍ޚ͕ٻΊΒΕΔ߹ɺ͜Ε ·Ͱ௨Γ ECS Ͱߏங ɹɾϩά҆Ձʹղੳ͍ͨ͠ͷͰҎԼͷΈ߹Θͤ ɹɾECS
+ fluentd + Stackdriver Logging ɾRancher, Mesos ͳͲࢼͯ͠ΈΔ
re:Invent 2016 ߦ͖ͬͯ·ͨ͠
IUUQTCMPYHJUIVCJP
IUUQTBXTBNB[PODPNBUIFOB