クラスター間のトラフィック

エッジ・クラスターとハブ・クラスター間のトラフィックは、許可のもとに管理されます。

エッジ・クラスターとハブ・クラスター間のトラフィックは、許可のもとに管理されます。

通信トラフィックの優先順位

レプリケートされるすべてのメッセージはレプリケーション・ログに保存されます。レプリケーション・ログに対してクエリーが発行されると、メッセージはレプリケーション・チャネルの時間および優先順位に応じて処理されます。レプリケーション・チャネルの優先順位によって、レプリケーション・ログのメッセージがハブまで移動する際に、ファスト・トラックとスロー・トラックのどちらを使用するのかが決定します。
ファスト・トラック

優先順位1が設定されているレプリケーション・チャネルは常に許可を取得し、可能な場合はファスト・トラックを使用してメッセージをルーティングします。これらのメッセージはエッジのレプリケーション・ログに保存されてから、即座にハブに送信されます。ファスト・トラック・メッセージは、取得可能な許可の待機をブロックします。許可が取得できるようになると、要求された順序で許可が提供されます(最初に要求されたものが最初に提供されます)。有界インメモリー・キューは、待機キューが無制限に増加し続けることのないように制御されます。有界キューに収まらないメッセージは、スロー・トラックを使用してレプリケートされます。

たとえば、ファスト・トラックにメッセージをルーティングするために、優先順位1のレプリケーション・チャネルを作成するには、以下のようにします。
dse advrep -q --host 192.168.3.10 edge channel create --keyspace "demo" --table "mytable" --priority 1
スロー・トラック

1以外の優先順位が設定されているレプリケーション・チャネルは、可能な場合、かつ他にファスト・トラック・メッセージが存在しない場合に許可を取得します。1以外の優先順位のチャネルは、スロー・トラックを使用してメッセージをルーティングします。スロー・トラック・メッセージは、許可を取得できるようになるまで、一定時間待機します。許可を取得しないまま一定時間が経過すると、そのメッセージは破棄され、エッジ・クラスターのレプリケーション・ログでハブへの処理を待機します。

たとえば、スロー・トラックにメッセージをルーティングするために、優先順位2のレプリケーション・チャネルを作成するには、以下のようにします。
dse advrep -q --host 192.168.3.20 edge channel create --keyspace "demo2" --table "mytable2" --priority 2

許可

エッジ・クラスターとハブ・クラスター間のトラフィックは、許可のもとに管理されます。Cassandraドライバーに送信される同時操作の数の制限を許可します。メッセージをハブに送信する前に、許可を取得する必要があります。許可を取得できない場合、そのメッセージは破棄され、許可が取得できるようになり処理されるまで、レプリケーション・ログで待機します。

帯域幅を管理するには、以下のパラメーターを使用して許可の構成を調整します。
replication-max-permits
レプリケーションに使用できる許可の最大数。
replication-min-permits
レプリケーションに使用できる許可の最小数。
slow-track-min-bandwidth-percentage
スロー・トラックを使用してメッセージを送信するために使用できる許可の最小保証割合。
replication-permit-timeout-ms
許可がない場合、許可を取得するためにレプリケーション・チャネルが待機する最大時間。スロー・トラックにより送信されるメッセージにのみ適用されます。

複数のデータ・センターから構成されるハブ・クラスターに自動フェイルオーバーを構成する

DSE Advanced Replicationは、Javaドライバーのロード・バランス機能ポリシーを使用してハブ・クラスターと通信します。Javaドライバーが使用するデータ・センター認識ラウンド・ロビン・ポリシー(DCAwareRoundRobinPolicy)のローカル・データ・センターを明示的に定義できます。

ローカル・データ・センターからリモート・データ・センターへのフェイルオーバーは、有効または無効にできます。複数のデータ・センター・フェイルオーバーが構成されていてローカル・データ・センターに障害が発生した場合、エッジからハブへのデータ・レプリケーションは、リモート・データ・センターを使用して続行されます。構成は、以下のパラメーターを使用して調整します。
driver-local-dc
複数のデータ・センターを持つハブ・クラスターの場合、ローカルと見なすデータ・センターの名前を明示的に定義できます。通常は、エッジ・クラスターに最も近いデータ・センターです。この値は、複数のデータ・センターを持つクラスターにのみ使用されます。
driver-used-hosts-per-remote-dc
複数のデータ・センターを持つハブ・クラスターについての自動フェイルオーバーを使用するには、データ・センター認識ラウンド・ロビン・ポリシー(DCAwareRoundRobinPolicy)が使用可能と見なす、リモート・データ・センターごとのホストの数を定義する必要があります。
driver-allow-remote-dcs-for-local-cl
複数のデータ・センターを持つハブ・クラスターについて自動フェイルオーバーを有効にする場合、trueに設定します。driver-consistency-levelパラメーターの値は、LOCAL_ONEまたはLOCAL_QUORUMでなければなりません。