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.5k
#CloudNativeDB NewSQLへの誘い
tzkoba
4
3.4k
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
フルAIで個人開発して学んだあれこれ / yuruai vol.1
isaoshimizu
0
110
入門!AWS Blocks
ysuzuki
1
190
10年間のブログ発信を振り返って見えたWebアプリケーションエンジニアとしての軌跡
stefafafan
0
180
「軸足」は 固定しなくていい - 熱量と強みで描く、しなやかなキャリアの形
kakehashi
PRO
1
260
OTel × Datadog で 「AI活用」を計測し、改善に繋げる
shihochan
2
630
2026-06-24_人とAIの責務分離に基づく開発プロセスの提案.pdf
takahiromatsui
0
120
iOS アプリの「これって不具合ですか?」を AI に調べてもらう
miichan
0
140
Deep Data Security 機能解説
oracle4engineer
PRO
2
110
千葉での単身赴任からAWSをやり続け、千葉に戻ってきた話
yama3133
1
120
Comment regagner la souveraineté de vos données tout en étant payé grâce à Nostr !
rlifchitz
0
200
Lightning近況報告
kozy4324
0
220
從開發到部署全都交給 AI:實作 AI 驅動的自動化流程
appleboy
0
160
Featured
See All Featured
Visualization
eitanlees
152
17k
How GitHub (no longer) Works
holman
316
150k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4k
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
440
Odyssey Design
rkendrick25
PRO
2
700
Done Done
chrislema
186
16k
Faster Mobile Websites
deanohume
310
32k
HDC tutorial
michielstock
2
720
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
3.5k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.7k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
240
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