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
Thinking of Rook Cassandra Operator
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Nobuhiro Sue
April 02, 2021
Technology
330
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Thinking of Rook Cassandra Operator
Nobuhiro Sue
April 02, 2021
More Decks by Nobuhiro Sue
See All by Nobuhiro Sue
CNDB4_DataGrid_20220325.pdf
nobusue
1
530
Red Hat Middleware Portfolio along with Jakarta EE / Microprofile
nobusue
0
230
DevLOVE X 20190623 B CloudNative Sue
nobusue
6
5.5k
Quarkus Impacts Java to Cloud Native
nobusue
3
440
Quarkus in 5 minutes
nobusue
0
170
App Dev/Runtime for Cloud Native Era
nobusue
2
2.9k
OpenShift 4 Update / Developer Preview at OpenShift Meetup Tokyo#3
nobusue
3
820
Red Hat CodeReady Workspaces at OpenShift Meetup Tokyo#2
nobusue
0
640
Other Decks in Technology
See All in Technology
Webアクセシビリティ入門 2026
recruitengineers
PRO
3
530
AWS ネットワーク構築でハマった(ハマりかけた) 5選とそこから得た教訓
nagisa53
4
200
社内の7割が使うデータ基盤を、 データチーム2人で回すためにやったこと
koh_yoshi
4
1.3k
グローバル基準のSREは、運用現場でどう機能したか:成熟度アセスメントの実践 / SRE NEXT 2026
sorawatanabe
0
190
OSPN.JPバージョンアップ作業進捗のご報告 / 20260801-osc26kyoto
akkiesoft
0
470
システム思考で問題に対処する
yussak
0
240
ブラウザ研修 2026
recruitengineers
PRO
6
920
取引先から届く 「セキュリティチェックシート」の読み解き方
kamadamakoto
0
140
[しろおび夏祭り2026] チャットするAIから、作業するAIへ - 使われ方の変化と、その裏側で起きていること
kk0n
0
1.7k
Agent 時代の Kaggle 展望 / kaggle-in-the-agentic-era
upura
1
700
Breaking the Seal: Static Deobfuscation of Compiled V8 JavaScript Bytecode Malware
hshrzd
0
720
FORENSIA: ローカルLLMフォレンジックハーネス
sumeshi
2
370
Featured
See All Featured
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
Paper Plane
katiecoart
PRO
2
52k
For a Future-Friendly Web
brad_frost
183
10k
Chasing Engaging Ingredients in Design
codingconduct
0
260
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
630
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
790
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.7k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
360
How STYLIGHT went responsive
nonsquared
100
6.2k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
200
Transcript
2021年 4月 2日 レッドハット株式会社 須江 信洋 (@nobusue) 今だからこそ考える Cassandra on
Rook 1 Japan Rook Meetup #5
自己紹介 2 須江 信洋(すえ のぶひろ) • Twitter: @nobusue 約14年JavaEE関連に携わる(1999〜2013) IoTサービス関連Startupで開発から運用まで
(2014〜2017) • ストリーミングデータ処理、マイクロサービス化、 コンテナプラットフォーム構築/運用 Red HatでOpenShift担当Solution Architect(2017〜2019) Red HatでMW SAチームのマネージャ(2019/4〜now)
Rook Project Status ......... 3 https://github.com/rook/rook#project-status
4ヶ月くらい放置されてる気配・・・(2021/4/2早朝時点) 4 https://github.com/rook/rook/tree/master/pkg/operator/cassandra
Apache Cassandraってどんなもの? 5 • https://cassandra.apache.org/doc/latest/architecture/overview.html ◦ "Apache Cassandraは、オープンソースの分散型NoSQLデータベースです。Cassandraは、Eventually Consistent(結果整合性)セマンティクスを持つ、パーティション化されたワイドカラムストレージモデルを提 供します。"
◦ "Apache Cassandraは当初、Facebook社でSEDA(Staged Event Driven Architecture)を用いて設計 され、Amazon社のDynamo分散ストレージおよびレプリケーション技術と、Google社のBigtableデータ およびストレージエンジンモデルを組み合わせて実装されました。DynamoとBigtableは、スケーラブルで 信頼性が高く、可用性の高いストレージシステムという新たな要求を満たすために開発されましたが、そ れぞれに改善すべき点がありました。" • 手っ取り早く理解したい方はこちらをどうぞ ◦ 「NoSQLデータベースCassandraの紹介 〜 ヤフーのデータ基盤を支える技術」 ▪ https://techblog.yahoo.co.jp/entry/20200129803067/ • 要点 ◦ マスターレス(Peer to Peer)な分散型 =>運用メンドイ ◦ ワイドカラムKVS ◦ Eventually Consistent ◦ Javaで実装
Cassandra Operator(s) 6 • Cass Operator by DataStax ◦ https://github.com/datastax/cass-operator
◦ https://docs.datastax.com/en/cass-operator/doc/cass-operator/cassOperatorGettingStarted.html ◦ 機能的にはまだ弱いがデファクト狙い? ◦ OpenShiftでもcertify済み ▪ https://catalog.redhat.com/software/operators/datastax/cass-operator/5ec5a88329373868203 3f770 • CassKop by Orange-OpenSource ◦ https://github.com/Orange-OpenSource/casskop ◦ 機能的にはかなり充実している様子 • Instaclustr ◦ https://operatorhub.io/operator/cassandra-operator ◦ https://github.com/instaclustr/cassandra-operator ◦ sunset、今後はcass-opかcasskopを使えとのこと • Scylla Operator ◦ https://github.com/scylladb/scylla-operator ◦ Scylla(C実装のCassandra互換DB)専用Operatorを作ってる
気を取り直して、、、アーキテクチャを拝見 7 https://github.com/rook/rook/blob/master/design/cassandra/design.md
Rook Cassandra Operator 8 • Quickstart ◦ https://rook.io/docs/rook/v1.5/cassandra.html ▪ Operatorの導入方法はシンプル
• Rook Cassandra Operatorを動かす前提条件 ◦ https://rook.io/docs/rook/v1.5/k8s-pre-reqs.html ▪ Cassandraを動かす用途ならflexvolume pluginは必須ではない • Rook Cassandra Operatorのいいところ ◦ クラスタの構築が容易(CRをapplyするだけ) ◦ スケールアップ/ダウンが容易(CRをeditするだけ) ◦ モニタリングの設定が容易(ConfigMapを作るだけ) ◦ CassandraとScyllaを同じ方法で扱える • 注意点 ◦ Dynamic Provisioning可能なストレージが必要 ◦ StorageClassはCassandraクラスタ毎に1つしか設定できない ◦ (Rookで生き残れるか不透明・・・・)
そもそもCassandra OperatorがRookに入ってる理由は? 9 • (たぶん)Dynamic Provisioning可能で、高速かつ信頼性の高いストレージが必須だから ◦ on k8sではなく普通にクラスタ組むときは、インスタンスストアなどの高速なローカルストレージ を使うことが多い
◦ on k8sの場合はPod配置の自由度を高めるためにストレージを抽象化したいので、必然的に CephのようなSDSと組み合わせて考える必要が出てくる ◦ おそらく、バックアップ/リストアやスナップショット取得など、ストレージ層と連携するOperatorを 作ることを想定していたのではなかろうか? ▪ 未実装だがRook Cassandra OperatorのDesign Docにその片鱗が・・・・ • しかし現実には、、、 ◦ Rook Ceph OperatorとRook Cassandra Operatorの間で共有されているコードは皆無で、 まったくの別物と言ってよい ◦ Cassandra/Scyllaいずれも独自にOperatorの開発が進められており、そちらがデファクトにな りそうな勢い
最後に) Cassandraのベンチマークツール 10 • 今回はベンチーマーク実行してませんがCassandraとScyllaで比較してみるとたぶん面白いと思い ます(時間取れたら後日やってみようと思います・・) • YCSB: 汎用NoSQLベンチマークツール ◦
https://github.com/brianfrankcooper/YCSB/wiki/Getting-Started • tlp-stress: Cassandra専用ストレステストツール ◦ https://github.com/thelastpickle/tlp-stress
linkedin.com/company/red-hat youtube.com/user/RedHatVideos facebook.com/redhatinc twitter.com/RedHat Red Hat is the world’s leading
provider of enterprise open source software solutions. Award-winning support, training, and consulting services make Red Hat a trusted adviser to the Fortune 500. Thank you Red Hat Tech Night 2019.05