1,准备环境
- linux服务器三台:192.168.2.129;192.168.2.173;192.158.2.185;保证三台服务器能互相通信
- jdk:我用的版本是1.8_241
- kafka安装包:我用的版本,kafka_2.13-2.7.0.tgz
2,解压kafka安装包
将安装包放到/usr/local 目录下,解压:
tar -zxvf kafka_2.13-2.7.0.tgz
因为新版本的kafka自带有zookeeper,所以不需要单独安装zookeeper
3,配置192.168.2.129的zookeeper
在/usr/local/kafka_2.13-2.7.0下新建zookeeper文件夹
在/usr/local/kafka_2.13-2.7.0下新建log/zookeeper文件夹
编辑/usr/local/kafka_2.13-2.7.0/config/zookeeper.properties文件
配置dataDir 和dataLogDir
注释maxClientCnxns
增加如下配置(根据自己的ip来写)
tickTime=2000 initLimit=10 syncLimit=5 server.0=192.168.2.129:2888:3888 server.1=192.168.2.173:2888:3888 server.2=192.168.2.185:2888:3888
在/usr/local/kafka_2.13-2.7.0/zookeeper文件夹下创建myid文件
vi myid
输入0保存即可,这里的0对应着server.0;后面配置另外两台机器是分别写入1和2
4,配置192.168.2.129的kafka
在/usr/local/kafka_2.13-2.7.0/log/目录下创建kafka文件夹
编辑/usr/local/kafka_2.13-2.7.0/config/server.properties文件
配置红框中5项内容,其中broker.id=0对应着zookeeper的server.0;相应的,后面配置另外两台机器时的值为1和2
5,使用同样的方法配置192.168.2.173和192.168.2.185机器上的zookeeper和kafka
注意zookeeper的myid和kafka的broker.id
6,启动三台机器上的kafak。每台机器上都是先启动zookeeper在启动kafak
在/usr/local/kafka_2.13-2.7.0目录下执行命令:
zoopeeper:
./bin/zookeeper-server-start.sh ./config/zookeeper.properties
kafka:
./bin/kafka-server-start.sh ./config/server.properties
7,关于启动时报错问题
因为我们一台一台启动,先启动的会报错,等全部启动后就不报错了。