Kafka Eagle 的安装部署

编程入门 行业动态 更新时间:2024-10-27 06:25:40

<a href=https://www.elefans.com/category/jswz/34/1769633.html style=Kafka Eagle 的安装部署"/>

Kafka Eagle 的安装部署

kafka eagle 官网下载地址/

需要为kafka添加JMX
进入kafka的安装目录/bin
vi kafka-server-start.sh 修改KAFKA_HEAP_OPTS参数选项

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="12991"

下载kafka-eagle-bin-1.4.6.tar.gz到机器上

解压到目录中进入bin目录,赋予脚本执行权限chmod +x ke.sh

[hadoop@bigdata01 bin]$ tree
.
├── ke.bat
├── ke.pid
├── ke.sh
└── zookeeper.out0 directories, 4 files

ke.sh 为kafka eagle的启动和停止脚本

命令帮助
[hadoop@bigdata01 bin]$ ./ke.sh 
Usage: ./ke.sh {start|stop|restart|status|stats|find|gc|jdk|version}

启动kafka eagle : ./ke.sh start
停止kafka eagle: ./ke.sh stop

进入到conf目录下面kafka-eagle-web-1.4.6/conf
修改配置文件 vi system-config.properties

######################################
# multi zookeeper & kafka cluster list
######################################
#如果只有一个集群的话,就写一个cluster1就行了
#设置集群名称
kafka.eagle.zk.cluster.alias=cluster1#这里填上刚才上zookeeper.connect地址
cluster1.zk.list=bigdata01:2181,bigdata01:2182,bigdata01:2183
#cluster2.zk.list=xdn10:2181,xdn11:2181,xdn12:2181######################################
# broker size online list
######################################
cluster1.kafka.eagle.broker.size=20######################################
# zk client thread limit
######################################
kafka.zk.limit.size=25######################################
# kafka eagle webui port
######################################
kafka.eagle.webui.port=8048######################################
# kafka offset storage
######################################
cluster1.kafka.eagle.offset.storage=kafka
#cluster2.kafka.eagle.offset.storage=zk######################################
# kafka metrics, 30 days by default
######################################
kafka.eagle.metrics.charts=false
kafka.eagle.metrics.retain=30######################################
# kafka sql topic records max
######################################
kafka.eagle.sql.topic.records.max=5000
kafka.eagle.sql.fix.error=false######################################
# delete kafka topic token
######################################
kafka.eagle.topic.token=keadmin######################################
# kafka sasl authenticate
######################################
#如果kafka开启了sasl认证,需要在这个地方配置sasl认证文件
cluster1.kafka.eagle.sasl.enable=false
cluster1.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
cluster1.kafka.eagle.sasl.mechanism=SCRAM-SHA-256
cluster1.kafka.eagle.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username="kafka" password="kafka-eagle";
cluster1.kafka.eagle.sasl.client.id=
cluster1.kafka.eagle.sasl.cgroup.enable=false
cluster1.kafka.eagle.sasl.cgroup.topics=cluster2.kafka.eagle.sasl.enable=false
cluster2.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
cluster2.kafka.eagle.sasl.mechanism=PLAIN
cluster2.kafka.eagle.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="kafka" password="kafka-eagle";
cluster2.kafka.eagle.sasl.client.id=
cluster2.kafka.eagle.sasl.cgroup.enable=false
cluster2.kafka.eagle.sasl.cgroup.topics=######################################
# kafka sqlite jdbc driver address
######################################
#下面两项是配置数据库的,默认使用sqlite,如果量大,建议使用mysql
kafka.eagle.driver=com.mysql.jdbc.Driver
kafka.eagle.url=jdbc:mysql://bigdata01:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
kafka.eagle.username=root
kafka.eagle.password=123456######################################
# kafka mysql jdbc driver address
######################################
# 启用mysql作为元数据库
#kafka.eagle.driver=com.mysql.jdbc.Driver
#kafka.eagle.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
#kafka.eagle.username=XXX
#kafka.eagle.password=XXX

启动前需要在mysql数据库中创建好kafka eagle对应的数据库

create database ke DEFAULT CHARACTER SET utf8; 
grant all on *.* TO 'root'@'%' IDENTIFIED BY '123456'; 
flush privileges;

检查Java环境变量

[hadoop@bigdata01 conf]$ echo $JAVA_HOME 
/usr/java/jdk1.8.0_121

在启动前确保zookeeper 集群和kafka集群已经启动

以上配置好之后进入bin目录,启动kafka eagle
./ke.sh start

 inflated: META-INF/maven/org.smartloli.kafka.eagle/kafka-eagle-web/pom.properties
[2020-04-20 12:41:09] INFO: Port Progress: [##################################################] | 100%
[2020-04-20 12:41:12] INFO: Config Progress: [##################################################] | 100%
[2020-04-20 12:41:15] INFO: Startup Progress: [##################################################] | 100%
[2020-04-20 12:41:05] INFO: Status Code[0]
[2020-04-20 12:41:05] INFO: [Job done!]
Welcome to__ __    ___     ____    __ __    ___            ______    ___    ______    __     ______/ //_/   /   |   / __/   / //_/   /   |          / ____/   /   |  / ____/   / /    / ____// ,<     / /| |  / /_    / ,<     / /| |         / __/     / /| | / / __    / /    / __/   / /| |   / ___ | / __/   / /| |   / ___ |        / /___    / ___ |/ /_/ /   / /___ / /___   
/_/ |_|  /_/  |_|/_/     /_/ |_|  /_/  |_|       /_____/   /_/  |_|\____/   /_____//_____/   Version 1.4.6 -- Copyright 2016-2020
*******************************************************************
* Kafka Eagle Service has started success.
* Welcome, Now you can visit 'http://192.168.52.50:8048/ke'
* Account:admin ,Password:123456
*******************************************************************
* <Usage> ke.sh [start|status|stop|restart|stats] </Usage>
* <Usage> / </Usage>
*******************************************************************

启动成功后访问对应的url使用默认的用户名和密码进行登录

接下来可以在web界面看到我们kafka的一些信息,包括topic、zookeeper、kafka集群、consumer、偏移量等信息

下面是一份更加详细的配置信息

######################################
# 设置Kafka多集群,这里只需要设置Zookeeper,
# 系统会自动识别Kafka Broker
######################################
kafka.eagle.zk.cluster.alias=cluster1
cluster1.zk.list=127.0.0.1:2181
cluster2.zk.list=127.0.0.1:2181/plain
cluster3.zk.list=127.0.0.1:2181/scram
cluster4.zk.list=vmn4:2181######################################
# Zookeeper线程池最大连接数
######################################
kafka.zk.limit.size=25######################################
# Kafka Eagle的页面访问端口
######################################
kafka.eagle.webui.port=8048######################################
# 存储消费信息的类型,一般在0.9版本之前,消费
# 信息会默认存储在Zookeeper中,所以存储类型
# 设置zookeeper即可,如果是在0.10版本之后,
# 消费者信息默认存储在Kafka中,所以存储类型
# 设置为kafka。而且,在使用消费者API时,尽量
# 客户端Kafka API版本和Kafka服务端的版本保持
# 一致性。
######################################
cluster1.kafka.eagle.offset.storage=kafka
cluster2.kafka.eagle.offset.storage=kafka
#cluster3.kafka.eagle.offset.storage=kafka
cluster4.kafka.eagle.offset.storage=kafka######################################
# 开启性能监控,数据默认保留30天
######################################
kafka.eagle.metrics.charts=true
kafka.eagle.metrics.retain=30######################################
# KSQL查询Topic数据默认是最新的5000条,如果
# 在使用KSQL查询的过程中出现异常,可以将下面
# 的false属性修改为true,Kafka Eagle会在
# 系统中自动修复错误。
######################################
kafka.eagle.sql.topic.records.max=5000
kafka.eagle.sql.fix.error=false######################################
# 删除Kafka Topic时需要输入删除密钥,由
# 管理员执行
######################################
kafka.eagle.topic.token=keadmin######################################
# 开启Kafka ACL特性,例如SCRAM或者PLAIN,
# 一般生产环境会使用SCRAM来做ACL,应为SCRAM
# 可以动态创建和管理用户。
######################################
cluster1.kafka.eagle.sasl.enable=false
cluster1.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
cluster1.kafka.eagle.sasl.mechanism=SCRAM-SHA-256
cluster1.kafka.eagle.sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required username="admin" password="admin-secret";
cluster1.kafka.eagle.sasl.client.id=cluster2.kafka.eagle.sasl.enable=true
cluster2.kafka.eagle.sasl.protocol=SASL_PLAINTEXT
cluster2.kafka.eagle.sasl.mechanism=PLAIN
cluster2.kafka.eagle.sasl.jaas.config=org.apache.kafka.common.security.plain.PlainLoginModule required username="admin" password="admin-secret";
cluster2.kafka.eagle.sasl.client.id=######################################
# 存储Kafka Eagle元数据信息的数据库,目前支持
# MySQL和Sqlite,默认使用Sqlite进行存储
######################################
kafka.eagle.driver=com.mysql.jdbc.Driver
kafka.eagle.url=jdbc:mysql://127.0.0.1:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
kafka.eagle.username=root
kafka.eagle.password=123456#kafka.eagle.driver=org.sqlite.JDBC
#kafka.eagle.url=jdbc:sqlite:/Users/dengjie/webserver/hadoop/sqlite/ke.db
#kafka.eagle.username=root
#kafka.eagle.password=root

踩坑:

这里假设你已经把kafka+zookeeper安装完成,但是需要注意的几点是:
1.kafka需要开启JMX端口找到kafka安装路径,进入到bin文件夹,修改下面的地方。vi kafka-server-start.sh
...
if [ "x$KAFKA_HEAP_OPTS" = "x" ]; thenexport 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"
fi
...参考链接:[kafka添加jmx端口]:.Manuals/11.Metrics.html2.了解kafka在zookeeper配置需要查看kafka的server.properties配置找到zookeeper.connect此项配置,这个是要配置到eagle里面的此处假设zookeeper.connect=192.168.18.11:2181,192.168.18.12:2181,192.168.18.13:2181!!!PS:此处踩了坑,如果说这里的zookeeper地址后面加了其他路径,在kafka-eagle里面也要配置,否则在kafka-eagle的Dashboard中无法读取到kafka的信息。比如我们有人安装的kafka集群里面就有    192.168.18.11:2181/kafka1或者192.168.18.11:2181/kafka2这种地址。如果你在安装kafka的时候没有配置多余路径,这样是最好的,如果有一定要加上。
3.连通性测试安装kafka-eagle的服务器,一定要提前测试是否能连接kafka注册的zookeeper端口telnet 端口进行测试

踩坑连接:=maleskine

设置JMX 连接CDH:
在Cloudera Manager上创建了3节点的kafka集群服务,想要外部连接kafka JMX监控kakfa数据,需要修改kakfa配置:

-Dcom.sun.management.jmxremote.host=192.168.1.125
-Djava.rmi.server.hostname=192.168.1.125
在下图中修改上述两项配置,默认值为127.0.0.1,需要修改为节点的ip,JMX端口默认为9393。
修改完成后重启各个kakfa节点

额外修改 -Dcom.sun.management.jmxremote.local.only=false
配置示例:

-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.host=192.168.5.67 -Dcom.sun.management.jmxremote.local.only=false -Djava.rmi.server.hostname=192.168.5.67

更多推荐

Kafka Eagle 的安装部署

本文发布于:2023-07-28 20:16:19,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1298326.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:Kafka   Eagle

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!