搭建KAFKA环境

1,189 阅读1分钟

搭建KAFKA环境

cd /opt/kafka
wget https://apache.mirror.digitalpacific.com.au/kafka/3.0.0/kafka_2.13-3.0.0.tgz

解压 tar -xzvf kafka_2.13-3.0.0.tgz

# 创建kafka消息存放目录,配置文件server.properties中的log.dir需要用到 
$ mkdir /opt/kafka/kafka_2.13-3.0.0/kafka_logs

配置/opt/kafka/kafka_2.13-3.0.0/config/server.properties

vim /opt/kafka/kafka_2.13-3.0.0/config/server.properties

broker.id=0
listeners=PLAINTEXT://192.168.1.105:9092
advertised.listeners=PLAINTEXT://192.168.1.105:9092
log.dirs=/opt/kafka_2.10-0.10.1.1/logs #日志存放路径,上面创建的目录
zookeeper.connect=localhost:2181 #zookeeper地址和端口,单机配置部署,localhost:2181

配置/opt/kafka/kafka_2.13-3.0.0/config/consumer.properties

bootstrap.servers=192.168.1.105:9092

启动KAFKA服务

注意:你的本地环境必须安装有Java 8+。

首先启动KAFKA自带的zookeeper,在bin目录下。

./zookeeper-server-start.sh ../config/zookeeper.properties&

打开另一个命令终端启动kafka服务,在bin目录下。

./kafka-server-start.sh ../config/server.properties &

测试KAFKA服务

先创建一个topic主题

./kafka-topics.sh --create --bootstrap-server 192.168.1.105:9092 --replication-factor 1 --partitions 1 --topic topic

用producer去发送一条信息到topic主题中。

./kafka-console-producer.sh --broker-list 192.168.1.105:9092 --topic topic
hello
this is a message

打开另一个终端,用consumer去读取topic主题中的信息

./kafka-console-consumer.sh --bootstrap-server 192.168.1.105:9092 --topic topic --from-beginning

顺利读出topic中的信息

关闭Kafka

#关闭zookeeper\
./bin/zookeeper-server-stop.sh config/zookeeper.properties &\
#关闭kafka\
./bin/kafka-server-stop.sh config/server.properties &

也可以直接kill进程,shell脚本也是找到Pid, 然后kill.

另外,测试时可以直接删除kafka的本地数据目录,比如kafka_logs。正式环境如何清除可查阅文档。