8.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
自定义资源来生成另一个优化的提议,请将刷新
注解应用到自定义资源。这会将自定义资源移到PendingProposal
或ProposalReady
状态。然后,您可以审查优化方案,并根据需要批准它。