Zookeeper与Kafka的集成通常涉及以下几个步骤:
1. 环境准备
- 准备3台机器,分别为
192.168.211.149
、192.168.211.137
、192.168.211.132
,并安装JDK 1.8环境。 - 下载Zookeeper和Kafka安装包,例如
zookeeper-3.4.5.tar.gz
和kafka_2.13-3.1.0.tgz
。
2. 搭建Zookeeper集群
- 上传软件包至指定目录并解压。
- 修改
zoo.cfg
配置文件,包括tickTime
、initLimit
、syncLimit
、dataDir
、dataLogDir
、clientPort
等参数,以及添加server.X
条目,其中X
是机器的ID。 - 在各机器上创建
myid
文件,内容分别为1
、2
、3
,对应各自的机器ID。 - 启动Zookeeper集群,并在每台机器上使用
jps
命令检查进程,确保Zookeeper集群启动成功。
3. 搭建Kafka集群
- 上传软件包至指定目录并解压。
- 修改
server.properties
配置文件,包括broker.id
、listeners
、zookeeper.connect
、num.partitions
、log.retention.hours
等参数。 - 在各机器上创建对应的目录,如
/opt/kafka_2.13-3.1.0/logs
等。 - 启动Kafka集群,使用命令
nohup /opt/kafka_2.13-3.1.0/bin/kafka-server-start.sh /opt/kafka_2.13-3.1.0/config/server.properties &
。 - 创建Kafka主题,例如使用命令
./bin/kafka-topics.sh --bootstrap-server 192.168.211.149:9092,192.168.211.137:9092,192.168.211.132:9092 --create --topic wozaijia --partitions 2 --replication-factor 2
。
4. 验证集成
- 生产消息,使用命令
./bin/kafka-console-producer.sh --broker-list 192.168.211.149:9092,192.168.211.137:9092,192.168.211.132:9092 --topic wozaijia
。 - 消费消息,使用命令
./bin/kafka-console-consumer.sh --bootstrap-server 192.168.211.149:9092,192.168.211.137:9092,192.168.211.132:9092 --topic wozaijia --from-beginning
。
以上步骤展示了如何在Linux环境下,通过修改配置文件和启动服务,将Zookeeper与Kafka集成在一起,并创建和消费主题。注意,实际操作中可能需要根据具体环境进行调整。