全部产品
Search
文档中心

:Kafka组件接入

更新时间:Oct 08, 2023

可观测监控 Prometheus 版提供一键安装配置自建Kafka类型的组件,并提供开箱即用的专属监控大盘。

背景信息

可观测监控 Prometheus 版提供了自建Kafka的监控接入能力,支持容器服务(包含ACK、ASK、注册集群等)和ECS这两个环境类型的Kafka监控,且提供基础和高级两个版本:

  • Kafka(基础版):包括收集Broker数量、Topic分区、消息组Lag等基础指标,Kafka服务端无需您进行任何配置或重启操作。接入Kafka(基础版)组件的具体操作,请参见下文接入Kafka(基础版)组件

  • Kafka(高级版):除基础版能力外,通过JMX Agent,可收集生产者、服务端、消费者及其内部各模块的重要指标,实现全链路、一体化的专家级Kafka监控,需要您手动进行JMX Agent注入和进程重启操作。接入Kafka(高级版)组件的具体操作,请参见下文接入Kafka(高级版)组件

功能入口一:集成中心

  1. 登录ARMS控制台
  2. 在左侧导航栏选择Prometheus监控 > Prometheus实例列表,进入可观测监控 Prometheus 版的实例列表页面。
  3. 单击目标Prometheus实例名称,进入集成中心页面。

功能入口二:接入中心

  1. 登录ARMS控制台

  2. 在左侧导航栏单击接入中心,然后在组件应用区域单击Kafka(基础版)或者Kafka(高级版)卡片的添加,然后在弹出的页面根据控制台指引完成组件接入。

接入Kafka(基础版)组件

这里以接入中心入口为例,介绍接入Kafka(基础版)组件的操作,具体步骤如下。

步骤一:接入Kafka(基础版)组件

  1. 登录ARMS控制台

  2. 在左侧导航栏单击接入中心,然后在组件应用区域单击Kafka(基础版)卡片的添加,然后在弹出的页面按照如下步骤完成接入。

    vr
    1. STEP1区域选择Kafka所部署的环境。

    2. STEP2区域选择Kafka所在的Prometheus实例。

    3. STEP3区域的配置页签配置相关参数,然后单击确定

      参数

      说明

      Exporter名称

      当前Kafka监控唯一命名。

      kafka地址

      填写Kafka Broker的连接地址。多个Broker地址之间使用半角逗号或分号来分隔。

      • 容器服务内,则可以使用Kafka Broker的IP或Service地址。

      • ECS环境内,则可以使用Kafka Broker的IP或DNS地址。

      metrics采集间隔(秒)

      监控数据采集时间间隔。

      kafka版本

      选择Kafka服务端的版本号,目前最高支持v3.2.0版本。

      开启SASL

      选择Kafka服务端是否使用SASL。

      SASL用户名

      如果开启SASL,则需要填写对应的用户名。

      SASL密码

      如果开启SASL,则需要填写对应的用户密码。

      SASL方法

      选择SASL方法,目前支持plain、scram-sha512和scram-sha256。

      开启TLS

      选择Kafka服务端是否使用TLS。

      忽略TLS安全校验

      如果Kafka服务端开启TLS,且是自签名证书,则选择忽略TLS安全校验。

步骤二:查看Kafka(基础版)组件状态

  1. 登录ARMS控制台
  2. 在左侧导航栏选择Prometheus监控 > Prometheus实例列表,进入可观测监控 Prometheus 版的实例列表页面。
  3. 单击目标Prometheus实例名称,进入集成中心页面。
  4. 单击已安装区域的Kafka(基础版)卡片,在弹出的面板中查看大盘、指标等信息。

    • Target:您可以在Targets页签查看集成默认Job发现的Targets列表。

    • 指标:您可以在指标页签查看具体的指标信息并对指标进行废弃配置。具体操作,请参见配置指标

    • 大盘:您可以在大盘页签,单击大盘缩略图,查看对应Grafana大盘。dl

      Kafka基础版监控大盘主要展示以下几点,如下图所示:vr

      • Kafka Broker数量。

      • 每个Topic的分区数。

      • 每个Topic的消息入/出/堆积数量。

      • 每个Topic的ISR(In-Sync Replicas)数量。

    • 告警:您可以在告警页签,查看Kafka(基础版)的Prometheus告警。如下图所示,可以看到目前可观测监控 Prometheus 版提供4个关键告警指标,您还可以根据业务需求新增告警规则。创建Prometheus告警规则的具体操作,请参见Prometheus告警规则fk

    • 服务发现配置:您可以在服务发现配置页签对默认基础监控Job进行操作,例如编辑抓取时间间隔、关闭采集Job等。

    • Exporter:您可以在Exporter页签查看默认安装的node-exporter以及对应的版本号信息。

接入Kafka(高级版)组件

这里以接入中心入口为例,介绍接入Kafka(高级版)组件的操作,具体步骤如下。

步骤一:接入Kafka(高级版)组件

  1. 登录ARMS控制台

  2. 在左侧导航栏单击接入中心,然后在组件应用区域单击Kafka(高级版)卡片的添加,然后在弹出的页面按照如下步骤完成接入。

    dk
    1. STEP1区域选择Kafka所部署的环境。

    2. STEP2区域选择Kafka所在的Prometheus实例。

    3. STEP3区域的配置页签配置相关参数,然后单击确定

      参数

      说明

      exporter名称

      当前Kafka监控唯一命名。

      kafka实例名称

      Kafka实例名称,通过该名称可以将Kafka Producer、Broker和Consumer进行关联,实现Topic全链路的大盘展示。

      Pod/ECS标签(服务发现)

      部署JMX Agent时,为Pod/ECS配置的标签和标签值,可观测监控 Prometheus 版通过此标签进行服务发现(Service Discovery)。

      Pod/ECS标签值

      JMX Agent监听端口

      部署JMX Agent时配置的监听端口。

      metrics采集路径

      可观测监控 Prometheus 版采集JMX Agent的HTTP Path,默认是/metrics

      metrics采集间隔(秒)

      监控数据采集时间间隔。

步骤二:查看Kafka(高级版)组件状态

  1. 登录ARMS控制台
  2. 在左侧导航栏选择Prometheus监控 > Prometheus实例列表,进入可观测监控 Prometheus 版的实例列表页面。
  3. 单击目标Prometheus实例名称,进入集成中心页面。
  4. 单击已安装区域的Kafka(高级版)卡片,然后在弹出的面板中查看指标、大盘、告警等信息。

    • Target:您可以在Targets页签查看集成默认Job发现的Targets列表。

    • 指标:您可以在指标页签查看具体的指标信息并对指标进行废弃配置。具体操作,请参见配置指标

    • 大盘:您可以在大盘页签,单击大盘缩略图,查看对应Grafana大盘。高级版监控提供了Intance和Topic两个视角的大盘,具体详情如下:

      • 自建Kafka Instance大盘

        展示Kafka Broker内部各项指标:

        • 核心指标:展示Broker数量、OffLine分区数、Under Replicated分区数、Controller数量、CPU及网络等关键信息。

        • JVM指标:展示JVM的内存和GC关键信息。

        • 分区指标:展示分区数量、ISR、Unclean Leader选举、Replica Lag、Offline分区、Under Replicated分区等明细信息。

        • 时间指标:展示Produce、Request、Fetch等各个环境的时间指标。

        • 集群流量指标:展示集群的总体流量指标。

        • Broker流量指标:展示Broker粒度的流量明细指标。

        ei
      • 自建Kafka Topic大盘

        展示各个Kafka Topic全链路指标:

        • Producer:展示Producer端的关键指标,包括消息发送速度、消息压缩率、发送延迟等。

        • Server(即Kafka Broker):展示该Topic对应的分区数、入/出消息速率、入/出消息流量。

        • Consumer:展示消息消费速率、消费延迟和Rebalance等。

        eio
    • 告警:您可以在告警页签,查看Kafka(高级版)的Prometheus告警。如下图所示,可以看到目前可观测监控 Prometheus 版提供Producer、Instance和Consumer相关的告警指标,具体如下。

      • 自建Kafka Producer:提供了消息发送失败率、消息发送耗时、消息发送重试率等3个告警指标,方便用户对Producer端的异常进行告警。

      • 自建Kafka Instance:提供了分区数量过多、存在OffLine分区、存在UnClean Leader选举、存在Under Replicated分区、有效Broker数量减少、有效Controller数量、实例消息拒绝量、实例消息流入/出量、Topic消息流入/出量等13个告警指标,覆盖了Kafka Broker各方面异常。

      • 自建Kafka Consumer:提供了消息消费堆积告警指标,通过该告警规则,您能够及时掌握消费异常情况。

      riop

      您还可以根据业务需求新增告警规则。创建Prometheus告警规则的具体操作,请参见Prometheus告警规则

    • 服务发现配置:您可以在服务发现配置页签对默认基础监控Job进行操作,例如编辑抓取时间间隔、关闭采集Job等。

    • Exporter:您可以在Exporter页签查看默认安装的node-exporter以及对应的版本号信息。