【せふ】

Ceph とは?

最終更新:
💡 どんな形のデータも飲み込む、万能クジラの分散ストレージ
📌 このページのポイント
Ceph 分散ストレージ アーキテクチャ RGW オブジェクト(S3互換) RBD ブロックストレージ CephFS ファイルシステム RADOS(信頼性のある自律分散オブジェクトストア) MON クラスタ状態 監視(3〜5台) MDS メタデータ管理 (CephFS用) MGR 管理・監視 ダッシュボード CRUSH データ配置 アルゴリズム OSD 1 OSD 2 OSD 3 OSD 4 OSD 5 OSD N
Cephの分散ストレージアーキテクチャ(OSD/MON/MDS)
ひよこ ひよこ
Cephって変わった名前だけど、何をするものなの?
ペンギン先生 ペンギン先生
Cephは複数のサーバーにデータを分散して保存するストレージシステムだよ。1台が壊れてもデータが失われないように自動で複製を持っていて、大規模環境でも安定して動くんだ。
ひよこ ひよこ
オブジェクト・ブロック・ファイルって3種類あるのが特徴なの?
ペンギン先生 ペンギン先生
そう!普通のストレージ製品はどれか1つに特化してるけど、Cephは1つのクラスタで全部提供できるんだ。S3互換のオブジェクトストレージ仮想マシン用のブロックストレージファイル共有用のCephFSを使い分けられるよ。
ひよこ ひよこ
OSDとかMONとか色々あるけど、どういう仕組みなの?
ペンギン先生 ペンギン先生
OSD(Object Storage Daemon)が実際のデータ保存を担当して、1台のディスクに1つのOSDが対応するよ。MON(Monitor)はクラスタ全体の状態を監視する番人で、MDS(Metadata Server)はCephFSを使うときだけ必要なメタデータ管理役だね。
ひよこ ひよこ
データが壊れないようにする仕組みってどうなってるの?
ペンギン先生 ペンギン先生
CRUSHアルゴリズムという賢い仕組みがあって、中央の管理テーブルなしでデータの配置先を計算できるんだ。デフォルトで3つのコピーを異なるサーバーに置くし、Erasure Codingを使えばより少ない容量で冗長性を確保できるよ。
ひよこ ひよこ
おもしろい!どういうところで使われてるの?
ペンギン先生 ペンギン先生
OpenStackのバックエンドストレージとしての採用が多いし、KubernetesのPersistentVolumeとしてRookを経由して使うパターンも増えてるよ。CERNの物理実験データ保存にも使われていて、エクサバイト級のデータを扱える実力は折り紙付きだね。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Ceph」って出てきたら「何でも保存できるオープンソースの分散ストレージ」と思えればだいたいOK!
📖 おまけ:英語の意味
「Ceph(Cephalopod→頭足類)」 = 頭足類(タコ・イカの仲間)
💬 開発者がUCサンタクルーズの博士論文で作ったもので、たくさんの腕(ノード)で並列にデータを扱うイメージからタコ・イカの仲間「Cephalopod」にちなんで名付けられたんだよ
← 用語集にもどる