14.3. 指标文件示例


您可以在 AMQ Streams 提供的示例配置文件中找到 Grafana 仪表板和其他指标配置文件示例。

AMQ Streams 提供的指标文件示例

metrics
├── grafana-dashboards 
1

│   ├── strimzi-cruise-control.json
│   ├── strimzi-kafka-bridge.json
│   ├── strimzi-kafka-connect.json
│   ├── strimzi-kafka-exporter.json
│   ├── strimzi-kafka-mirror-maker-2.json
│   ├── strimzi-kafka.json
│   ├── strimzi-operators.json
│   └── strimzi-zookeeper.json
├── grafana-install
│   └── grafana.yaml 
2

├── prometheus-additional-properties
│   └── prometheus-additional.yaml 
3

├── prometheus-alertmanager-config
│   └── alert-manager-config.yaml 
4

├── prometheus-install
│    ├── alert-manager.yaml 
5

│    ├── prometheus-rules.yaml 
6

│    ├── prometheus.yaml 
7

│    ├── strimzi-pod-monitor.yaml 
8

├── kafka-bridge-metrics.yaml 
9

├── kafka-connect-metrics.yaml 
10

├── kafka-cruise-control-metrics.yaml 
11

├── kafka-metrics.yaml 
12

└── kafka-mirror-maker-2-metrics.yaml 
13
Copy to Clipboard Toggle word wrap

1
不同 AMQ Streams 组件的 Grafana 仪表板示例。
2
Grafana 镜像的安装文件。
3
其他配置用于提取 CPU、内存和磁盘使用的指标,这些指标直接从节点上的 OpenShift cAdvisor 代理和 kubelet 提供。
4
通过 Alertmanager 发送通知的 hook 定义。
5
用于部署和配置 Alertmanager 的资源。
6
用于 Prometheus Alertmanager 的警报规则示例(与 Prometheus 部署)。
7
Prometheus 镜像的安装资源文件。
8
PodMonitor 定义由 Prometheus Operator 转换为作业,以便 Prometheus 服务器直接从 pod 提取指标数据。
9
启用指标的 Kafka Bridge 资源。
10
为 Kafka Connect 定义 Prometheus JMX Exporter 重新标记规则的指标配置。
11
为 Cruise 控制定义 Prometheus JMX Exporter 重新标记规则的指标配置。
12
为 Kafka 和 ZooKeeper 定义 Prometheus JMX Exporter 重新标记规则的指标配置。
13
为 Kafka Mirror Maker 2.0 定义 Prometheus JMX Exporter 重新标记规则的指标配置。

14.3.1. Prometheus 指标配置示例

AMQ Streams 使用 Prometheus JMX Exporter 通过 HTTP 端点公开指标,该端点可由 Prometheus 服务器提取。

Grafana 仪表板依赖于 Prometheus JMX Exporter 重新标记规则,这些规则是为自定义资源配置中 AMQ Streams 组件定义的。

标签是一个名称值对。重新标记是动态写入标签的过程。例如,标签值可以从 Kafka 服务器和客户端 ID 的名称中派生。

AMQ Streams 提供了带有重新标记规则的自定义资源配置 YAML 文件示例。在部署 Prometheus 指标配置时,您可以部署示例自定义资源,或将指标配置复制到您自己的自定义资源定义中。

Expand
表 14.1. 带有指标配置的自定义资源示例
组件自定义资源YAML 文件示例

Kafka 和 ZooKeeper

Kafka

kafka-metrics.yaml

Kafka Connect

KafkaConnect

kafka-connect-metrics.yaml

Kafka MirrorMaker 2

KafkaMirrorMaker2

kafka-mirror-maker-2-metrics.yaml

Kafka Bridge

KafkaBridge

kafka-bridge-metrics.yaml

Sything Control

Kafka

kafka-cruise-control-metrics.yaml

14.3.2. 警报通知的 Prometheus 规则示例

由 AMQ Streams 提供的 指标配置文件 提供了警报通知的 Prometheus 规则示例。规则在示例 prometheus-rules.yaml 文件中指定,用于在 Prometheus 部署中使用

警报规则提供有关指标中观察到的特定条件的通知。规则在 Prometheus 服务器上声明,但 Prometheus Alertmanager 负责警报通知。

Prometheus 警报规则使用 PromQL 表达式来持续评估的条件。

当警报表达式变为 true 时,会满足条件,Prometheus 服务器会将警报数据发送到 Alertmanager。然后,Alertmanager 使用为部署配置的通信方法发送通知。

有关警报规则定义的一般点:

  • for 属性与规则一起使用,以确定在触发警报前必须保留条件的时间周期。
  • tick 是一个基本的 ZooKeeper 时间单元,以毫秒为单位,并使用 Kafka.spec.zookeeper.configtickTime 参数进行配置。例如,如果 ZooKeeper tickTime=3000,3 个 ticks (3 x 3000)等于 9000 毫秒。
  • ZookeeperRunningOutOfSpace 指标和警报的可用性取决于使用的 OpenShift 配置和存储实施。某些平台的存储实现可能无法提供指标提供警报所需的可用空间的信息。

Alertmanager 可以配置为使用电子邮件、天天消息或其他通知方法。根据您的具体需要,调整示例规则的默认配置。

14.3.2.1. 更改规则示例

prometheus-rules.yaml 文件包含以下组件的示例规则:

  • Kafka
  • ZooKeeper
  • Entity Operator
  • Kafka Connect
  • Kafka Bridge
  • MirrorMaker
  • Kafka Exporter

文件中提供了每个示例规则的描述。

14.3.3. Grafana 仪表板示例

如果部署 Prometheus 以提供指标,您可以使用 AMQ Streams 提供的 Grafana 仪表板示例来监控 AMQ Streams 组件。

示例仪表板在 example /metrics/grafana-dashboards 目录中作为 JSON 文件提供。

所有仪表板都提供 JVM 指标,以及特定于组件的指标。例如,AMQ Streams operator 的 Grafana 仪表板提供了它们正在处理的协调或自定义资源的数量信息。

示例仪表板没有显示 Kafka 支持的所有指标。仪表板填充了用于监控的指标集合。

Expand
表 14.2. Grafana 仪表板文件示例
组件JSON 文件示例

AMQ Streams operator

strimzi-operators.json

Kafka

strimzi-kafka.json

ZooKeeper

strimzi-zookeeper.json

Kafka Connect

strimzi-kafka-connect.json

Kafka MirrorMaker 2

strimzi-kafka-mirror-maker-2.json

Kafka Bridge

strimzi-kafka-bridge.json

Sything Control

strimzi-cruise-control.json

Kafka Exporter

strimzi-kafka-exporter.json

注意

当 Kafka Exporter 没有指标时,因为集群中还没有流量,Kafka Exporter Grafana 仪表板将显示 N/A 用于数字字段,且没有要 显示图形的数据

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

Theme

© 2025 Red Hat