8.8. 最適化プロポーザルの承認
状態が ProposalReady
の場合、Cruise Control によって生成された最適化プロポーザルを承認できます。その後、Cruise Control は最適化プロポーザルを Kafka クラスターに適用して、パーティションをブローカーに再割り当てし、パーティションのリーダーを変更します。
これはドライランではありません。最適化プロポーザルを承認する前に、以下を行う必要があります。
- 最新でない可能性があるため、プロポーザルを更新します。
- プロポーザルの内容を注意して確認します。
前提条件
- Cruise Control から 最適化プロポーザルを生成済み である必要があります。
-
KafkaRebalance
カスタムリソースの状態がProposalReady
である必要があります。
手順
承認する最適化プロポーザルに対して、以下の手順を実行します。
最適化プロポーザルが新規生成された場合を除き、プロポーザルが Kafka クラスターの状態に関する現在の情報を基にしていることを確認します。これには、最適化プロポーザルを更新し、必ず最新のクラスターメトリクスを使用するようにします。
OpenShift の
KafkaRebalance
リソースにrefresh
アノテーションを付けます。oc annotate kafkarebalance rebalance-cr-name strimzi.io/rebalance=refresh
KafkaRebalance
リソースの状態をチェックします。oc describe kafkarebalance rebalance-cr-name
-
状態が
ProposalReady
に変わるまで待ちます。
Cruise Control が適用する最適化プロポーザルを承認します。
OpenShift の
KafkaRebalance
リソースにアノテーションを付けます。oc annotate kafkarebalance rebalance-cr-name strimzi.io/rebalance=approve
- Cluster Operator は アノテーションが付けられたリソースを検出し、Cruise Control に Kafka クラスターのリバランスを指示します。
KafkaRebalance
リソースの状態をチェックします。oc describe kafkarebalance rebalance-cr-name
Cruise Control は以下の 3 つの状態の 1 つを返します。
- Rebalancing:クラスターリバランス操作中です。
-
Ready:クラスターのリバランス操作が正常に完了しました。
KafkaRebalance
カスタムリソースを再利用できません。 -
NotReady:エラーが発生しました:「
KafkaRebalance
リソースの問題の修正」 を参照してください。