版本选择
kafka_2.12-0.11.0.3
版本号说明:kafka使用Scala开发的,前面的2.12是Scala的版本号,后面的才是kafka的版本号。
0.11的版本,已经是kafka比较完善的一个版本了,后面新版都是对streaming的各种增强。如果仅用作消息队列,那么用0.11版本即可。
下载地址
https://archive.apache.org/di...
部署细节
下载、上传、解压缩等过程省略。
主要的配置文件就是:/config/server.properties
关键配置:
#broker id必须全局唯一
broker.id=0
#log的位置就是实际数据存储的位置
log.dirs=/usr/local/kafka_2.12-0.11.0.3/data
#开启删除topic的功能
delete.topic.enable=true
#zookeeper集群配置
zookeeper.connect=192.168.1.73:2181,192.168.1.52:2181,192.168.1.102:2181
常用命令
启动:./kafka-server-start.sh -daemon ../config/server.properties
停止:./kafka-server-stop.sh stop
2021-08-29(注)
经实测,本机安装的openjdk11,kafka0.11版本不支持。
本人更换为jdk1.8后恢复正常。
大家也可以选择更新的kafka版本来使用,就不需要更换jdk了。
2021-09-13(注)
java客户端要连接kafka,还需要额外修改两个配置,添加本地内外网ip的监听,才能让客户端正常连接kafka。
# The address the socket server listens on. It will get the value returned from
# java.net.InetAddress.getCanonicalHostName() if not configured.
# FORMAT:
# listeners = listener_name://host_name:port
# EXAMPLE:
# listeners = PLAINTEXT://your.host.name:9092
listeners=PLAINTEXT://本机内网ip:9092
# Hostname and port the broker will advertise to producers and consumers. If not set,
# it uses the value for "listeners" if configured. Otherwise, it will use the value
# returned from java.net.InetAddress.getCanonicalHostName().
advertised.listeners=PLAINTEXT://本机外网ip(如果有):9092
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。