8.2. 监控控制操作


Cruise Control 监控 Kafka 代理,以跟踪代理、主题和分区的利用率。Cruise Control 提供一组用于监控其自身性能的指标。

Cruise Control metrics reporter 从 Kafka 代理收集原始指标数据。数据会被生成给由 Cruise Control 自动创建的主题。指标 用于为 Kafka 集群生成优化探测

可以利用 Cruise Control 指标进行实时监控。例如,您可以使用 Cruise Control 指标来监控正在运行的重新平衡操作的状态,或者提供操作性能中检测到的任何异常情况的警报。

您可以通过在 Cruise Control 配置中启用 Prometheus JMX Exporter 来公开控制指标。

注意

有关可用 Cruise 控制指标的完整列表,这些指标称为 sensors,请参见 Cruise Control 文档

8.2.1. 公开 Cruise 控制指标

如果要公开基于 Cruise Control 操作的指标,请配置 Kafka 资源 来部署 Cruise Control 并在部署中启用 Prometheus 指标。您可以使用您自己的配置,或使用 AMQ Streams 提供的 kafka-cruise-control-metrics.yaml 文件示例。

您可以将配置添加到 Kafka 资源中 CruiseControl 属性的 metricsConfig 中。该配置可让 Prometheus JMX Exporter 通过 HTTP 端点公开控制指标。HTTP 端点由 Prometheus 服务器提取。

Cruise Control 的指标配置示例

  apiVersion: kafka.strimzi.io/v1beta2
  kind: Kafka
  metadata:
    name: my-cluster
  Spec:
    # ...
    cruiseControl:
      # ...
      metricsConfig:
        type: jmxPrometheusExporter
        valueFrom:
          configMapKeyRef:
            name: cruise-control-metrics
            key: metrics-config.yml
  ---
  kind: ConfigMap
  apiVersion: v1
  metadata:
    name: cruise-control-metrics
    labels:
      app: strimzi
  data:
    metrics-config.yml: |
    # metrics configuration...
Copy to Clipboard Toggle word wrap

8.2.2. 查看 Cruise Control 指标

公开 Cruise Control 指标后,您可以使用 Prometheus 或其他合适的监控系统查看指标数据的信息。AMQ Streams 提供了一个 Grafana 仪表板示例,用于显示 Cruise Control 指标的视觉化。仪表板是名为 strimzi-cruise-control.json 的 JSON 文件。公开的指标在启用 Grafana 仪表板时提供 监控数据。

8.2.2.1. 监控均衡的分数

断路器控制指标包括均衡的分数。Balancedness 是指在 Kafka 集群中平均分配工作负载的方式。

平衡器分数(均衡器分数)的 Cruise Control 指标可能与 KafkaRebalance 资源中的平衡分数不同。Cruise Control 使用可能与 KafkaRebalance 资源中使用的 default.goals 不同的 anomaly.detection.goals 计算每个分数。anomaly.detection.goalsKafka 自定义资源的 spec.cruiseControl.config 中指定。

注意

刷新 KafkaRebalance 资源获取优化提议。如果适用以下条件之一,则会获取最新的缓存的优化方案:

  • KafkaRebalance 目标Kafka 资源 default.goals 部分配置的目标匹配
  • 未指定 KafkaRebalance 目标

否则,Cruise Control 会根据 KafkaRebalance 目标生成一个新的优化建议。如果使用每个刷新生成新提议,这可能会影响性能监控。

8.2.2.2. 异常检测上的警报

Cruise Control's omaly detector 为阻止生成优化目标(如代理故障)的条件提供指标数据。如果需要更多可见性,您可以使用 anomaly detector 提供的指标来设置警报并发出通知。您可以设置 Cruise Control 的 anomaly notifier,以通过指定的通知频道根据这些指标路由警报。另外,您可以设置 Prometheus 来提取 anomaly detector 提供的指标数据,并生成警报。然后,Prometheus Alertmanager 可以路由 Prometheus 生成的警报。

Cruise Control 文档 提供有关 AnomalyDetector 指标和 anomaly notifier 的信息。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部