DSE Search通信用のシャード・トランスポート・オプション
Nettyのノンブロッキング通信層がこれまでのデフォルトでした。5.0にアップグレードした後、すべてのノードがノード間のメッセージング・オプションを使用するように切り替わります。
DataStax Enterpriseでは、カスタムでTCPベースのSolr用通信層がデフォルトのタイプで、HTTPベースでTomcatベースのインターフェイスに代わるものでした。これは、遅くてリソース集約的でした。
netty通信層により、DSE Searchのノード間通信がいくつかの点で向上します。
- レイテンシーを短縮する
- リソース消費量を減らす
- 多数の同時接続要求を処理しているときでも、スループットを増大させる
- ノンブロッキングI/O処理ができる
クエリー中の分散デッドロックを回避するため、HTTPベースの通信は使用しないでください。DataStaxでは、ノード間のメッセージングを使用することを推奨しています。
DSE Search用TCPベース通信層では、SSLを使用したクライアント・ノード間暗号化およびノード間暗号化をサポートしますが、Kerberosはサポートしません。
dse.yamlファイルでshard_transport_optionsを構成するために、TCPベース(netty)の通信を選択し、シャード・オプションを構成します。
注:
type:nettyの場合、以下のnetty設定を定義して、DSE Searchノード間のノード間通信を構成します。
- netty_server_port
- TCPのリッスン・ポート。DataStax Enterprise 5.0以前のリリースでは、この設定は、nettyトランスポートを必須で使用し、5.0へのアップグレード時にのみ使用されます。すべてのノードが5.0を実行するようになって以降、このノードがコーディネートする要求は、このポートで他のノードに通信しなくなりました。5.0以降では、要求はノード間メッセージング・オプションを使用します。デフォルト: 8984
- netty_server_acceptor_threads
- サーバー・アクセプター・スレッドの総数。デフォルト:number_of_available_processors
- netty_server_worker_threads
- サーバー・ワーカー・スレッドの総数。デフォルト:number_of_available_processors * 8
- netty_client_worker_thread
- クライアント・ワーカー・スレッドの総数。デフォルト:number_of_available_processors * 8
- netty_client_max_connections
- クライアント接続の最大数。デフォルト: 100
- netty_client_request_timeout
- クライアント要求タイムアウトは、Solr分散要求がシャード応答を待機する最大累積時間です(単位はミリ秒)。デフォルト: 60000
- netty_max_frame_length_in_mb
- メッセージ・フレームの最大長(メガバイト単位)。デフォルト: 256
注: シャード・トランスポート・オプションは、レプリケーション係数がノードの数と等しくないデータ・センターにのみ対応しています。キースペースのレプリケーション係数を変更または確認できます。
DataStax Enterprise 5.0は、シャード・トランスポートの同じ利点をもたらすノード間のメッセージング・システムを実装していますが、すべてのDataStax Enterpriseコンポーネントで広く使用されています。アップグレードの影響については、「DataStax Enterpriseのアップグレード」を参照してください。
dse.yamlファイルの場所は、インストールのタイプによって異なります。
Installer-Services | /etc/dse/dse.yaml |
パッケージ・インストール | /etc/dse/dse.yaml |
Installer-No Services | install_location/resources/dse/conf/dse.yaml |
tarボール・インストール | install_location/resources/dse/conf/dse.yaml |