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
46
0
Share
ECS to GKE 〜実運用から考えるコンテナ運用の最適化〜
GCPの環境が最近急速に整ってきたので、
既存のECS環境をGKE上に構築してみた話
※ サービス自体を移行した話ではないです
NAVITIME JAPAN
PRO
December 12, 2016
More Decks by NAVITIME JAPAN
See All by NAVITIME JAPAN
つよつよリーダーが 抜けたらどうする? 〜ナビタイムのAgile⽀援組織の変遷〜
navitimejapan
PRO
23
16k
実践ジオフェンス 効率的に開発するために
navitimejapan
PRO
3
1k
安全で使いやすいCarPlayアプリの 魅せ方:HIGと実例から学ぶ
navitimejapan
PRO
1
280
見えないユーザの声はログに埋もれている! ~ログから具体的なユーザの体験を数値化した事例紹介~
navitimejapan
PRO
6
3.3k
ユーザーのためなら 『デザイン』 以外にも手を伸ばせる
navitimejapan
PRO
2
1.8k
フツーのIT女子が、 Engineering Managerになるまで
navitimejapan
PRO
3
430
不確実性に打ち勝つOKR戦略/How to manage uncertainty with OKR strategy
navitimejapan
PRO
4
3.9k
アジャイルを小さいままで 組織に広める 二周目 / Agile Transformation in NAVITIME JAPAN iteration 2
navitimejapan
PRO
4
1.5k
変更障害率0%よりも「継続的な学習と実験」を価値とする 〜障害を「起こってはならないもの」としていた組織がDirtの実施に至るまで〜 / DevOps Transformation in NAVITIME JAPAN
navitimejapan
PRO
8
6k
Other Decks in Programming
See All in Programming
AI Agent と正しく分析するための環境作り
yoshyum
1
210
Surviving Black Friday: 329 billion requests with Falcon!
ioquatix
0
3k
GoogleCloudとterraform完全に理解した
terisuke
1
190
過去のレビュー知見をSkillsで資産化した話
pkshadeck
PRO
1
1.8k
tRPCの概要と少しだけパフォーマンス
misoton665
2
270
クラウドネイティブなエンジニアに向ける Raycastの魅力と実際の活用事例
nealle
2
250
書籍「ユーザーストーリーマッピング」が私のバイブル
asumikam
4
490
GitHubCopilotCLIをはじめよう.pdf
htkym
0
330
when storing skills in S3 file
watany
3
1.5k
実践ハーネスエンジニアリング:ステアリングループを実例から読み解く / Practical Harness Engineering: Understanding Steering Loops Through Real-World Examples
nrslib
5
5.1k
いつか誰かが、と思っていた フロントエンド刷新5年間の実践知
kiichisugihara
1
260
継続的な負荷検証を目指して
pyama86
3
1k
Featured
See All Featured
From π to Pie charts
rasagy
0
180
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
65
54k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Art, The Web, and Tiny UX
lynnandtonic
304
21k
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.4k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
280
Raft: Consensus for Rubyists
vanstee
141
7.4k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
350
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
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