第12章 Crimson (テクノロジープレビュー)
ストレージ管理者として、Crimson プロジェクトは、低遅延、高スループットの永続メモリー、および NVMe テクノロジーという新しい現実に適した ceph-osd
デーモンの代替を構築する取り組みです。
Crimson 機能はテクノロジープレビューのみの機能です。テクノロジープレビュー機能は、実稼働環境での Red Hat サービスレベルアグリーメント (SLA) ではサポートされておらず、機能的に完全ではない可能性があるため、Red Hat では実稼働環境での使用を推奨していません。テクノロジープレビューの機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行いフィードバックを提供していただくことを目的としています。詳細は、Red Hat テクノロジープレビュー機能のサポート範囲 を参照してください。
12.1. Crimson の概要
Crimson は、crimson-osd
のコード名です。これは、マルチコアのスケーラビリティーのための次世代 ceph-osd
です。DPDK や SPDK などの最先端のテクノロジーを採用し、高速ネットワークおよびストレージデバイスのパフォーマンスを向上させます。BlueStore は引き続き HDD と SSD をサポートします。Crimson は、クラス ceph-osd
を持つ OSD デーモンの以前のバージョンとの互換性を目指しています。
SeaStar C++ フレームワーク上に構築された Crimson は、コア Ceph オブジェクトストレージデーモン (OSD) コンポーネントの新しい実装であり、ceph-osd
を置き換えます。crimson-osd
は、遅延と CPU プロセッサー使用量の増加を最小限に抑えます。高性能の非同期 IO と、相互通信のための操作におけるコンテキストの切り替えとスレッド間通信を最小限に抑えるように設計された新しいスレッドアーキテクチャーを使用します。
Red Hat Ceph Storage 7 の場合、Crimson のみを使用してレプリケートされたプールで RADOS Block Device (RBD) ワークロードをテストできます。本番データには Crimson を使用しないでください。
Crimson の目的
Crimson OSD は、次の目的を備えた OSD デーモンの代替品です。
CPU の過負荷を最小限に抑える
- サイクルまたは IOPS を最小限に抑える。
- コア間通信を最小限に抑える。
- コピーを最小限に抑える。
- カーネルをバイパスし、コンテキストスイッチを回避する。
新規ストレージ技術を有効にする
- ゾーンの名前空間
- 永続メモリー
- 高速 NVMe
SEASTAR の機能
- CPU ごとの単一のリスペクタースレッド
- 非同期 IO
- ユーザー空間で行われるスケジューリング
- ユーザー空間ネットワーキング用の高性能ライブラリーである DPDK の直接サポートが含まれています。
利点
- SeaStore には独立したメタデータコレクションがあります。
- トランザクション
- フラットなオブジェクト名前空間で設定されています。
- オブジェクト名が大きい可能性があります (>1k)。
- 各オブジェクトには、キー > 値のマッピング (文字列 > バイト) とデータペイロードが含まれています。
- COW オブジェクトクローンをサポートします。
- OMAP とオブジェクトの両方の名前空間の順序付きリストをサポートします。