win7下部署kafka及遇到问题

本文详细介绍Kafka在Windows环境下的部署步骤,包括配置环境、启动Zookeeper与Kafka服务等,并分享了在部署过程中遇到的内存不足及消费者消费问题的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下载地址及参考文献

说明

本文也是按照上面官网的部署进行部署的,而且仅仅是淡季部署,并没有过多不同。后面会将遇到的问题进行说明
环境:
jdk 1.8 server 64位
kafka 2.11
zookeeper:使用kafka包里的zookeeper
本文将kafka安装到D:/software/kafka2.11-1.0.0

1、进入/bin/windows目录

shift+右键选择在此处打开命令行窗口。执行
启动zookeeper
启动zookeeper,这里我们不做配置修改

2、启动kafka服务

重复上步命令,并执行:
启动kafka服务
启动时如果出现内存不足提示,一般是什么不能获取足够heap memory 。。。,有以下原因:

  • 机器本身内存不足
  • jdk版本问题,32位jdk client版,不能获取这么大内存,我们可以修改kafka-server-start.bat,将里面1G改为512m即可,这里是根据操作系统位数来判断jdk版本的。
IF ["%KAFKA_HEAP_OPTS%"] EQU [""] (
    rem detect OS architecture
    wmic os get osarchitecture | find /i "32-bit" >nul 2>&1
    IF NOT ERRORLEVEL 1 (
        rem 32-bit OS
        set KAFKA_HEAP_OPTS=-Xmx512M -Xms512M
    ) ELSE (
        rem 64-bit OS
        set KAFKA_HEAP_OPTS=-Xmx1G -Xms1G
    )
)

说明下server.properties:

broker.id=1是集群节点id一般是正数
log.dirs=/tmp/kafka-logs,指定日志输出目录和存储目录
zookeeper.connect=localhost:2181 zookeeper集群地址

3、创建主题

D:\software\kafka_2.11-1.0.0\bin\windows>kafka-topics.bat --create --zookeeper l
ocalhost:2181 --replication-factor 1 --partitions 1 --topic test

查询主题

D:\software\kafka_2.11-1.0.0\bin\windows>kafka-topics.bat --list --zookeeper loc
alhost:2181

创建消息提供者

D:\software\kafka_2.11-1.0.0\bin\windows>kafka-console-producer.bat --broker-l
t localhost:9092 --topic test

创建消费者

D:\software\kafka_2.11-1.0.0\bin\windows>kafka-console-consumer.bat --bootstrap-
server localhost:9092 --topic test --from-beginning

在生产者端发送消息:
kafka示例

4、问题回顾

  1. 内存不足问题,刚刚已经说过可以通过修改kafka-server-start.bat文件来修改kafka需要的内存大小
  2. 消费者消费问题,通过kafka官网示例消费消息时,有可能消费不到,而且很快kafka服务器会停机。即
    kafka-console-consumer.bat –bootstrap-server localhost:9092 –topic test –from-beginning
    执行上面命令会报错,但是执行
    kafka-console-consumer.bat –zookeeper localhost:2181 –topic test –from-beginning
    时,虽然会提示版本问题,但是依然可以获取到访问消息。
    出现该问题的主要原因是由于jdk版本问题。执行
    java-version查看版本是否为64位server版,如果不是请执行第二条命令。
    kafka不能消费
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值