首先下载安装包,解压对应的压缩包,注意efak只需要efak-web-3.0.1这个包即可
wget https://downloads.apache.org/kafka/3.3.1/kafka_2.13-3.3.1.tgz
wget https://github.com/smartloli/kafka-eagle-bin/archive/v3.0.1.tar.gz
提前安装好jdk8环境 和mysql
1 kafka-2.13配置
这个版本的kafka不需要额外使用zookeeper了,本身安装包里面已经自带了,直接启动即可。
首先修改config目录下的server.properties
#broker 的全局唯一编号,不能重复,只能是数字。
broker.id=0
#处理网络请求的线程数量
num.network.threads=3
#用来处理磁盘 IO 的线程数量
num.io.threads=8
#发送套接字的缓冲区大小
socket.send.buffer.bytes=102400
#接收套接字的缓冲区大小
socket.receive.buffer.bytes=102400
#请求套接字的缓冲区大小
socket.request.max.bytes=104857600
#kafka 运行日志(数据)存放的路径,路径不需要提前创建,kafka 自动帮你创建,可以
#配置多个磁盘路径,路径与路径之间可以用","分隔
log.dirs=这里写你的kafka的日志路径log.flush.interval.messages=10
log.flush.interval.ms=10000
#topic 在当前 broker 上的分区个数
num.partitions=1
#用来恢复和清理 data 下数据的线程数量
num.recovery.threads.per.data.dir=1每个 topic 创建时的副本数,默认时 1 个副本
offsets.topic.replication.factor=1
#segment 文件保留的最长时间,超时将被删除
log.retention.hours=168
#每个 segment 文件的大小,默认最大 1G
log.segment.bytes=1073741824检查过期数据的时间,默认 5 分钟检查一次是否数据过期
log.retention.check.interval.ms=300000
#配置连接 Zookeeper 集群地址
zookeeper.connect=127.0.0.1:2181配置监听地址(可选,不配置默认就是9092)
listeners=PLAINTEXT://0.0.0.0:端口
advertised.listeners=PLAINTEXT://这里写你的域名(如果是内网注意/etc/hosts中配置dns):端口
修改bin/kafka-server-start.sh 找到如下片段
if [ "x$KAFKA_HEAP_OPTS" = "x" ]; then
export KAFKA_HEAP_OPTS="-Xmx1G -Xms1G -Djava.rmi.server.hostname=这里写你的域名"
export JMX_PORT="9999"fi
配置kafka config目录下的zookeeper.properties
dataDir=xxxxx
dataLogDir=xxxx
2 efak 配置
配置conf文件夹下的system-config.properties,要注意efak之前的版本该配置文件有差异
Kafka使用的Zookeeper集群别名,多个集群用逗号分隔,后续针对不同集群配置都需要别名作前缀
efak.zk.cluster.alias=cluster1
Kafka配置的Zookeeper集群客户端访问地址
cluster1.zk.list=127.0.0.1:2181
efak的Web界面访问端口
efak.webui.port=8048
EFAK跟Zookeeper的最大连接数
kafka.zk.limit.size=25
开启metrics
efak.metrics.charts=true
保留时间15天
efak.metrics.retain=15
kafka.eagle.sasl.enable=false
kafka.eagle.sasl.protocol=SASL_PLAINTEXT
kafka.eagle.sasl.mechanism=PLAINefak.topic.token=这里配置你的密码(删除topic时会使用该密码)
efak.driver=com.mysql.cj.jdbc.Driver
efak.url=jdbc:mysql://localhost:3306/ke?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull
efak.username=这里配置数据库的用户名
efak.password=这里配置数据库的密码 用户信息默认保存在ke数据库中的ke_user表
3 配置环境变量
配置/etc/profile
export JAVA_HOME=jdk路径
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexport KAFKA_HOME=kafa路径
export KE_HOME=efak路径export PATH=${PATH}:${JAVA_HOME}/bin:$KAFKA_HOME/bin:$KE_HOME/bin
按照以上配置应该就可以了,之前出现efak登录成功后无法显示kafka的信息,或者删除topic后显示404 等等问题基本都是配置没有正确,百度很多结果,显示的解决答案都未声明kafka 和efak版本,导致浪费了很多时间。 如果有遗漏请各位补充,希望以上能帮助到各位
以下命令适用于kafka-2.13版本
启动zookeeper
nohup 你的路径/bin/zookeeper-server-start.sh -daemon 你的路径/config/zookeeper.properties
启动kafka
nohup 你的路径/bin/kafka-server-start.sh -daemon 你的路径/config/server.properties
查看topic
./kafka-topics.sh --bootstrap-server 127.0.0.1:9092 --list
删除topic
你的路径/bin/kafka-topics.sh --bootstrap-server 127.0.0.1:9092 --delete --topic topic名字
版权归原作者 肉本肉 所有, 如有侵权,请联系我们删除。