分享好友 最新动态首页 最新动态分类 切换频道
选它准没错,Kafka可视化监控之Eagle
2024-12-29 19:50

Kafka-Eagle框架可以监控Kafka集群的整体运行情况,在生产环境中经常使用。

一、MySQL环境准备

Kafka-Eagle的安装依赖于MySQL,MySQL主要用来存储可视化展示的数据。如果集群中之前安装过MySQL可以跨过该步。

二、Kafka环境准备

关闭Kafka集群

[bigdata@hadoop102 kafka]$ kf.sh stop

在/home/bigdata/bin目录下kf.sh脚本文件如下

#! /bin/bash

case $1 in

"start"){

for i in hadoop102 hadoop103 hadoop104

do

echo " --------启动 $i Kafka-------"

ssh $i "/opt/module/kafka_2.12-3.0.0/bin/kafka-server-start.sh -daemon /opt/module/kafka_2.12-3.0.0/config/server.properties"

done

};;

"stop"){

for i in hadoop102 hadoop103 hadoop104

do

echo " --------停止 $i Kafka-------"

ssh $i "/opt/module/kafka_2.12-3.0.0/bin/kafka-server-stop.sh "

done

};;

esac

修改/opt/module/kafka/bin/kafka-server-start.sh

[bigdata@hadoop102 kafka]$ vim bin/kafka-server-start.sh

修改如下参数值

if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then

export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"

fi

if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then

export KAFKA_HEAP_OPTS="-server -Xms2G -Xmx2G -XX:PermSize=128m -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:ParallelGCThreads=8 -XX:ConcGCThreads=5 -XX:InitiatingHeapOccupancyPercent=70"

export JMX_PORT="9999"

#export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G"

fi

注意:修改之后在启动Kafka之前要分发到其他节点。

[bigdata@hadoop102 bin]$ xsync kafka-server-start.sh

在/home/bigdata/bin目录下xsync文件代码如下

#!/bin/bash

#1. 判断参数个数

if [ $# -lt 1 ]

then

echo Not Enough Arguement!

exit;

fi

#2. 遍历集群所有机器

for host in hadoop102 hadoop103 hadoop104

do

echo ==================== $host ====================

#3. 遍历所有目录,挨个发送

for file in $@

do

#4. 判断文件是否存在

if [ -e $file ]

then

#5. 获取父目录

pdir=$(cd -P $(dirname $file); pwd)

#6. 获取当前文件的名称

fname=$(basename $file)

ssh $host "mkdir -p $pdir"

rsync -av $pdir/$fname $host:$pdir

else

echo $file does not exists!

fi

done

done

三、Kafka-Eagle安装

官网:https://www.kafka-eagle.org/

上传压缩包kafka-eagle-bin-2.0.8.tar.gz到集群 /opt/software目录

解压到本地

[bigdata@hadoop102 software]$ tar -zxvf kafka-eagle-bin-2.0.8.tar.gz

进入刚才解压的目录

[bigdata@hadoop102 kafka-eagle-bin-2.0.8]$ ll

总用量 79164

-rw-rw-r--. 1 bigdata bigdata 81062577 10月 13 00:00 efak-web-2.0.8-bin.tar.gz

将efak-web-2.0.8-bin.tar.gz解压至/opt/module

[bigdata@hadoop102 kafka-eagle-bin-2.0.8]$ tar -zxvf efak-web-2.0.8-bin.tar.gz -C /opt/module/

修改名称

[bigdata@hadoop102 module]$ mv efak-web-2.0.8/ efak

修改配置文件 /opt/module/efak/conf/system-config.properties

[bigdata@hadoop102 conf]$ vim system-config.properties

######################################

# multi zookeeper & kafka cluster list

# Settings prefixed with 'kafka.eagle.' will be deprecated, use 'efak.' instead

######################################

efak.zk.cluster.alias=cluster1

cluster1.zk.list=hadoop102:2181,hadoop103:2181,hadoop104:2181/kafka

######################################

# zookeeper enable acl

######################################

cluster1.zk.acl.enable=false

cluster1.zk.acl.schema=digest

cluster1.zk.acl.username=test

cluster1.zk.acl.password=test123

######################################

# broker size online list

######################################

cluster1.efak.broker.size=20

######################################

# zk client thread limit

######################################

kafka.zk.limit.size=32

######################################

# EFAK webui port

######################################

efak.webui.port=8048

######################################

# kafka jmx acl and ssl authenticate

######################################

cluster1.efak.jmx.acl=false

cluster1.efak.jmx.user=keadmin

cluster1.efak.jmx.password=keadmin123

cluster1.efak.jmx.ssl=false

cluster1.efak.jmx.truststore.location=/data/ssl/certificates/kafka.truststore

cluster1.efak.jmx.truststore.password=ke123456

######################################

# kafka offset storage

######################################

# offset保存在kafka

cluster1.efak.offset.storage=kafka

######################################

# kafka jmx uri

######################################

cluster1.efak.jmx.uri=service:jmx:rmi:///jndi/rmi://%s/jmxrmi

######################################

# kafka metrics, 15 days by default

######################################

efak.metrics.charts=true

efak.metrics.retain=15

######################################

# kafka sql topic records max

######################################

efak.sql.topic.records.max=5000

efak.sql.topic.preview.records.max=10

######################################

# delete kafka topic token

######################################

efak.topic.token=keadmin

######################################

# kafka sasl authenticate

######################################

cluster1.efak.sasl.enable=false

cluster1.efak.sasl.protocol=SASL_PLAINTEXT

cluster1.efak.sasl.mechanism=SCRAM-SHA-256

cluster1.efak.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username="kafka" password="kafka-eagle";

cluster1.efak.sasl.client.id=

cluster1.efak.blacklist.topics=

cluster1.efak.sasl.cgroup.enable=false

cluster1.efak.sasl.cgroup.topics=

cluster2.efak.sasl.enable=false

cluster2.efak.sasl.protocol=SASL_PLAINTEXT

cluster2.efak.sasl.mechanism=PLAIN

cluster2.efak.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="kafka" password="kafka-eagle";

cluster2.efak.sasl.client.id=

cluster2.efak.blacklist.topics=

cluster2.efak.sasl.cgroup.enable=false

cluster2.efak.sasl.cgroup.topics=

######################################

# kafka ssl authenticate

######################################

cluster3.efak.ssl.enable=false

cluster3.efak.ssl.protocol=SSL

cluster3.efak.ssl.truststore.location=

cluster3.efak.ssl.truststore.password=

cluster3.efak.ssl.keystore.location=

cluster3.efak.ssl.keystore.password=

cluster3.efak.ssl.key.password=

cluster3.efak.ssl.endpoint.identification.algorithm=https

cluster3.efak.blacklist.topics=

cluster3.efak.ssl.cgroup.enable=false

cluster3.efak.ssl.cgroup.topics=

######################################

# kafka sqlite jdbc driver address

######################################

# 配置mysql连接

efak.driver=com.mysql.jdbc.Driver

efak.url=jdbc:mysql://hadoop102:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull

efak.username=root

efak.password=root

######################################

# kafka mysql jdbc driver address

######################################

#efak.driver=com.mysql.cj.jdbc.Driver

#efak.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull

#efak.username=root

#efak.password=123456

添加环境变量

[bigdata@hadoop102 conf]$ sudo vim /etc/profile.d/my_env.sh

# kafkaEFAK

export KE_HOME=/opt/module/efak

export PATH=$PATH:$KE_HOME/bin

注意:source /etc/profile

[bigdata@hadoop102 conf]$ source /etc/profile

启动

注意:启动之前需要先启动ZK以及KAFKA。

[bigdata@hadoop102 kafka]$ kf.sh start

启动efak

[bigdata@hadoop102 efak]$ bin/ke.sh start

Version 2.0.8 -- Copyright 2016-2021

*****************************************************************

* EFAK Service has started success.

* Welcome, Now you can visit 'http://192.168.10.102:8048'

* Account:admin ,Password:123456

*****************************************************************

* <Usage> ke.sh [start|status|stop|restart|stats] </Usage>

* <Usage> https://www.kafka-eagle.org/ </Usage>

*****************************************************************

说明:如果停止efak,执行命令。

[bigdata@hadoop102 efak]$ bin/ke.sh stop

四、Kafka-Eagle页面操作

登录页面查看监控数据

http://192.168.10.102:8048/

五、总结

Kafka Eagle 提供了完善的管理页面,很方便的去管理和可视化Kafka集群的一些信息,例如Broker详情、性能指标趋势、Topic集合、消费者信息等,选它准没错,赶快安装试试吧。

最新文章
Dreamweaver试题及答案一
1.通过单击面板组左边中间的三角形按钮,可以隐藏和显示面板组。通过单击各面板左上角的三角形按钮将隐藏和显示各面板。 A A正确 B. 错误2.在DreAmweAver MX中它只能对HTML文件可以进行编辑: B. A正确 B. 错误3.HTML是HyperText MArkup LA
2022年全球直销公司前十名 世界十大直销公司排行榜2022
  2022全球直销公司排名top10  1、安利(Amway)  总部位于美国的安利公司经过40多年的快速发展,自有总资产已达500多亿美元(零负债),在世界500强企业中排名第27位;凭借其优质的高科技产品和热心公益事业,安利不但在国际上获得了巨大
AI写作神器电脑版 1.0.21
AI写作神器是一款可以帮助您写日报、周报、月报、工作总结,广告文案等提供灵感的APP,无论您需要撰写文章、创作故事,还是寻找灵感和构思,AI写作神器将为您提供个性化的支持和创作建议,让写作将变得轻松、便捷。输入自己感兴趣的标题内
Elasticsearch实战(五):Springboot实现Elasticsearch电商平台日志埋点与搜索热词
文章目录系列文章索引一、提取热度搜索1、热搜词分析流程图2、日志埋点(1)排除logback的默认集成。(2)引入log4j2起步依赖(3)设置配置文件(4)配置文件模板(5)日志埋点(6)创建索引3、数据落盘(logstash)(1)配置Logstash.conf
Facebook海外户&什么是Facebook代投
代投是指通过第三方代理机构或个人,代为和投放在Facebook平台上。这种方式可以帮助企业或个人实现更加精准的广告投放,提高广告效果和回报。如果你需要Facebook/开户、代投都是可以联系我18024488576(微信同号),想要了解更多资讯可以关
5个最实用的PPT制作技巧
今天分享给大家一些好用的PPT制作技巧,每一个都值得去收藏哦。修改文本框内默认字体如果我们修改过一次字体之后,新插入的文本框都能使用这个字体,那么我们就可以节省大量修改字体的时间。【设置为默认形状】正是这样的一个功能。将字体
AI办公进入落地年 WPS 365定位“办公新质生产力平台”
日前,国内领先的办公软件和服务提供商金山办公在北京举办了「金山办公生产力大会」,并现场发布了面向组织和企业的办公新质生产力平台WPS 365,这也是金山办公自去年开始发力AI之后,发布第一款面向组织和企业端的AI商业化产品。 据悉,全新的W
19.TCP 握手为什么是三次,为什么不能是两次?不能是四次?
TCP是面向连接的,UDP是面向无连接的;TCP只能一对一通信,UDP支持一对一,一对多,多对一和多对多交互通信;TCP是面向字节流的,UDP是面向报文的;TCP是可靠传输,使用流量控制和
2023全球百强流量网站排名揭晓,揭秘互联网巨头的流量密码
随着互联网的快速发展,全球范围内的网站数量呈现出爆炸式的增长,在这庞大的网站海洋中,哪些网站能够脱颖而出,成为流量的佼佼者呢?权威机构发布了2023年度全球百强流量网站排名,让我们一起揭开这些互联网巨头的流量密码。本次排名根据
ai英语写作生成器:一键智能创作助手
在当今信息时代英语写作已成为一项至关要紧的技能,无论是学术研究、商务沟通还是日常交流,都离不开优秀的英语写作能力。很多人在英语写作进展中会遇到词汇匮乏、语法错误、结构混乱等疑惑。为了让英语写作变得更加轻松高效一款名为“英语
相关文章
推荐文章
发表评论
0评