为了实现多维监控 Kafka 集群,Kafka 支持启用 Zabbix 提供监控服务。

zabbix
  • Zabbix Server:负责接收、存储、分析从 Zabbix Java gateway 传输的监控数据,所有配置、统计数据及操作数据均由其组织进行。

  • Host:配置 Host,并设置模板(Templates)和宏(Macros),使 Zabbix Server 与 Kafka 集群节点建立连接。

  • Zabbix Java gateway:充当 Zabbix Server 与 Kafka 应用之间的桥梁,负责监控 Kafka 应用并收集 Kafka 应用的监控数据,并将收集到的数据传输给 Zabbix Server 进行存储、分析。

本小节主要介绍如何配置 Zabbix Server 监控 Kafka 集群。

约束限制

仅 Kafka 1.0.0 - v1.1.8 及以上版本支持配置 Zabbix 监控。

前提条件

  • 已创建 Kafka 集群,且集群状态为 活跃

  • 下载和安装 Zabbix Server,且已安装并配置相应版本的 Zabbix Java gateway 组件。

  • Zabbix 服务器需要与 Kafka 集群之间保持网络通畅。

    注意

    若两者之间的网络不通,可通过边界路由器VPN 等方式打通网络。不建议通过端口转发的方式将服务暴露到公网,以免造成 Kafka 关键信息暴露等风险。

  • Zabbix Java gateway 通过 9999 端口访问 Kafka Broker 的 JMX 指标,所以 Kafka 的安全组下行规则需要放开 9999 端口,Zabbix Java gateway 的上行规则放开 9999 端口。

操作步骤

步骤一:启动 Zabbix 客户端服务

参考如何修改集群配置参数,修改以下参数。

参数 说明

zabbix.agent.enable

修改为 true

zabbix.server.ip

填写待连接的 Zabbix Server 的 IP 地址。

zabbix.agent.port

填写用于连接 Zabbix Server 的端口号。

  • 若存在防火墙,则需要开启该端口。

  • 默认为 10050。取值范围为 9000~65534

步骤二:配置 Zabbix 监控

启动 Zabbix Agent 后,还需在 Zabbix 服务端配置集群相应参数和监控模版。简要说明如下,Zabbix 相关操作,可参考官方文档

  1. 下载 Percona Zabbix Templates 模板,并导入 Zabbix 服务端。

  2. 将 Kafka 集群的节点 IP,添加至 Zabbix 服务端。

  3. 在 Zabbix 服务端确认配置成功后,即可使用 Zabbix 监控。

步骤三:查看监控

用户可在 Zabbix Server 的 Web 页面,查看监控数据。

步骤四:查看监控

若无需 Zabbix Agent 服务时,可参考如何修改集群配置参数,修改参数 zabbix.agent.enablefalse