1.搭建Kafka集群
(1)解压Kafka软件包
将提供的Kafka_2.11-1.1.1.tgz软件包,上传至3个节点的/root目录下,并执行解压操作,3个节点执行的解压命令如下:
#tar -zxvf kafka_2.11-1.1.1.tgz
(2)修改3个节点配置文件
在zookeeper节点,进入Kafka_2.11-1.1.1/config目录下,编辑server.properties文件。
在配置文件中找到以下两行并注释掉(在文本前加#)如下所示
#broker.id=0
#zookeeper.connect=localhost:2181
然后在配置文件的底部添加如下3个配置。
zookeeper1节点:
broker.id=1
zookeeper.connect=172.16.51.23:2181,172.16.51.32:2181,172.16.51.41:2181
listeners = PLAINTEXT://172.16.51.23:9092
zookeeper2节点:
broker.id=2
zookeeper.connect=172.16.51.23:2181,172.16.51.32:2181,172.16.51.41:2181
listeners = PLAINTEXT://172.16.51.32:9092
zookeeper3节点:
broker.id=3
zookeeper.connect=172.16.51.23:2181,172.16.51.32:2181,172.16.51.41:2181
listeners = PLAINTEXT://172.16.51.41:9092
(3)启动服务
在zookeeper1节点,进入kafka_2.11-1.1.1/bin目录下,启动服务命令如下。
zookeeper1节点:
# ./kafka-server-start.sh -daemon ../config/server.properties
# jps
11416 Kafka
11464 Jps
10479 QuorumPeerMain
zookeeper2节点:
# ./kafka-server-start.sh -daemon ../config/server.properties
# jps
11121 Kafka
11188 Jps
10175 QuorumPeerMain
zookeeper3节点:
# ./kafka-server-start.sh -daemon ../config/server.properties
## jps
11080 Kafka
10188 QuorumPeerMain
11149 Jps
(4)测试服务
在zookeeper1节点,进入kafka_2.11-1.1.1/bin目录下,创建topic命令如下。
zookeeper1节点:
# ./kafka-topics.sh --create --zookeeper 172.16.51.23:2181 --replication-factor 1 --partitions 1 --topic test
Created topic "test".
如果成功的话,会输出“Created topic "test".”。
查看topic,虽然topic是在172.16.51.23上创建的,但是在其他机器上也能看到。例如在任意启动的机器kafka_2.11-1.1.1/bin的目录中执行命令如下:
zookeeper2节点:
# ./kafka-topics.sh --list --zookeeper 172.16.51.32:2181
test
# ./kafka-topics.sh --list --zookeeper 172.16.51.41:2181
test
测试成功。