目录、
一、环境准备
1、我这里是准备三台服务器
节点 | ip |
node1 | 192.168.72.132 |
node2 | 192.168.72.133 |
node3 | 192.168.72.134 |
2、安装jdk
linux 环境安装jdk_openjdk 1.8.0_345-CSDN博客
3、下载kafka安装包
安装包下载
wget --n https://downloads.apache.org/kafka/3.7.0/kafka_2.13-3.7.0.tgz
解压
tar -zxvf kafka_2.13-3.7.0.tgz
将安装包传到另外两台服务器上并解压,解压命令见上一行
rsync root@192.168.72.132:/local/kafka/kafka_2.13-3.7.0.tgz /local/kafka/
rsync命令使用方法见:
[linux]两台Linux服务器之间传输文件的四种方法_两台linux服务器之间怎么传文件-CSDN博客
注:使用wget命令时,报无法解析地址,解决方法见:
DNS解析以及报错:wget: unable to resolve host address-CSDN博客
二、文件配置
1、配置zookeeper
我这边没有用kafka自带的zookeeper而是单独安装的zookeeper,步骤可参考
2、配置kafka
编辑kafka目录下config/server.properties 文件
vim server.properties
zookeeper.connect=192.168.72.132:2181,192.168.72.133:2181,192.168.72.134:2181
log.dirs=/data/kafka-log
listeners=PLAINTEXT://192.168.72.132:9092broker.id=1
三、集群启动
1、分别启动三台服务器的kafka
nohup bin/kafka-server-start.sh config/server.properties > kafka.nohup &
2、创建topic,因为kafka是集群,所以指定一台服务器就可以了,服务器ip和server.properties中配置的ip保持一致
./kafka-topics.sh --create --bootstrap-server 192.168.72.132:9092 --replication-factor 3 --partitions 3 --topic topictest1
3、往topic中发送消息,输入下面命令后会出现输入框,在输入框中输入需要发送的消息,按enter键发送
./kafka-console-producer.sh --topic topictest1 --bootstrap-server 192.168.72.132:9092
4、消费消息
./kafka-console-consumer.sh --topic topictest1 --from-beginning --bootstrap-server 192.168.72.133:9092