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
Rook v1.2の紹介 - できること、できないこと -
Search
tzkoba
January 10, 2020
Technology
880
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rook v1.2の紹介 - できること、できないこと -
社内向け資料から一部削ったもの。
tzkoba
January 10, 2020
More Decks by tzkoba
See All by tzkoba
The State of Distibuted Database In Japan
tzkoba
1
1.6k
#CloudNativeDB NewSQLへの誘い
tzkoba
4
3.5k
Cloud Native時代のデータベース
tzkoba
13
15k
2020年DBプラットフォーム (超個人的)5大ニュース
tzkoba
0
1.3k
PostgreSQLプラットフォームの徹底比較(コンテナからクラウドまで)
tzkoba
6
12k
Kubernetesでストレージ?そもそも何に使えるの?
tzkoba
0
1.3k
データ損失を回避しよう 各DBの機能比較
tzkoba
3
2.3k
昨今のデータデバイス(アーカイブ編)
tzkoba
3
1.8k
理解して拡げる分散システムの基礎知識
tzkoba
21
11k
Other Decks in Technology
See All in Technology
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
20k
Bill One 開発エンジニア 紹介資料
sansan33
PRO
7
20k
AIレビュー時代に必要なのは、SLOで引く撤退ライン
nobuoooo
0
150
Microsoft MVP プログラムを紹介するから目指す人増えてくれ
tsubakimoto_s
0
140
1000⼈規模のClaude Enterprise運⽤を「Oktaのグループ」と「Slack」に集約する
sansantech
PRO
1
500
AI時代のデータ基盤を考える問い
pacocat
0
740
hookで自作する Claude Code の「実況ボード」
shinyasaita
2
230
マイナンバーカード本人確認の実装比較(OAuth/OIDC Numa (Immersion) Workshop 2026) / 20260825 numa-12
oidfj
PRO
0
340
Oracle AI Databaseデータベース・サービス: BaseDB/ExaDB-Dの可用性
oracle4engineer
PRO
1
960
MCPを待つな、パスキーを拡げよう(OAuth/OIDC Numa (Immersion) Workshop 2026)
oidfj
PRO
0
350
Introduction to Sansan, inc / Sansan Global Development Center, Inc.
sansan33
PRO
0
3.2k
ハッカソンで入賞した話 @ Findy LT
asari194617
0
1.5k
Featured
See All Featured
Evolving SEO for Evolving Search Engines
ryanjones
0
270
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
BBQ
matthewcrist
89
10k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
370
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
It's Worth the Effort
3n
188
29k
RailsConf 2023
tenderlove
30
1.5k
Music & Morning Musume
bryan
47
7.3k
Exploring anti-patterns in Rails
aemeredith
3
480
The Invisible Side of Design
smashingmag
301
52k
GitHub's CSS Performance
jonrohan
1033
470k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Transcript
@tzkb Rook v1.2の紹介 ~できること、できないこと~ 2020/1/10
2 最近やっていること • Cloud Native Days Tokyo 2019 “Cloud Native
Storageが拓く Database on Kubernetesの未来” • Japan Rook Meetup #1 “Rook v1.1で新登場! YugaByteDBをさわってみる” + で色々と。
4 • そもそもRookって何? • で、Rookって何してくれるの? • なるほど、どんなときに使えるの? • 課題はないの? •
今、Rookを試す意味
5 今日のゴール
6 そもそもRookって何?
7 読み方問題 • ルーク or ルック? • お好きなほうでどうぞ。今回は“ルーク“で行きます。
8 Rookとは • マルチなストレージ・プロバイダに対応した、データストア・ オペレーター。 Storage Provider 種別 ステータス 概要
Ceph ストレージ Stable 分散ストレージ (Block/File/Object) Cockroach DB DB Alpha OSS版Spannerを目指す分散DB Minio ストレージ Alpha 簡素なオブジェクトストレージ EdgeFS ストレージ Stable Gitに似たGeoスケールのFS Cassandra KVS Alpha NoSQLの代表格、分散KVS NFS FS Alpha 共有ファイルシステム Yugabyte DB DB Alpha PostgreSQL互換の分散DB
9 AWSと比べると良く分かるかも? Storage Provider AWSでは 説明 Ceph EBS/EFS/S3 • Unified
SDS Cockroach DB DynamoDB? Aurora? • 分散KVS上のRDB(postgres) Minio S3 • オブジェクトストレージ EdgeFS EBS/EFS/S3 • こちらもUnifiedなSDS Cassandra MCS • re;Invent2019で発表 NFS EFS • ファイルストレージ Yugabyte DB DynamoDB? Aurora? • 分散KVS上のRDB(postgres) • こうして見ると、Rookの競合はクラウドベンダーにも見える。
10 それぞれ詳しく知りたい人は • 2019年末のアドベントカレンダーがあるよ。
11 つまり、Rookとは は、自分で作ると大変な データストア(分散ストレージ/データベース) を、Kubernetes上に簡単に構築・ 運用できるようにするオペレーター だよ。
12 Rookってオンプレに向いてる? • Outpostsに蹴散らされそうな未来も少し見えたり。 対象サービス EC2 EBS ECS EKS EMR
RDS ※preview (postgres,MySQL) EFSやDynamoDB等も来たら、 オンプレで基盤構築する物好き は居る? Cloud at Customer(by Oracle) は流行らなかったけど、今回は どうかな。
13 で、Rookって何をしてくれるの?
14 Cephの例:こんなクラスタを3コマンドで作ってくれる operator agent/discover agent/discover agent/discover osd osd osd mon
mon mon CSI csi-provisioner csi-rbdplugin csi-rbdplugin csi-rbdplugin Rook • monとかosdとか普通は面倒なんです。
15 RookなしでCephクラスタを作ろうとしたら、 1. パッケージをダウンロードして、 2. 各ノード(例えば3台)にCephをインストールして、 3. MONプロセスを起動して、 4. Managerを起動して、
5. OSDプロセスを起動してクラスタに組み込んで、
16 Rookなら、Cephもらっく楽に構築! $ kubectl apply -f cluster/exsample/kubenetes/ceph/common.yaml $ kubectl apply
-f cluster/exsample/kubenetes/ceph/operator.yaml $ kubectl apply -f cluster/exsample/kubenetes/ceph/cluster.yaml • たったの3コマンドを投入するだけ(当社調べ)。
17 分散SQLデータベース?Rookなら何とかしてくれる! yb-master yb-master yb-master rook yugabytedb operator yb-tserver yb-t-server
yb-tserver • Spanner的なOSS、 も簡単に構築。
18 Rookなら、分散DBもらっく楽に構築! $ kubectl apply -f cluster/exsample/kubenetes/yugabytedb/operator.yaml $ kubectl apply
-f cluster/exsample/kubenetes/yugabytedb/cluster.yaml • たった2コマンドを投入するだけ(2回目)。
19 つまり、Rookが何をしてくれるのかというと 【Cassandra】 【YugaByteDB】 【Ceph】 • K8sを分散データストアのプラットフォームにしてくれる。 osd mon osd
mon osd mon osd osd mgr osd master master master t-server t-server t-server
20 なるほど、どんなときに使えるの?
21 今、Rookを使うならどういう用途か? 1. 何らかの理由で、Managedなサービスが使えないとき ① 開発環境、PoC ② オンプレミス/プライベートクラウド 2. パブリッククラウドの可用性に満足できないとき
① Multi-AZにEBSを使いたい 3. OpenShiftで ① OpenShift Container Storage 4
22 1.① 開発環境とかPoCで • コストがかかったり、クラウドの管理権限がなかったりで、 S3やEFSが使えない環境もある。 • EC2とEBSは使えるし、K8sクラスタ(EKSかも)はある。 nfs-operator nfs-provisoner
minio-operator rook-nfs minio-store minio-store app-A app-A app-C S3互換IF GET/PUT NFS mount
23 1.② オンプレミス/プライベートクラウドで • ストレージがない(?)オンプレミス環境とか、オブジェクト・ ストレージが用意されてないプライベートクラウドとか。 • サーバ内蔵のDiskかき集めて、それっぽく使いたい。 osd osd
osd mon mon mon osd mds csi-rbdplugin csi-rbdplugin csi-rbdplugin csi-rbdplugin csi-cephfsplugin csi-cephfsplugin csi-cephfsplugin csi-cephfsplugin CSI mds rgw rgw
25 • KubernetesとMulti-AZなノードでPodの可用性は確保できても、 EBSを使っているとデータが移動できない。 • Rookを使って、Multi-AZなブロックストレージを構築できる。 2.① クラウドの可用性に満足できない osd osd
mon mon osd csi-rbdplugin csi-rbdplugin csi-rbdplugin CSI AZ-a AZ-b AZ-c
29 つまり、Rookの使いみちは Kubernetesクラスタはある、じゃあストレージはどうしよう? な場面で使ってみる。 1. 何らかの理由で、Managedなサービスが使えないとき 2. パブリッククラウドの可用性に満足できないとき 3. OpenShiftで
30 課題はないの?
31 課題1)Rookじゃなきゃ出来ないんだっけ? • オンプレミスもMulti-AZも他でも出来る。 • 例えば、NetApp Cloud Volume ONTAP+Trident。 app-A
AZ-a AZ-b
32 課題2)今のKubernetes/Rookで大丈夫か? osd osd mon mon osd AZ-a AZ-b AZ-c
• 正直、マルチIFは欲しい。Multusが拡まるか? • AZやNodeにポリシーに従って(良い感じに)配置して欲しい。 DB-1 DB-2 DB-3 サービスLAN ストレージLAN DB LAN