Apache Kafka系列文章
1、kafka(2.12-3.0.0)介绍、部署及验证、基准测试
2、java调用kafka api
3、kafka重要概念介紹及示例
4、kafka分区、副本介绍及示例
5、kafka监控工具Kafka-Eagle介绍及使用
文章目录
- Apache Kafka系列文章
- 一、Kafka-Eagle简介
- 二、安装Kafka-Eagle
- 1、开启Kafka JMX端口
- 2、安装Kafka-Eagle
- 1)、 安装JDK,并配置好JAVA_HOME。
- 2)、解压
- 3)、配置 kafka_eagle 环境变量。
- 4)、 配置 kafka_eagle
- 5)、启动
- 三、验证
本文主要介绍了kafka监控工具Kafka-Eagle的使用。
本文依赖:kafka、zookeeper部署完成。
本分分为三个部分介绍,即Kafka-Eagle介绍、部署和验证。
一、Kafka-Eagle简介
早期,要监控Kafka集群我们可以使用Kafka Monitor以及Kafka Manager,但随着监控的功能要求、性能要求的提高,这些工具已经无法满足。
Kafka Eagle是一款结合了目前大数据Kafka监控工具的特点,重新研发的一块开源免费的Kafka集群优秀的监控工具。它可以非常方便的监控生产环境中的offset、lag变化、partition分布、owner等。
官网地址:https://www.kafka-eagle.org/
二、安装Kafka-Eagle
1、开启Kafka JMX端口
JMX(Java Management Extensions)是一个为应用程序植入管理功能的框架。JMX是一套标准的代理和服务,实际上,用户可以在任何Java应用程序中使用这些代理和服务实现管理。很多的一些软件都提供了JMX接口,来实现一些管理、监控功能。
- 开启Kafka JMX
在启动Kafka的脚本前,添加:
cd /usr/local/bigdata/kafka_2.12-3.0.0/bin export JMX_PORT=9988; nohup kafka-server-start.sh /usr/local/bigdata/kafka_2.12-3.0.0/config/server.properties &
- 修改一键启动脚本,增加export JMX_PORT=9988 ,具体如下:
[alanchan@server1 onekeystart]$ cat kafkaCluster.sh #!/bin/sh case $1 in "start"){ for host in server1 server2 server3 do ssh $host "source /etc/profile;export JMX_PORT=9988; nohup ${KAFKA_HOME}/bin/kafka-server-start.sh ${KAFKA_HOME}/config/server.properties > /dev/null 2>&1 &" echo "$host kafka is running..." sleep 1.5s done };; "stop"){ for host in server1 server2 server3 do ssh $host "source /etc/profile; nohup ${KAFKA_HOME}/bin/kafka-server-stop.sh > /dev/null 2>&1 &" echo "$host kafka is stopping..." sleep 1.5s done };; esac
2、安装Kafka-Eagle
1)、 安装JDK,并配置好JAVA_HOME。
2)、解压
将kafka_eagle上传,并解压到 /usr/local/bigdata 目录中
cd /usr/local/tools/ tar -xvzf kafka-eagle-bin-3.0.1.tar.gz -C /usr/local/bigdata [alanchan@server1 tools]$ tar -xvzf kafka-eagle-bin-3.0.1.tar.gz -C /usr/local/bigdata kafka-eagle-bin-3.0.1/ kafka-eagle-bin-3.0.1/efak-web-3.0.1-bin.tar.gz cd /usr/local/bigdata/kafka-eagle-bin-3.0.1 tar -xvzf efak-web-3.0.1-bin.tar.gz [alanchan@server1 kafka-eagle-bin-3.0.1]$ ll 总用量 87844 drwxr-xr-x 8 alanchan root 4096 1月 16 07:50 efak-web-3.0.1 -rw-r--r-- 1 alanchan root 89947836 9月 6 04:45 efak-web-3.0.1-bin.tar.gz [alanchan@server1 kafka-eagle-bin-3.0.1]$ cd efak-web-3.0.1 [alanchan@server1 efak-web-3.0.1]$ ll 总用量 24 drwxr-xr-x 2 alanchan root 4096 1月 16 07:50 bin drwxr-xr-x 2 alanchan root 4096 1月 16 07:50 conf drwxr-xr-x 2 alanchan root 4096 9月 12 2021 db drwxr-xr-x 2 alanchan root 4096 1月 16 07:50 font drwxr-xr-x 9 alanchan root 4096 2月 23 2022 kms drwxr-xr-x 2 alanchan root 4096 4月 1 2022 logs
3)、配置 kafka_eagle 环境变量。
vim /etc/profile export KE_HOME=/usr/local/bigdata/kafka-eagle-bin-3.0.1/efak-web-3.0.1 export PATH=$PATH:$KE_HOME/bin source /etc/profile
4)、 配置 kafka_eagle
使用vi打开conf目录下的system-config.properties
vim conf/system-config.properties
# 修改第4行,配置kafka集群别名 kafka.eagle.zk.cluster.alias=cluster1 # 修改第5行,配置ZK集群地址 efak.zk.cluster.alias=cluster1 cluster1.zk.list=server1:2118,server2:2118,server3:2118 # 注释第6行 #cluster2.zk.list=xdn10:2181,xdn11:2181,xdn12:2181 # 开启mys efak.driver=com.mysql.cj.jdbc.Driver efak.url=jdbc:mysql://192.168.10.44:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull efak.username=root efak.password=888888
完整配置文件
###################################### # multi zookeeper & kafka cluster list # Settings prefixed with 'kafka.eagle.' will be deprecated, use 'efak.' instead ###################################### efak.zk.cluster.alias=cluster1 cluster1.zk.list=server1:2118,server2:2118,server3:2118 #cluster2.zk.list=xdn10:2181,xdn11:2181,xdn12:2181 ###################################### # 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=16 ###################################### # EFAK webui port ###################################### efak.webui.port=8048 ###################################### # EFAK enable distributed ###################################### efak.distributed.enable=false efak.cluster.mode.status=master efak.worknode.master.host=localhost efak.worknode.port=8085 ###################################### # 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 ###################################### cluster1.efak.offset.storage=kafka cluster2.efak.offset.storage=zk ###################################### # 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 ###################################### #efak.driver=org.sqlite.JDBC #efak.url=jdbc:sqlite:/hadoop/kafka-eagle/db/ke.db #efak.username=root #efak.password=www.kafka-eagle.org ###################################### # kafka mysql jdbc driver address ###################################### efak.driver=com.mysql.cj.jdbc.Driver efak.url=jdbc:mysql://192.168.10.44:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull efak.username=root efak.password=888888
5)、启动
[alanchan@server1 bin]$ ke.sh Usage: ./ke.sh {start|stop|restart|status|stats|find|gc|jdk|version|sdate|cluster} ke.sh start [2023-01-16 08:05:35] INFO: Port Progress: [##################################################] | 100% [2023-01-16 08:05:38] INFO: Config Progress: [##################################################] | 100% [2023-01-16 08:05:41] INFO: Startup Progress: [##################################################] | 100% [2023-01-16 08:05:31] INFO: Status Code[0] [2023-01-16 08:05:31] INFO: [Job done!] Welcome to ______ ______ ___ __ __ / ____/ / ____/ / | / //_/ / __/ / /_ / /| | / ,< / /___ / __/ / ___ | / /| | /_____/ /_/ /_/ |_|/_/ |_| ( Eagle For Apache Kafka® ) Version v3.0.1 -- Copyright 2016-2022 ******************************************************************* * EFAK Service has started success. * Welcome, Now you can visit 'http://192.168.10.41:8048' * Account:admin ,Password:123456 ******************************************************************* *
ke.sh [start|status|stop|restart|stats] *https://www.kafka-eagle.org/ ******************************************************************* 自己创建的用户alanchan,密码123456三、验证
浏览器中输入地址:http://192.168.10.41:8048
以上,完成了kafka监控工具Kafka-Eagle介绍及使用。
- 修改一键启动脚本,增加export JMX_PORT=9988 ,具体如下:
- 开启Kafka JMX
猜你喜欢
- 3小时前外包干了1个月,技术退步一大半。。。
- 3小时前【深度学习目标检测】十六、基于深度学习的麦穗头系统-含GUI和源码(python,yolov8)
- 3小时前前端实现(excel)xlsx文件预览
- 3小时前vue-router路由模式详解
- 3小时前【论文阅读】One For All: Toward Training One Graph Model for All Classification Tasks
- 3小时前thinkphp 命令行执行
- 3小时前kafka服务器连接出现:[NetworkClient.java:935] [Producer clientId=producer-1] Node -1 disconnected原因分析
- 3小时前数据湖架构Hudi(二)Hudi版本0.12源码编译、Hudi集成spark、使用IDEA与spark对hudi表增删改查
- 3小时前计算机毕业设计 基于Hadoop的物品租赁系统的设计与实现 Java实战项目 附源码+文档+视频讲解
- 3小时前前端超好玩的小游戏合集来啦--周末两天用html5做一个3D飞行兔子萝卜小游戏
网友评论
- 搜索
- 最新文章
- 热门文章