若没有部署zookeeper集群,先看这条博客
https://www.cnblogs.com/zhangqingyuan/p/22300617
1.下载kafka软件包
wget https://downloads.apache.org/kafka/3.7.1/kafka_2.13-3.7.1.tgz
2.解压软件包
[root@elk91 ~]# tar xf kafka_2.13-3.7.1.tgz -C /zqylinux/softwares/
3.修改kafka的配置文件
[root@elk91 ~]# vim /zqylinux/softwares/kafka_2.13-3.7.1/config/server.properties
...
# 指定节点的唯一标识
broker.id=91
# 指定数据存储路径
log.dirs=/zqylinux/data/kafka-logs
# 指定zookeeper集群存储的路径
zookeeper.connect=10.0.0.91:2181,10.0.0.92:2181,10.0.0.93:2181/zqylinux-kafka371
4.配置环境变量
[root@elk91 ~]# cat /etc/profile.d/kafka.sh
#!/bin/bash
export KAFKA_HOME=/zqylinux/softwares/kafka_2.13-3.7.1
export PATH=$PATH:${KAFKA_HOME}/bin
[root@elk91 ~]#
[root@elk91 ~]# source /etc/profile.d/kafka.sh
[root@elk91 ~]#
5.启动kafka节点
[root@elk91 ~]# kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties
6.检查kafka在zookeeper集群的初始化信息
查看"/zqylinux-kafka371/brokers/ids/91"路径即可
[zk: 10.0.0.93:2181(CONNECTED) 3] ls /zqylinux-kafka371/brokers/ids
[91]
发现"91"的znode是一个临时的zookeeper node。
7.停止kafka服务
[root@elk91 ~]# kafka-server-stop.sh
8.再次检查kafka在zookeeper集群的初始化信息
查看"/zqylinux-kafka371/brokers/ids/91"路径即可
[zk: 10.0.0.93:2181(CONNECTED) 4] ls /zqylinux-kafka371/brokers/ids
[]
发现"91"的znode是一个临时的zookeeper node消失了。
9.将91节点同步配置到其他节点
[root@elk91 ~]# scp -r /zqylinux/softwares/kafka_2.13-3.7.1/ elk92:/zqylinux/softwares/
[root@elk91 ~]# scp -r /zqylinux/softwares/kafka_2.13-3.7.1/ elk93:/zqylinux/softwares/
[root@elk91 ~]# scp /etc/profile.d/kafka.sh elk92:/etc/profile.d/
[root@elk91 ~]# scp /etc/profile.d/kafka.sh elk93:/etc/profile.d/
10.在92节点操作
[root@elk92 ~]# source /etc/profile.d/kafka.sh
[root@elk92 ~]#
[root@elk92 ~]# grep "^broker.id" $KAFKA_HOME/config/server.properties
broker.id=91
[root@elk92 ~]#
[root@elk92 ~]# sed -i '/^broker.id/s#91#92#' $KAFKA_HOME/config/server.properties
[root@elk92 ~]#
[root@elk92 ~]# grep "^broker.id" $KAFKA_HOME/config/server.properties
broker.id=92
[root@elk92 ~]#
11.在93节点操作
[root@elk93 ~]# grep "^broker.id" $KAFKA_HOME/config/server.properties
broker.id=91
[root@elk93 ~]#
[root@elk93 ~]# sed -i '/^broker.id/s#91#93#' $KAFKA_HOME/config/server.properties
[root@elk93 ~]#
[root@elk93 ~]# grep "^broker.id" $KAFKA_HOME/config/server.properties
broker.id=93
[root@elk93 ~]#
12.启动kafka集群
[root@elk91 ~]# kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties
[root@elk92 ~]# kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties
[root@elk93 ~]# kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties
13.连接zookeeper集群,检查zookeeper的信息
# 在任意一台机器,连接zookeeper任意一个节点即可,因为这是集群
[root@elk93 ~]zkCli.sh -server 10.0.0.91:2181
请看"/zqylinux-kafka371/brokers/ids"目录出现ids编号即可。
[zk: 10.0.0.92:2181(CONNECTED) 1] ls /zqylinux-kafka371/brokers/ids
[91, 92, 93]