一、前提准备
笔者在这里的使用版本,仅供参考
名称 | 版本 | 地址 |
zookeeper | 3.4.12 | zookeeper官网下载地址 |
kafka | 1.1.0 |
主要配置信息如下(这里的zookeeper集群是之前搭建的myid都是以前设置的,而broker.id怕混淆就和主机ip结尾设置一样的)
主机IP | [kafka]broker.id | [zookeeper]myid |
192.168.80.123 | 3 | 1 |
192.168.80.124 | 4 | 2 |
192.168.80.125 | 5 | 3 |
分别创建zk目录存放zookeeper快照日志,和kafka_log目录存放kafka日志
二、搭建配置zookeeper
1、解压zookeeper进入conf目录下,将zoo_sample.cfg复制一份zoo.cfg
2、打开zoo.cfg配置如下信息
3、在每台机器上的/home/hadoop/zk目录下分别创建myid文件,写入相应的server.myid
myid文件和server.myid 在快照目录下存放的标识本台服务器的文件,他是整个zk集群用来发现彼此的一个重要标识。
#node3下
echo 1 > /home/hadoop/zk/myid
#node4下
echo 2 > /home/hadoop/zk/myid
#node5下
echo 3 > /home/hadoop/zk/myid
4、到zk安装目录下,启动zk服务(三台都执行)
5、查看zk的状态(leader、follower)出现以下,则为启动成功
二、搭建配置kafka
1、解压kafka进入conf目录下,打开server.properties
修改如下的信息,log.dirs是上面创建好的目录一致,其他默认就好
#node3下
broker.id=3
advertised.listeners=PLAINTEXT://node3:9092
log.dirs=/home/hadoop/kafka_log
zookeeper.connect=192.168.80.123:2181,192.168.80.124:2181,192.168.80.125:2181
#node4下
broker.id=4
advertised.listeners=PLAINTEXT://node4:9092
log.dirs=/home/hadoop/kafka_log
zookeeper.connect=192.168.80.123:2181,192.168.80.124:2181,192.168.80.125:2181
#node5下
broker.id=5
advertised.listeners=PLAINTEXT://node5:9092
log.dirs=/home/hadoop/kafka_log
zookeeper.connect=192.168.80.123:2181,192.168.80.124:2181,192.168.80.125:2181
2、到kafka安装目录下,启动kafka服务(三台都执行)
3、检查服务是否启动
四、测试kafka集群
1、进入kafka目录下,创建一个test的topic
bin/kafka-topics.sh --create --zookeeper node3:2181,node4:2181,node5:2181 --replication-factor 1 --partitions 1 --topic test
2、查看topic列表
bin/kafka-topics.sh --list --zookeeper localhost:2181
3、模拟生产者,并写入数据
bin/kafka-console-producer.sh --broker-list node3:9092,node4:9092,node5
4、模拟消费者,从头消费数据
bin/kafka-console-consumer.sh --bootstrap-server node3:9092,node4:9092,node5:9092 --from-beginning --topic test
至此完成,祝你成功!