第3章 Ceph クライアントコンポーネント
Ceph クライアントは、データストレージインターフェイスの表示方法が大きく異なります。Ceph ブロックデバイスは、物理ストレージドライブと同様にマウントするブロックストレージを表示します。Ceph ゲートウェイは、S3 準拠のオブジェクトストレージサービスと Swift 準拠の RESTful インターフェイスを独自のユーザー管理と共に表示します。ただし、すべての Ceph クライアントは Reliable Autonomic Distributed Object Store (RADOS) プロトコルを使用して Red Hat Ceph Storage クラスターと対話します。
これらはすべて、同じ基本的なニーズを持っています。
- Ceph 設定ファイルおよび Ceph Monitor アドレス。
- プール名
- ユーザー名およびシークレットキーへのパス。
Ceph クライアントは、object-watch-notify や striping などのいくつかの同様のパターンに従う傾向があります。以下のセクションでは、RADOS、librados、および Ceph クライアントで使用される一般的なパターンについて、もう少し説明します。
前提条件
- 分散ストレージシステムについての基本的な理解
3.1. Ceph クライアントネイティブプロトコル
最新のアプリケーションには、非同期通信機能を備えた単純なオブジェクトストレージインターフェイスが必要です。Ceph Storage Cluster は、非同期通信機能を備えたシンプルなオブジェクトストレージインターフェイスを提供します。このインターフェイスは、クラスター全体でオブジェクトへの直接並行アクセスを提供します。
- プール操作
- スナップショット
オブジェクトの読み取り/書き込み
- 作成または削除
- オブジェクト全体またはバイト範囲
- 追加または切り捨て
- Create/Set/Get/Remove XATTRs
- Create/Set/Get/Remove Key/Value Pairs
- 複合操作および dual-ack セマンティクス