第 8 章 用于集群重新平衡的精简控制

您可以将 Cruise Control 部署到 AMQ Streams 集群,并使用它来 重新平衡 Kafka 集群。

cruise Control 是一个开源系统,用于自动执行 Kafka 操作,如监控集群工作负载、根据预定义的限制重新平衡集群,以及检测和修复异常情况。它包含四个主要组件 - Load Monitor、Analyzer、Anomaly Detector 和 Executor-​,以及用于客户端交互的 REST API。AMQ Streams 利用 REST API 支持以下 Cruise Control 功能:

  • 从多个 优化 目标生成优化
  • 根据优化建议重新平衡 Kafka 集群。

目前不支持其他 Cruise 控制功能,包括异常检测、通知、写入目标以及更改主题复制因素。

示例 /cruise-control/ 中提供了 Cruise 控制的 YAML 文件示例

8.1. 为什么使用清理控制?

cruise Control 可减少运行高效、均衡 Kafka 集群所需的时间和工作量。

典型的群集可能会随着时间推移而变得异常加载。处理大量消息流量的分区可能会在可用的代理中不均匀分布。要重新平衡集群,管理员必须监控代理上的负载,并手动将繁忙的分区重新分配给具有备用容量的代理。

整合控制可自动执行集群重新平衡过程。它基于 CPU、磁盘和网络负载为 cluster-​ 构造一个资源利用率 工作负载模型,并为更均衡的分区分配生成优化调整(您可以批准或拒绝)。使用一组可配置的优化目标来计算这些假设。

当您批准一个优化建议时,Cruise Control 将其应用到 Kafka 集群。当集群重新平衡操作完成后,代理 Pod 会被更有效地使用,Kafka 集群也会更加均匀地平衡。

其它资源