在Windows环境中安装并使用kafka

时间:2021-10-22 10:35:43

安装部署

安装部署Java

java -version

安装zookeeper

  • 下载zookeeper并解压,下载地址:http://zookeeper.apache.org/releases.html,

    选择自己需要的版本
  • 进入zookeeper设置目录,将zoo_sample.cfg重命名为:zoo.cfg
  • 在编辑器中打开zoo.cfg,将dataDir的值改成自己的data目录(需要新建)
  • 新建zookeeper系统变量ZOOKEEPER_HOME=,并把bin目录添加到系统的path变量中
  • 打开新的cmd,输入zkserver,运行Zookeeper服务器,如果安装成功,启动的界面如下:

    在Windows环境中安装并使用kafka

    说明zookeeper已经安装成功并运行在2181端口。

安装kafka

  • 下载需要的软件并解压,下载地址:

    http://kafka.apache.org/downloads.html
  • 进入kafka安装目录的config目录,修改server.properties文件,如修改的地方如下:

    把log.dirs改成自己的目录,一般在kafka安装目录下新建文件夹来存放日志文件
  • Kafka会按照默认,在9092端口上运行,并连接zookeeper的默认端口:2181
  • 运行kafka服务器
    • 进入kafka安装目录,按下shift +右键,选择 "在此处打开命令窗口",输入如下命令并按回车
    .\bin\windows\kafka-server-start.bat    .\config\server.properties

    如果安装kafka安装成功,命令运行后应该是下面的情况:

    在Windows环境中安装并使用kafka

    • kafka安装成功后就可以创建主题存储消息了

使用kafka

  • 创建主题:进入kafka安装目录的\bin\windows下按shift +右键,选择“在此处打开命令窗口”,输入如下命令并回车:
kafak-topics.bat  --create --zookeeper localhost:2181 --replication-factor 1 --partition 1 --topic test
  • 创建producer 及consumer来测试服务器

    在kafka安装目录的\bin\windows启动新的命令窗口,producer和consumer需要分别启动命令窗口。
    • 启动producter,启动命令如下:
kafka-console-producer.bat  --broker-list localhost:9092  --topic test
- 启动consumer,启动命令如下:
kafka-console-consumer.bat  --zookeeper localhost:2181  --topic test
- 在producter窗口输入内容,如果在consumer窗口能看到内容,则说明kafka安装成功

kafka常用命令

  • 列出主题
kafka-topic.bat -list -zookeeper localhost:2181
  • 描述主题
kafka-topics.bat -describe -zookeeper localhost:2181 -topic [topic name]
  • 从头读取消息
kafka-console-consumer.bat -zookeeper localhost:2181 -topic [topic name] -from-beginning
  • 删除主题
kafka-run-class.bat kafka.admin.TopicCommand -delete -topic [topic_to_delete] -zookeeper localhost:2181
  • 查看topic的详细信息
./kafka-topic.sh -zookeeper localhost:2181 -describe -topic  [topic name]
  • 为topic增加副本
./kafka-reassign-partitions.sh -zookeeper localhost:2181 -reassignment-json-file json/partitions-to-move.json -execute
  • 为topic增加partition
./bin/kafka-topics.sh -zookeeper localhost:2181 -alter -partitions 20 -topic [topic name]
  • 下线broker
./kafka-run-class.sh kafka.admin.ShutdownBroker --zookeeper localhost:2181 broker [brokerId] --num.retries 3 --retry.interval.ms 60
shutdown broker

参考文献