kafka3.0集群环境搭建

1,192 阅读2分钟

1.wsl安装jdk

下载

jdk1.8下载

解压

tar -xzvf jdk-8u311-linux-x64.tar.gz

配置

vim /etc/profile

添加

export JAVA_HOME=/usr/share/java/jdk1.8.0_311
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

image.png

sudo加载不了java命令或环境变量

sudo -E 保留原有的环境变量

sudo vim /etc/sudoers

在Defaults secure_path 中添加Java的路径

注意事项linux中用:分割的,win下使用;

image.png

2.zookeeper安装

下载

zk3.7.0下载

配置修改

conf/zoo_sample.cfg重命名为 zoo.cfg


# 心跳检测
tickTime=2000
#leader和follower初始化连接时最长能忍受多少个心跳时间的间隔数
initLimit=10 
# leader和follower之间发送消息,请求和应达时间长度,最长不能超过多少个tickTime的时间长度
syncLimit=5
# Zookeeper 保存数据的目录.
dataDir=/usr/share/zookeeper/data
# 日志目录
dataDirLog=/usr/share/zookeeper/log
# 客户端链接的端口
clientPort=2181

启动、停止、重启

 ./zkServer.sh start

 ./zkServer.sh stop

 ./zkServer.sh restart

报错

Error: JAVA_HOME is not set and java could not be found in PATH.

linux在zkEnv.sh 指定 java_home

export JAVA_HOME=/usr/share/java/jdk1.8.0_311

image.png

重新启动

image.png

客户端连下

./zkServer.sh status
或者
./zkCli.sh -server 127.0.0.1:2181
 
创建节点
create [-s] [-e] path data acl 
-s表示创建顺序节点 
-e表示创建临时节点 
data 数据
acl 权限

查看所有节点
ls /

ls /brokers/ids

删除节点

delete path [version]

有子目录
deleteall

3.kafka安装

下载

kafka3.0下载

配置

conf/server.properties

listeners=PLAINTEXT://127.0.0.1:9092
log.dirs=/usr/share/kafka/log
zookeeper.connect=localhost:2181

启动

./bin/kafka-server-start.sh  config/server.properties

守护线程启动 控制台没输出
./bin/kafka-server-start.sh -daemon config/server.properties
报错
kafka-run-class.sh: line 342: exec: java: not found

参考上面java配置

验证

创建个主题
./bin/kafka-topics.sh --create --bootstrap-server 127.0.0.1:9092 --replication-factor 1 --partitions 1 --topic hello
查看主题
 ./bin/kafka-topics.sh --list  --bootstrap-server 127.0.0.1:9092
启动生产者
./bin/kafka-console-producer.sh --bootstrap-server 127.0.0.1:9092 --topic hello
启动消费者
./bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic hello

image.png

集群搭建
由于是本机的
复制配置文件,改下端口和日志路径多搞一份吧
broker.id=2
kafka-server-start.sh -daemon config/server2.properties
集群节点 zk查看

image.png

集群主题创建
./bin/kafka-topics.sh --create --bootstrap-server 127.0.0.1:9092,127.0.0.1:9093,127.0.0.1:9094 --replication-factor 1 --partitions 1 --topic hello

--replication-factor 1 一个副本
--partitions 1 一个分区
集群生产、消费
./bin/kafka-console-producer.sh --bootstrap-server 127.0.0.1:9092,127.0.0.1:9093,127.0.0.1:9094 --topic hello

./bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092,127.0.0.1:9093,127.0.0.1:9094 --topic hello2 --from-beginning

image.png

查看topic列表
 ./bin/kafka-topics.sh  --bootstrap-server 127.0.0.1:9092,127.0.0.1:9093,127.0.0.1:9094 --list
查看topic信息
./bin/kafka-topics.sh --describe  --bootstrap-server 127.0.0.1:9092,127.0.0.1:9093,127.0.0.1:9094 --topic hello

image.png

删除topic
 ./bin/kafka-topics.sh -delete --bootstrap-server 127.0.0.1:9092,127.0.0.1:9093,127.0.0.1:9094 --topic hello
清数据
数据清理不仅要清理日志、还需要把zk的节点也要清理掉

image.png

4.kafka-eagle安装

kafka-eagle下载

配置

image.png

启动

ke.sh [start|status|stop|restart|stats]

image.png

报错

如果请求一直再加载,注意看下log

 java.sql.SQLException: path to '/hadoop/kafka-eagle/db/ke.db': '/hadoop' does not exist
 
 修改数据库的位置:支持mysql和sqlit的 默认是sqlit 看下文件路径是否存在
 
 数据库信息是自动建立ke.db的

image.png

如果觉得我的文章对你有帮助请收藏,点赞,关注吧

公众号: 冒泡的肥皂