ubuntu安装kafka(无zk版本)
安装包下载
去官网下载最新安装包:https://kafka.apache.org/downloads
解压安装包
tar -xzvf kafka_2.13-3.9.1.tgz
安装及配置
修改日志文件存放路径
vim config/kraft/server.properties
生成集群id
输出id后保存一下
sh kafka-storage.sh random-uuid
格式化目录
sh ./kafka-storage.sh format -t ${your_id} -c /home/cheers/softpkg/kafka_2.13-3.9.1/config/kraft/server
把刚才生成的id替换到your_id变量上
格式化操作完成之后,你会发现在我们定义的log.dirs
目录下多出一个meta.properties文件。meta.properties文件中存储了当前的kafka节点的id(node.id
),当前节点属于哪个集群(cluster.id
)
启动kafka服务
使用以下命令启动kafka服务,不要关闭
./bin/kafka-server-start.sh ./config/kraft/server.properties
测试
创建topic
新开一个终端,创建名为test_topic的Topic
./bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --topic test_topic --partitions 1 --replication-factor 1
如果输出以下内容说明创建成功
Created topic test_topic.
查看创建的topic
bin/kafka-topics.sh --bootstrap-server localhost:9092 --list
如果输出test_topic再次说明创建成功
生产消息
接下来使用创建的topic生产消息
bin/kafka-console-producer.sh --bootstrap-server localhost:9092 --topic test_topic
使用上述命令会进入交互式终端,然后输入你想要发送的消息,比如
消费消息
接下来再次新开一个终端,创建消费者,观察是否可以接收刚才生产者生产的消息
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test_topic --from-beginning
此时如果在生产者终端的交互式界面键入信息,你会发现消费者终端也会实时显示发送的消息