Prometheus监控Kafka(三种方法JMX Kafka_exporter KMINION监控Kafka)_kaf ...

打印 上一主题 下一主题

主题 553|帖子 553|积分 1659


  • 下载jmx步伐包。
  • 修改kafka启动参数
  • 重启kafka
  • 访问JMX-Agent端口验证监控指标
  • 5.修改配置文件,并重启Prometheus
  • 访问Prometheus,验证target是否监控成功。
  • 配置Grafana:导入模板、配置数据源、查看监控数据。
1.下载jmx步伐包

使用阿里云提供的jmx-agent包,比较稳定靠谱,就不故意选择最新版本了。
下载链接:【阿里云JMX-Agent下载】
下载后需传输到kafka地点服务器上,如:
  1. [sysma@kafka-0001 jmx_agent]$ ls
  2. kafka-jmx_prometheus_javaagent-1.18.1.jar
  3. [sysma@kafka-0001 jmx_agent]$ pwd
  4. /ilw/jmx_agent
  5. [sysma@kafka-0001 jmx_agent]$
复制代码
2.修改kafka启动参数。

修改kafka启动脚本的配置参数,可参考阿里云【阿里云官方文档:怎样摆设和配置Kafka JMX Agent】
也可参考我的示例文件,对比阿里云文档截图,我的示例文件更为简单直观:
在EXTRA_ARGS=${EXTRA_ARGS-'-name kafkaServer -loggc '}这一行之后,新增JMX-agent内容-javaagent:/ilw/jmx_agent/kafka-jmx_prometheus_javaagent-1.18.1.jar=5506,目标是下次启动kafka历程的同时,运行一个jmx-agent并指定agent的端口。
完整示例文件如下:
  1. [sysma@kafka-0001 bin]$ pwd
  2. /ilw/kafka_2.12-3.5.0/bin
  3. [sysma@kafka-0001 bin]$ cat kafka-server-start.sh
  4. #!/bin/bash
  5. # Licensed to the Apache Software Foundation (ASF) under one or more
  6. # contributor license agreements. See the NOTICE file distributed with
  7. # this work for additional information regarding copyright ownership.
  8. # The ASF licenses this file to You under the Apache License, Version 2.0
  9. # (the "License"); you may not use this file except in compliance with
  10. # the License. You may obtain a copy of the License at
  11. #
  12. # http://www.apache.org/licenses/LICENSE-2.0
  13. #
  14. # Unless required by applicable law or agreed to in writing, software
  15. # distributed under the License is distributed on an "AS IS" BASIS,
  16. # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  17. # See the License for the specific language governing permissions and
  18. # limitations under the License.
  19. if [ $# -lt 1 ];
  20. then
  21.         echo "USAGE: $0 [-daemon] server.properties [--override property=value]\*"
  22.         exit 1
  23. fi
  24. base\_dir=$(dirname $0)
  25. if [ "x$KAFKA\_LOG4J\_OPTS" = "x" ]; then
  26.     export KAFKA\_LOG4J\_OPTS="-Dlog4j.configuration=file:$base\_dir/../config/log4j.properties"
  27. fi
  28. if [ "x$KAFKA\_HEAP\_OPTS" = "x" ]; then
  29.     export KAFKA\_HEAP\_OPTS="-Xmx1G -Xms1G"
  30. fi
  31. ##修改前,默认配置如下
  32. #EXTRA\_ARGS=${EXTRA\_ARGS-'-name kafkaServer -loggc'}
  33. #修改后,在下一行新增jmx-agent的路径位置,指定jmx暴露端口。
  34. EXTRA\_ARGS=${EXTRA\_ARGS-'-name kafkaServer -loggc -javaagent:/ilw/jmx\_agent/kafka-jmx\_prometheus\_javaagent-1.18.1.jar=5506'}
  35. COMMAND=$1
  36. case $COMMAND in
  37.   -daemon)
  38.     EXTRA\_ARGS="-daemon "$EXTRA\_ARGS
  39.     shift
  40.     ;;
  41.   *)
  42.     ;;
  43. esac
  44. exec $base\_dir/kafka-run-class.sh $EXTRA\_ARGS kafka.Kafka "$@"
  45. [sysma@kafka-0001 bin]$
复制代码
3.重启kafka

启动和停止kafka的脚本如下,也可直接复制下令执行:
  1. [sysma@kafka-0001 ilw]$ cat 03_startKFK-3.5.0.sh
  2. sudo /ilw/kafka_2.12-3.5.0/bin/kafka-server-start.sh /ilw/kafka_2.12-3.5.0/config/server.properties &
  3. [sysma@kafka-0001 ilw]$ cat 04_stopKFK-3.5.0.sh
  4. sudo /ilw/kafka_2.12-3.5.0/bin/kafka-server-stop.sh /ilw/kafka_2.12-3.5.0/config/server.properties
复制代码
4.访问JMX-Agent端口验证监控指标

配置文件中指定了jmx-agent端口为5506。在开放防火墙策略、包管kafka重启成功后,可通过web访问查看相关的监控指标,如下图:

5.修改配置文件,并重启Prometheus

修改配置文件并重启Prometheus
  1. sudo vim prometheus.yml
  2. curl -X POST http://127.0.0.1:9091/-/reload
复制代码
使用curl下令重启prometheus的条件是:首次启动Prometheus时,就启用web.enable-lifecycle功能,具体启动下令如下:
  1. #使用sudo权限,后台执行Prometheus启动命令,并启用lifecycle功能,指定监听端口为9091
  2. sudo nohup ./prometheus --web.enable-lifecycle --web.listen-address=:9091 &
复制代码
修改内容如下:

6.访问Prometheus,验证target是否监控成功。


7.配置Grafana:导入模板、配置数据源、查看监控数据。

下载dashboard模板,共同jmx-agent使用时,建议使用11962号模板。【Grafana官方:11962号模板下载地点】

导入模板,上传json文件。

查看仪表板,成功取得监控数据。

留意:

  • 需要开通kafka、Prometheus、Grafana之间对具体端口的防火墙策略。
  • 没啥留意的了,你们先操纵吧,方式二、方式三我后面再增补。
方式二:使用kafka_exporter监控


  • 下载kafka_exporter步伐包。
  • 修改kafka_exporter配置文件。
  • 启动kafka_exporter。
  • 重启prometheus。
  • 导入grafana模板。
方式三:使用Kminion监控


  • 下载Kminion步伐包。
  • 修改kminion配置文件。
  • 创建kminion配置文件的环境变量。
  • 启动kminion。
  • 重启prometheus。
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数大数据工程师,想要提拔技能,每每是自己探索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易遇到天花板技术故步自封!
因此网络整理了一份《2024年大数据全套学习资料》,初志也很简单,就是渴望能够帮助到想自学提拔又不知道该从何学起的朋侪。





既有适合小白学习的零基础资料,也有适合3年以上经验的小同伴深入学习提拔的进阶课程,基本涵盖了95%以上大数据开辟知识点,真正体系化!
由于文件比较大,这里只是将部门目次大纲截图出来,每个节点里面都包含大厂面经、学习条记、源码讲义、实战项目、讲解视频,并且后续会持续更新
假如你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注大数据获取)

学习提拔的进阶课程,基本涵盖了95%以上大数据开辟知识点,真正体系化!**
由于文件比较大,这里只是将部门目次大纲截图出来,每个节点里面都包含大厂面经、学习条记、源码讲义、实战项目、讲解视频,并且后续会持续更新
假如你觉得这些内容对你有帮助,可以添加VX:vip204888 (备注大数据获取)
[外链图片转存中…(img-Ezk34Yza-1712857255632)]

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

正序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

尚未崩坏

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表