Windows安装zookeeper以及kafka

安装环境

zookeeper以及kafka需要java环境
这个是我使用的文件,链接:https://pan.baidu.com/s/1da97-HyTovZIJWczyE5DDQ 提取码:yyp7
解压出文件,放入C:\Program Files目录里面,然后设置环境变量,此电脑–>属性–>高级系统设置–>环境变量
1.变量名:JAVA_HOME
地址:C:\Program Files\Java\jdk-12.0.2
在这里插入图片描述
2.变量名:CLASSPATH
地址:.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意前面需要这个.)
在这里插入图片描述
3.变量名:PATH
地址:%JAVA_HOME%\bin
地址:%JAVA_HOME%\jre\bin
在这里插入图片描述

安装zookeeper

这个是我使用的3.5.5-bin的版本,如果直接使用3.5.5这个包会报错,因为版本问题,3.5.5是源码,3.5.5-bin是可执行的。
zookeeper文件链接:https://pan.baidu.com/s/1N7wAzgg5OtjbJS3imM-yNQ
提取码:cnk6
解压之后,修改conf下的zoo_sample.cfg为zoo.cfg
在这里插入图片描述

双击运行zkServer
在这里插入图片描述

安装kafka

我使用的是kafka_2.11-2.3.0这个版本链接:https://pan.baidu.com/s/17lGpfCXKxelGMRNtZJPA9w 提取码:2r0h
解压之后,打开config里面的server.properties文件,我的配置如下:

Broker.id=0 //broker.id属性是集群中每个节点的名称,不能重复
Log.dirs=E:/kafka/kafka_2.11-2.3.0/logs //这个是我的日志路径
zookeeper.connect=localhost:2181 //如果是多节点,可以使用逗号依次隔开,端口默认2181

在kafka目录使用命令进行启动
.\bin\windows\kafka-server-start.bat config/server.properties
在这里插入图片描述
新开一个端口,创建一个名为“test”的topic,它有一个分区(partitions )和一个副本(replication-facto):
.\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
不可对已有主题进行创建,负责会出现Error while executing topic command : Topic ‘test’ already exists.错误。
在这里插入图片描述
查看topic使用:.\kafka-topics.bat --list --zookeeper localhost:2181
在这里插入图片描述
使用producer发送消息:.\kafka-console-producer.bat --broker-list localhost:9092 --topic test
在这里插入图片描述
新开一个端口,使用 consumer接受消息: .\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --from-beginning
在这里插入图片描述
删除主题:.\kafka-topics.bat --delete --zookeeper localhost:2181 --topic test,但这只是加了一个标记。
网上说的有两种方法可以删除:一种方法是在server.properties里面加上delete.topic.enable=true,然后重启kafka和zookeeper服务(这个我用着没效果)。另一种就是删除kafka以及zookeeper里面的日志文件,日志文件在server.properties你设置的log路径,zookeeper的是在zoo你设置的log路径。

设置多代理集群

首先,为每个代理创建一个配置文件
复制server.properties文件,命名为server1、server2,更改两个文件的broker、端口、日志路径
config/server-1.properties:
broker.id=1
listeners=PLAINTEXT://:9093
log.dir=E:/kafka/kafka_2.11-2.3.0/logs1

config/server-2.properties:
broker.id=2
listeners=PLAINTEXT://:9094
log.dir=E:/kafka/kafka_2.11-2.3.0/logs2

新开一个端口,启动节点1
.\bin\windows\kafka-server-start.bat config\server1.properties

新开一个端口,启动节点2
.\bin\windows\kafka-server-start.bat config\server2.properties
在这里插入图片描述
创建一个副本为3,分区为1的新topic:
.\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 3 --partitions 1 --topic my-replicated-topic
在这里插入图片描述
查看主题的信息:
.\kafka-topics.bat --describe --zookeeper localhost:2181 --topic my-replicated-topic
在这里插入图片描述
第一行给出了所有分区的摘要,下面的每行都给出了一个分区的信息。因为我们只有一个分区,所以只有一行。

“leader”是负责给定分区所有读写操作的节点。每个节点都是随机选择的部分分区的领导者,这个leader是broker为1的服务器。
“replicas”是复制分区日志的节点列表,不管这些节点是leader还是正在运行。
“isr”是一组“同步”replicas,是replicas列表的子集,它正在运行并被指到leader。

参考资料:http://kafka.apachecn.org/documentation.html#quickstart_consume

发布了10 篇原创文章 · 获赞 0 · 访问量 612

猜你喜欢

转载自blog.csdn.net/weixin_38849917/article/details/99713931