2.2. Ceph ネットワークメッセンジャー
メッセンジャーは Ceph ネットワーク層の実装です。Red Hat は 2 種類のメッセンジャーをサポートしています。
-
simple
-
async
Red Hat Ceph Storage 5 以降では、async
がデフォルトのメッセンジャータイプです。messenger タイプを変更するには、Ceph 設定ファイルの [global]
セクションに ms_type
設定を指定します。
async
mesenger では、Red Hat は posix
トランスポートタイプをサポートしますが、現在 rdma
または dpdk
をサポートしていません。デフォルトでは、Red Hat Ceph Storage 5 以降の ms_type
設定は async+posix
を反映します。ここで、async
はメッセンジャータイプで、posix
はトランスポートタイプです。
SimpleMessenger
SimpleMessenger
実装は、1 ソケットあたり 2 つのスレッドを持つ TCP ソケットを使用します。Ceph は、各論理セッションを接続に関連付けます。パイプは、各メッセージの入力と出力を含む接続を処理します。SimpleMessenger
は、posix
トランスポートタイプに有効ですが、rdma
、dpdk
などの他のトランスポートタイプには有効ではありません。
AsyncMessenger
したがって、AsyncMessenger
は、Red Hat Ceph Storage 5 以降のデフォルトのメッセンジャータイプです。Red Hat Ceph Storage 5 以降では、AsyncMessenger
実装は、接続用に固定サイズのスレッドプールを持つ TCP ソケットを使用します。これは、レプリカまたはイレイジャーコードチャンクの最大数と同じでなければなりません。CPU 数が少なかったり、サーバーあたりの OSD 数が多かったりしてパフォーマンスが低下する場合は、スレッドカウントを低い値に設定することができます。
現時点で、Red Hat は rdma
、dpdk
などの他のトランスポートタイプをサポートしていません。