Kafka【三】Windows下安装Kafka集群

前文:Kafka【一】Windows下安装单节点Kafka

① 安装ZooKeeper

D:\创建文件夹kafkacluster,将kafka安装包kafka_2.12-3.6.1解压缩到kafka文件夹。

  • 修改文件夹名为kafkazk

    因为kafka内置了ZooKeeper软件,所以此处将解压缩的文件作为ZooKeeper软件使用。

  • 修改config/zookeeper.properties文件

bash 复制代码
dataDir=D:/kafkacluster/kafkazk/data
# the port at which the clients will connect
clientPort=2181

② 安装kafka

将上面解压缩的文件复制一份,改名为kafka1,然后修改config/server.properties配置文件:

# kafka节点数字标识,集群内具有唯一性
broker.id=1

# 监听器 9091为本地端口,如果冲突,请重新指定
listeners=PLAINTEXT://:9091

# 数据文件路径,如果不存在,会自动创建
log.dirs=D:/kafkacluster/kafka1/data

# ZooKeeper软件连接地址,2181为默认的ZK端口号 /kafka 为ZK的管理节点
zookeeper.connect=localhost:2181/kafka

将kafka1文件夹复制两份,改名为kafka2,kafka3

分别修改kafka2,kafka3文件夹中的配置文件server.properties

  • 将文件内容中的broker.id=1分别改为broker.id=2,broker.id=3
  • 将文件内容中的9091分别改为9092,9093(如果端口冲突,请重新设置)
  • 将文件内容中的kafka1分别改为kafka2,kafka3

③ 封装启动脚本

① 在kafkazk文件夹下创建zk.cmd批处理文件

bash 复制代码
# 添加启动命令
call bin/windows/zookeeper-server-start.bat config/zookeeper.properties

② 在kafka1,kafka2,kafka3文件夹下分别创建kfk.cmd批处理文件

bash 复制代码
# 添加启动命令
call bin/windows/kafka-server-start.bat config/server.properties

③ 在kafkacluster文件夹下创建cluster.cmd批处理文件,用于启动kafka集群

bash 复制代码
cd kafkazk
start zk.cmd
ping 127.0.0.1 -n 10 >nul
cd ../kafka1
start kfk.cmd
cd ../kafka2
start kfk.cmd
cd ../kafka3
start kfk.cmd

④ 在kafkacluster文件夹下创建cluster-clear.cmd批处理文件,用于清理和重置kafka数据

bash 复制代码
cd kafkazk
rd /s /q data
cd ../kafka1
rd /s /q data
cd ../kafka2
rd /s /q data
cd ../kafka3
rd /s /q data

⑤ 双击执行cluster.cmd文件,启动Kafka集群

集群启动命令后,会打开多个黑窗口,每一个窗口都是一个kafka服务,请不要关闭,一旦关闭,对应的kafka服务就停止了。

如果启动过程报错,主要是因为zookeeper和kafka的同步问题,请先执行cluster-clear.cmd文件,再执行cluster.cmd文件即可。

PS : 输入行太长,命令语法不挣缺的解决办法

  • 使用较短的文件夹和文件的名称
  • 减少文件夹树的深度
相关推荐
hairenjing11235 小时前
使用 Mac 数据恢复从 iPhoto 图库中恢复照片
windows·stm32·嵌入式硬件·macos·word
java1234_小锋5 小时前
讲讲RabbitMQ 性能优化
kafka
九鼎科技-Leo6 小时前
了解 .NET 运行时与 .NET 框架:基础概念与相互关系
windows·c#·.net
九鼎科技-Leo9 小时前
什么是 ASP.NET Core?与 ASP.NET MVC 有什么区别?
windows·后端·c#·asp.net·mvc·.net
码农爱java12 小时前
Kafka 之消息并发消费
spring boot·微服务·kafka·mq·消息中间件·并发消费
黎明晓月13 小时前
Java之字符串分割转换List
java·windows·list
九鼎科技-Leo13 小时前
在 C# 中,ICollection 和 IList 接口有什么区别?
windows·c#·.net
顾辰呀14 小时前
实现uniapp-微信小程序 搜索框+上拉加载+下拉刷新
前端·windows
Mephisto.java16 小时前
【大数据学习 | kafka高级部分】kafka的快速读写
大数据·redis·sql·kafka·flume
Bunny Chen16 小时前
如何缩小PPT演示文稿的大小?
windows·microsoft·powerpoint