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
KubeCon + CloudNativeCon China 2018 参加報告
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Naoyuki Yamada
January 16, 2019
Technology
0
200
KubeCon + CloudNativeCon China 2018 参加報告
1つ印象に残ったセッションを紹介
Naoyuki Yamada
January 16, 2019
Tweet
Share
More Decks by Naoyuki Yamada
See All by Naoyuki Yamada
DuckDBを使ったシンプルで安価なデータマネジメント
chokkoyamada
12
4.1k
SRE session #2 Welcome Talk 'Eliminating Toil'
chokkoyamada
2
250
ミドルウェア〜Webアプリまで全てをHelm化したサービスの運用事例
chokkoyamada
2
2.9k
Other Decks in Technology
See All in Technology
SREのプラクティスを用いた3領域同時 マネジメントへの挑戦 〜SRE・情シス・セキュリティを統合した チーム運営術〜
coconala_engineer
2
770
日本の85%が使う公共SaaSは、どう育ったのか
taketakekaho
1
240
Red Hat OpenStack Services on OpenShift
tamemiya
0
130
Context Engineeringが企業で不可欠になる理由
hirosatogamo
PRO
3
660
SRE Enabling戦記 - 急成長する組織にSREを浸透させる戦いの歴史
markie1009
0
170
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
170
フルカイテン株式会社 エンジニア向け採用資料
fullkaiten
0
10k
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
410
【Ubie】AIを活用した広告アセット「爆速」生成事例 | AI_Ops_Community_Vol.2
yoshiki_0316
1
120
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
500
Claude Code for NOT Programming
kawaguti
PRO
1
100
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
200
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
340
ラッコキーワード サービス紹介資料
rakko
1
2.3M
Six Lessons from altMBA
skipperchong
29
4.2k
WCS-LA-2024
lcolladotor
0
450
Building the Perfect Custom Keyboard
takai
2
690
How Software Deployment tools have changed in the past 20 years
geshan
0
32k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Reality Check: Gamification 10 Years Later
codingconduct
0
2k
Abbi's Birthday
coloredviolet
1
4.8k
Transcript
KubeCon + CloudNativeCon China 2018 参加報告 2019/1/16 山田直行 「Kubernetes on
Supporting 1 Million Bike-Taxi Drivers in Indonesia」の解説
Kubecon + CloudNativeCon China 2018で特に印象に残ったセッションの中から、イン ドネシアのGo-jekという企業の事例を紹介します。 せっかく中国での開催ということで、中国企業の事例も聴講したのですが、 ・参考にできないくらい規模がでかい。その点Go-jekは規模的に身近に感じた ・中国企業は中国語によるセッションになり、同時通訳経由では理解が辛かった ・中国はWeChatPay・Alipayを中心としたキャッシュレス社会が実現しようとしている。イ
ンドネシアはGo-jekという配車アプリがキャッシュレス化を主導しているという意味で面 白い事例だと思ったため 概要
Go-jekとは バイクの配車アプリ。 人を乗せて目的地へ運ぶだけでなく、荷物の運搬やフードデリバリーなども頼める。生 活に関する総合サービス企業へと成長中。 Go-jekは2010年創業で、GoogleやTencentも出資しているユニコーン企業。 インドネシアだけでなく、タイ、ベトナム、シンガポールにも進出している。
Go-jekの発展
(旧)Go-jekのシステムアーキテクチャ ・サービスがKafkaのトピックを生成し、ワーカーがそれを処理してDBに入れる、その セットが数多くある
Infrastructure as Codeの挑戦 ・Terraform ・Chef ・Ansible その間、管理するVMは2015年に3つだったものが、2018年には10000以上に
Project X 2016年末に始まった、’’scheduler agnostic”(Kubernetesなどのオーケストレーションツー ルに依存しない、という意味と思われる)なデプロイツー ルを開発するGo-jekの社内プロジェクト インフラの移行を順々に行っていくためにこういったツー ルを必要としていた。
WebUIを通して人が設定すると、汎用のマニフェストが生成されて、それがKubernetes 対応のマニフェストと、Nomadのマニフェストが生成される仕組み https://www.nomadproject.io/ Hashicorp製のコンテナデプロイツール
発生した技術的課題 1. 複数のスケジューラにうまく対応する抽象化が難しい 2. 1の結果として、KubernetesおよびNomadの更新に追従していくのが困難 3. プロダクト側のエンジニアにとってブラックボックスになり、何か問題が起きたときに プロダクト側のエンジニアだけで解決が困難
発生したその他の課題 1. Kubernetesへの移行にあたっては、1つのチームが集権的に主導することは悪くな い。だがそれによって知識はサイロ化してしまう 2. 少人数のチームで少しずつ始めるのではなく、組織全体で一斉に移行を始めてし まった。それによって問題が起きたときに一度に対処できなくなってしまった
人はなぜ落ちる? なぜなら、這い上がることを学ぶためだ (by バットマン・ビギンズ )
プラットフォーム選定にあたって • AWS+kops • GCP+GKE • DataCenter+KVM+libvirt+Kubeadm チームによって異なったインフラプラットフォー ムを用いている HELMを使っているチームもあるし、ProjectX
でマニフェスト作ってデプロイしているチームも ある
Project Xの改善 Kubernetesに特化 より良い抽象化を設計 同時に1つの小さいチームで取り組む
Project XはGo-jekの国際展開にも活用された Go-Viet(ベトナムでの展開)のインフラ構築を4日で実現 リピータブル・イミュータブルなコンテナの特性によって異なる国でもMVP(Most Viable Product)を展開していくことができた ビジネスの成長に伴うインフラのスケーリングが容易にできた トラフィックが急増したときも、新しいVMをつくるよりはるかに早く新しいコンテナを作るこ とができ、MTTR(mean time
to recovery)が短縮された VM時代と比べてCPU/Memoryなどのリソース効率の良さ、容易で堅牢な冗長化、コス ト効率の良さ、が実現された
Whiterabbit namespaceによるシャーディングを可能にする Custom Resource データサイエンティストチームがABテストをする際 などに活用 (自作? OSSにはなっていなさそう)
Barito Log https://github.com/baritolog ログの設定を集約・管理するツー ル Go-jekによるOSS Stackdriver Loggingのようなログ 管理・監査・フィルタ・検索などを自 作したイメージ
https://blog.gojekengineering.com/how-we-built-barito-to-enhance-logging-19f80b89496f
None
https://github.com/BaritoLog/wiki
Cloud Nativeに関する社内勉強会の実施 これを聞いて驚いたのが社内勉強会が 土曜日実施なんだなということ...(土曜に 普通に働いている)
今後の展望 • Minio(object storage for cloud) https://github.com/minio/ • stolon(PostgreSQLのHA構 成)https://github.com/sorintlab/s
tolon/ • Ceph(分散ストレージプラット フォーム) https://github.com/ceph/ceph これらの組み合わせ 特定のクラウド・プラットフォームに依存していない分、 DBもマネージドサービスを使わずクラウドネイティブな手 法でやろうとしている。インドネシアでオンプレミス中心にやっているのは AWS/GCPのリージョンがないからとい うのも影響してそう
Q:VMからKubernetesへの移行を進めるうえで、VMのサービスとKubernetesのサービ スが相互に通信したいケースで、ネットワークのアクセス管理の課題が生じると思うがど う対処しているか? A: ベトナムのケースではAWSのCNI Plugin(おそらくこ れ?https://github.com/aws/amazon-vpc-cni-k8s)を利用している。 ルートテーブルの設定数の制限?など制約があり、今後課題が顕在化してくるので対処 しないといけないと思っている 質疑応答
参考URL セッションURL(プレゼン資料のPDFリンクもあります) https://kccncchina2018english.sched.com/event/FuJX/kubernetes-on-supporting-1 -million-bike-taxi-drivers-in-indonesia-giri-kuncoro-iqbal-farabi-go-jek YouTube https://www.youtube.com/watch?v=7mIM-6gQ3fo Go-jek https://www.go-jek.com/ Go-jek Engineering
https://www.gojek.io/blog/