8.4.2. レプリカの移動ストラテジー
クラスターリバランスのパフォーマンスは、パーティション再割り当てコマンドのバッチに適用される レプリカ移動ストラテジー の影響も受けます。デフォルトでは、Cruise Control は BaseReplicaMovementStrategy を使用します。これは、生成された順序でコマンドを適用します。ただし、プロポーザルの初期に非常に大きなパーティションの再割り当てがある場合、このストラテジーによって他の再割り当ての適用が遅くなる可能性があります。
Cruise Control は、最適化プロポーザルに適用できる代替のレプリカ移動ストラテジーを 4 つ提供します。
-
PrioritizeSmallReplicaMovementStrategy:再割り当ては、サイズ順 (昇順) に並べ替えます。 -
PrioritizeLargeReplicaMovementStrategy:再割り当ては、サイズ順 (降順) に並べ替えます。 -
PostponeUrpReplicaMovementStrategy:非同期のレプリカがないパーティションのレプリカの再割り当てを優先します。 -
PrioritizeMinIsrWithOfflineReplicasStrategy:オフラインレプリカが含まれる (At/Under) MinISR パーティションで再割り当てに優先順位を付けます。この戦略は、Kafkaカスタムリソースの仕様でcruiseControl.config.concurrency.adjuster.min.isr.check.enabledがtrueに設定されている場合にのみ機能します。
これらのストラテジーをシーケンスとして設定できます。最初のストラテジーは、内部ロジックを使用して 2 つのパーティション再割り当ての比較を試みます。再割り当てが同等である場合は、順番を決定するために再割り当てをシーケンスの次のストラテジーに渡します。