kafka安装linux版
安装实战
kafka安装包下载(注意:这里选择的安装包是2.11系列的1.1.0版本的)
wget https://archive.apache.org/dist/kafka/1.1.0/kafka_2.11-1.1.0.tgz
安装启动服务
首先,我们需要下载并且安装zk和kafka,并且将这两个服务启动:
解压缩文件
tar zxvf kafka_2.11-1.1.0.tgz
cd kafka_2.11-1.1.0/
启动zk
bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
检查zk是否启动成功
netstat -tunpl|grep 2181
tcp6 0 0 :::2181 :::* LISTEN 2877/java
启动kafka
常规模式启动kafka
bin/kafka-server-start.sh -daemon config/server.properties
进程守护模式启动kafka
nohup bin/kafka-server-start.sh config/server.properties >/dev/null 2>&1 &
检查kafka是否启动成功
netstat -tunpl|grep 9092
tcp6 0 0 :::9092 :::* LISTEN 3164/java
命令方式验证
1. 运行 producer
打开一个窗口,输入如下的指令,启动生产者:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
2. 运行 consumer
新启动一个新的窗口,输入如下的指令,启动消费者:
bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning (可能不成功,换下面红色的启动方式)
3. 测试消息传递
在producer中写信息, 从consumer中可以看到结果, 如下:
生产者端:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test >i like you [2018-12-07 01:55:56,427] WARN [Producer clientId=console-producer] Error while fetching metadata with correlation id 1 : {test=LEADER_NOT_AVAILABLE} (org.apache.kafka.clients.NetworkClient) [2018-12-07 01:55:56,532] WARN [Producer clientId=console-producer] Error while fetching metadata with correlation id 3 : {test=LEADER_NOT_AVAILABLE} (org.apache.kafka.clients.NetworkClient) >hello >world >hello kafka >
消费者端:
bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning Using the ConsoleConsumer with old consumer is deprecated and will be removed in a future major release. Consider using the new consumer by passing [bootstrap-server] instead of [zookeeper]. i like you hello world hello kafka
但是这是一种比较老使用zk启动消费端的方式,后序版本会废弃,官方推荐新的使用方式如下:
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning i like you hello world hello kafka hello
上面的消费方式为从头开始消费的,因此之前生产者发送过的历史消息,后启动的消费者仍然可以接收到。
这里我们再次测试一下只接收新的消息。
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test
生产者端输入:
i like you hello world hello kafka hello ------- louxj424 #新输入的内容
消费者端就只查看到一条消息:
louxj424
zookeeper和kafka的关闭
./bin/zookeeper-server-stop.sh
bin/kafka-server-stop.sh
参考:https://www.jianshu.com/p/94349568533c
https://blog.csdn.net/qq_19524879/article/details/82848556
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了