1. 打开至local目录下:
cd /usr/local
2. 给kafka创建一个文件夹:
mkdir kafka
3. 进入该文件夹:
Cd kafka/
4. 下载并解压kafka安装包:
Wget https://archive.apache.org/dist/kafka/2.4.1/kafka_2.11-2.4.1.tgz
Tar -xzvf kafka_2.11-2.4.1.tgz
5. 配置环境变量(若不配置之后写了启停脚本将无法使用,会报:-bash 未找到命令)
打开配置文件vi /etc/profile,并在下方加入kafka的环境变量
6. 修改配置文件
Cd /usr/local/kafka/kafka_2.11-2.4.1/config
修改service.properties文件
6.1.broker的全局唯一编号 broker.id=0
6.2.kafka运行日志存放的路径(不是必须) log.dirs=随意设置
6.3.broker使用zookeeper信息
zookeeper.connect=192.168.2.100:2181,192.168.2.101:2181,192.168.2.102:2181
6.4修改listener为主节点ip地址
advertised.listeners=PLAINTEXT://192.168.201.201:9092
7. 分发到从节点服务器
scp -r /usr/local/kafka root@slave1.hadoop:/usr/local
scp -r /usr/local/kafka root@slave2.hadoop:/usr/local
8. 将从节点中的service.properties文件中broker.id分别改为1,2,并分为修改listener的ip地址为192.168.2.101,192.168.2.102
9. 编写kafka集群群启动脚本:start-kafka.sh,stop-kafka.sh
Start-kafka.sh(注:脚本文件第一行并不是注释,不可删除!)
Stop-kafka.sh
10. 为编写好的启动脚本授权
Chmod 777 start-kafka.sh
Chmod 777 stop-kafka.sh
11. 启动kafka
注意,kafka依赖于zookeeper,所以应该先启动zookeeper,之后在启动kafka,关闭则相反。
11.1启动zookeeper:start-allzk.sh
11.2查看jps,发现每一节点均有quorumpeer进程,说明zookeeper启动成功
11.3启动kafka集群
因为之前编写kafka启停脚本时,已经进行过了文件授权,所以执行该命令可在Linux系统中的任何地方使用
Start-kafka.sh,每个节点均有kafka进程,说明kafka集群启动成功
12. 到zookeeper的bin路径下打开zkCli.sh来连接Zookeeper,查看相关节点信息
12.1 Zookeeper多了一个brokers节点
12.2 而在brokers节点下,的ids中,我们可以看到三个已配置好的broker.id都已成功连接至Zookeeper
至此,kafka集群搭建完成