专栏首页Hadoop实操0542-6.1.0-非安全环境下Kafka管理工具Kafka Eagle安装使用

0542-6.1.0-非安全环境下Kafka管理工具Kafka Eagle安装使用

温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。

Fayson的github: https://github.com/fayson/cdhproject

提示:代码块部分可以左右滑动查看噢

1

文档编写目的

Fayson在前面的文章介绍了《如何在CDH集群安装Kafka Manager》,本篇文章Fayson介绍另外一款的监控工具Kafka-eagle,它可以同时监控多个集群,监控集群中Topic的被消费情况(包含Lag产生、Offset的改变及Partition分布),同时也支持SQL查询。接下来Fayson主要介绍下在非安全环境下Kafka-eagle的安装及使用。

  • 内容概述

1.环境准备及安装

2.Kafka-eagle配置

3.Kafka-eagle使用

4.总结

  • 测试环境

1.CM和CDH版本为6.1.0

2.Kafka版本为2.0.0

3.Kafka-eagle版本为1.2.9

2

环境准备及说明

1.Kafka-eagle运行依赖Java运行环境,需要在部署节点安装JDK(支持JDK8+)

export JAVA_HOME=/usr/java/jdk1.8.0_131-cloudera
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tool.jar:$CLASSPATH

验证Java环境是否配置成功

2.Kafka-eagle对Kafka版本支持

更多信息可在github上查看:https://github.com/smartloli/kafka-eagle

3.Kafka-eagle下载,可以在github上下载源码编译或是官网下载已编译好版本,地址如下

源码下载地址:https://github.com/smartloli/kafka-eagle

编译好版本下载地址:https://github.com/smartloli/kafka-eagle-bin/archive/v1.2.9.tar.gz

4.修改CDH中Kafka服务JMX监听地址,默认监听地址为127.0.0.1

将Broker Java Options选项中“-Dcom.sun.management.jmxremote.host=127.0.0.1”删除,修改后的配置如下:

-server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:G1HeapRegionSize=16M -XX:MinMetaspaceFreeRatio=50 -XX:MaxMetaspaceFreeRatio=80 -XX:+DisableExplicitGC -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dcom.sun.management.jmxremote.local.only=true

保存配置并重启Kakfa服务,启动成功后在命令行验证监听地址是否由127.0.0.1修改为0.0.0.0

3

Kafka-eagle安装及配置

1.Fayson选择已编译好的版本进行安装部署,使用wget命令直接下载

2.将下载的v1.2.9.tar.gz解压并移到/opt/clouera目录下

[root@cdh3 ~]# tar -zxvf v1.2.9.tar.gz
[root@cdh3 ~]# tar -zxvf kafka-eagle-bin-1.2.9/kafka-eagle-web-1.2.9-bin.tar.gz
[root@cdh3 ~]# mv kafka-eagle-web-1.2.9/ /opt/cloudera/kafka-eagle
[root@cdh3 ~]# ll /opt/cloudera/kafka-eagle/

3.配置Kafka-eagle环境变量,在/etc/profile文件中增加如下内容

export KE_HOME=/opt/cloudera/kafka-eagle/
export export PATH=$KE_HOME/bin:$PATH

执行source /etc/profile命令使环境变量生效。

4.进入{KE_HOME}/conf目录下修改system-config.properties,内容如下:

#Fayson只有一个Kafka集群,所以注释了cluster2的配置
kafka.eagle.zk.cluster.alias=cluster1
cluster1.zk.list=cdh1:2181,cdh3:2181,cdh4:2181
#cluster2.zk.list=xdn10:2181,xdn11:2181,xdn12:2181

kafka.zk.limit.size=25
#kafka-eagle管理平台web端口号
kafka.eagle.webui.port=8048
#kafka版本为2.0.0使用的kafka存储offset
cluster1.kafka.eagle.offset.storage=kafka
#cluster2.kafka.eagle.offset.storage=zk
#Kafka-eagle的监控指标及SQL功能开关
kafka.eagle.metrics.charts=true
kafka.eagle.sql.fix.error=true
kafka.eagle.sql.topic.records.max=5000
#删除Topic需要输入的token
kafka.eagle.topic.token=keadmin
#Kafka-eagle元数据库,默认为sqlite
kafka.eagle.driver=com.mysql.jdbc.Driver
kafka.eagle.url=jdbc:mysql://cdh4:3306/kafkaeagle?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
kafka.eagle.username=root
kafka.eagle.password=123456

未列出的配置均使用默认配置即可。

5.配置中选择使用MySQL存储Kafka-eagle的元数据,需要在MySQL上创建一个kafkaeagle的数据库

6.进入{KE_HOME}/bin目录下启动kafka-eagle服务

[root@cdh3 bin]# pwd
/opt/cloudera/kafka-eagle/bin
[root@cdh3 bin]# chmod +x ke.sh 
[root@cdh3 bin]# ./ke.sh start

脚本执行成功显示如下:

脚本执行成功后,会提示kafka-eagle服务的访问地址及账号密码。

7.在浏览器输入http://test.cm.com:8048/ke

4

Kafka-eagle使用

1.输入账号密码登录Kafka-eagle,主页面总览Kafka集群的Brokers、Topics、Zookeepers及ConsumerGroups等信息

2.在管理界面行创建一个测试Topic

创建成功

CM上也可以看到创建成功的Topic

3.Kafka-eagle提供Mock功能,可以模拟向指定的Topic发送消息

4.查看Kafka集群所有Topic

点击Topic Name查看Topic的Partition、Leader、Replicas及ISR列表

5.Consumers下可以看到所有Group的消费Topic的情况及消费进度

点击Group名称查看详情

点击“Pending”查看具体Topic消费情况

6.通过Metrics可以看到集群的Brokers、Kafka和Zookeeper的各项监控指标

7.可以通过Kafka-eagle配置告警,关于消息消费延迟、Kafka和Zookeeper服务状告警,前提是需要配置邮箱服务器信息

8.系统管理功能用户、角色、系统功能管理

5

总结

1.相比之前介绍的Kafka Manager工具Fayson更喜欢Kafka-eagle,界面简洁操作方便

2.Kafka-eagle支持SQL查询,但Fayson使用的版本有个sql.js加载时报错,导致无法使用,暂时没有截图演示功能。

3.Kafka-eagle管理Kafka集群是通过JMX获取集群的信息,所以要确保Kafka的JMX已启用(CDH默认已启用),在C6版本JMX监听的IP地址为127.0.0.1,需要修改监听的IP地址。

4.支持邮件、微信和钉钉告警,Consumer group对指定topic消费滞后告警,集群Brokers和Zookeeper服务异常告警。

5.注意cluster2.kafka.eagle.offset.storage配置,Kafka较早版本(0.8.2.x)offset是存在Zookeeper的。

更多功能可参考官方文档:https://ke.smartloli.org/

在安装测试过程总使用的Kafka自带的性能测试脚本生成和消费消息

[root@cdh05 lib]# more /root/client.properties 
client.id=testgroup
bootstrap.servers=cdh2:9092,cdh3:9092,cdh4:9092
max.request.size=4192256

生产消息脚本

/opt/cloudera/parcels/CDH/lib/kafka/bin/kafka-producer-perf-test.sh \
--topic test_topic_eagle \
--num-records 1000 \
--producer.config /root/client.properties \
--throughput 10 \
--record-size 1024

消费消息脚本

/opt/cloudera/parcels/CDH/lib/kafka/bin/kafka-consumer-perf-test.sh \
--topic test_topic_eagle \
--messages 1000 \
--fetch-size 10000 \
--broker-list cdh2:9092,cdh3:9092,cdh4:9092

提示:代码块部分可以左右滑动查看噢

为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:如果使用电脑查看图片不清晰,可以使用手机打开文章单击文中的图片放大查看高清原图。

本文分享自微信公众号 - Hadoop实操(gh_c4c535955d0f)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-02-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 0543-5.15.0-Kerberos环境下Kafka管理工具Kafka Eagle安装使用

    Fayson在前面的文章介绍了《如何在CDH集群安装Kafka Manager》和《0542-6.1.0-非安全环境下Kafka管理工具Kafka Eagle安...

    Fayson
  • 0565-6.1.0-NFS异常导致Host Monitor及Agent服务错误

    如果CDH集群中的节点上有挂载NFS到某个目录,当NFS服务异常导致该目录不可用时,Cloudera Management Service的Host Monit...

    Fayson
  • 如何在CDSW中使用GPU运行深度学习

    Fayson
  • 设置无线网卡为英特尔® Galileo 主板

    云深无际
  • Kali Linux 2017.1 发布,带来一系列更新和特性

    Kali Linux 2017.1 发布了。此版本包括对 RTL8812AU 无线网卡注入的支持,对 CUDA GPU 破解的简化支持,在 Kali 存储库中打...

    Debian社区
  • 按奇偶排序数组II

    给定一个非负整数数组A,A中一半整数是奇数,一半整数是偶数。 对数组进行排序,以便当A[i]为奇数时,i也是奇数;当A[i]为偶数时,i也是偶数。 你可以返...

    WindrunnerMax
  • 100行代码爬取全国所有必胜客餐厅信息

    极客猴,热衷于 Python,目前擅长利用 Python 制作网络爬虫以及 Django 框架。

    Python中文社区
  • 微信小程序|基本页面设置

    1 最近几年微信小程序特别的火,快捷容易不需要下载所以不占内存,给我们带来方便。支付,小游戏,应用等很多地方都需要小程序。其实小程序的开发和网页制作基本一样,都...

    算法与编程之美
  • 基于微信小程序的公众号设计

    1 最近几年微信小程序特别的火,快捷容易不需要下载所以不占内存,给我们带来方便。支付,小游戏,应用等很多地方都需要小程序。其实小程序的开发和网页制作基本一样,都...

    基于SSM毕设代做
  • 简单易学的机器学习算法——岭回归(Ridge Regression)

    以上的这些问题,主要就是表现在模型的方差和偏差问题上,这样的关系可以通过下图说明:

    zhaozhiyong

扫码关注云+社区

领取腾讯云代金券