11.7. 批准优化建议
如果其状态是 ProposalReady
,则可以批准 Cruise Control 生成的 优化提议。然后,Cruise Control 会将优化建议应用到 Kafka 集群,将分区重新分配给代理并更改分区领导。
这不是一个空运行。在批准优化前,您必须:
- 刷新提议(如果其过期)。
- 仔细检查 提议的内容。
先决条件
- 您已从 Cruise 控制中生成了优化的提议。
-
KafkaRebalance
自定义资源状态为ProposalReady
。
流程
对您要批准的优化提议执行这些步骤。
除非新生成了优化建议,否则请检查它是否基于有关 Kafka 集群状态的当前信息。要做到这一点,刷新优化建议以确保它使用最新的集群指标:
使用
strimzi.io/rebalance=refresh
注解 OpenShift 中的KafkaRebalance
资源:oc annotate kafkarebalance <kafka_rebalance_resource_name> strimzi.io/rebalance=refresh
oc annotate kafkarebalance <kafka_rebalance_resource_name> strimzi.io/rebalance=refresh
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
等待优化提议的状态更改为
ProposalReady
:oc get kafkarebalance -o wide -w -n <namespace>
oc get kafkarebalance -o wide -w -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow PendingProposal
-
PendingProposal
状态意味着重新平衡 Operator 正在轮询 Cruise Control API 来检查优化提议是否就绪。 ProposalReady
-
ProposalReady
状态表示优化提议已准备好审核和批准。
当状态变为
ProposalReady
时,优化提议可以批准。批准您希望 Cruise Control 适用的优化方案。
使用
strimzi.io/rebalance=approve
注解 OpenShift 中的KafkaRebalance
资源:oc annotate kafkarebalance <kafka_rebalance_resource_name> strimzi.io/rebalance=approve
oc annotate kafkarebalance <kafka_rebalance_resource_name> strimzi.io/rebalance=approve
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Cluster Operator 会检测注解的资源,并指示 Cruise Control 来重新平衡 Kafka 集群。
等待优化提议的状态更改为
Ready
:oc get kafkarebalance -o wide -w -n <namespace>
oc get kafkarebalance -o wide -w -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重新平衡
-
Rebalancing
状态代表重新平衡正在进行。 Ready
-
Ready
状态表示重新平衡已完成。 NotReady
-
NotReady
状态意味着会出现错误,请参阅 修复KafkaRebalance
资源的问题。
当状态变为
Ready
时,重新平衡已完成。要使用同一
KafkaRebalance
自定义资源生成另一个优化建议,请将refresh
注解应用到自定义资源。这会将自定义资源移到PendingProposal
或ProposalReady
状态。然后,您可以检查优化提议并批准它(如果需要)。