一、zookeeper安装
1、下载zookeeper
下载地址http://mirror.bit.edu.cn/apache/ , http://mirror.bit.edu.cn/apache/zookeeper/
当前时间201911,最新版本为3.5,因3.5还未文档,所以下载zookeeper-3.4.14,

2、解压到指定目录
在你解压的xxx\zookeeper-3.4.14\conf 下找到zoo_sample.cfg 文件。 将文件名改成 zoo.cfg。打开 zoo.cfg 文件 ,修改
dataDir=/tmp/zookeeper为dataDir=xxx/zookeeper3.4.14/tmp/zookeeper。
dataLogDir=xxx/DevSoft/zookeeper/zookeeper-3.4.14/log
3、启动
通过 cmd 进入dos命令窗口。命令窗口模式进入zookeeper的bin目录下,输入zkServer.cmd 回车。如下图:

4.命令行操作
4.1 增加节点
创建普通节点:
create /test test
4.2 查询节点
查询节点数据:
get /test
查看根节点下子节点:
ls /
4.3 修改节点
查询节点数据:
get /test
修改节点数据:
set /test 456
4.4 删除节点
删除节点:
delete /test
二、kafka安装
1、下载kafka
下载地址http://mirror.bit.edu.cn/apache/kafka/,
http://mirrors.tuna.tsinghua.edu.cn/apache/kafka/
我选的2.3版本
2、解压到指定目录
下载后解压到需要目录,更改server.properties配置文件,更改如下参数:
每一个broker在集群中的唯一标示,要求是正数。在改变IP地址,不改变broker.id的话不会影响
broker.id=0
kafka监听地址。
listeners=PLAINTEXT://127.0.0.1:9092
kafka数据的存放地址(不是日志地址,kafka的日志默认在安装目录的logs文件夹下),多个地址的话用逗号分割 /tmp/kafka-logs-1,/tmp/kafka-logs-2
log.dirs=E:/DevSoft/kafka/kafka_2.12-2.3.0/log
打开doc黑窗口,并进入kafka安装目录,windows机器输入
kafka-server-start.bat config/server.properties,
如果报错则将:
kafka-server-start.bat (全路径)/config/server.properties,
linux机器xxx\bin\kafka-server-start.sh config/server.properties

3、命令行操作
一下所有命令都是在kafka安装目录下执行下面命令。
3.1新建topics (主题名称helloTets)
xxx\bin\windows\kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 -partitions 1 --topic helloTets
或者
kafka-topics.sh --bootstrap-server localhost:9092 --create --topic helloTets --partitions 1 --replication-factor 1

3.2查看主题
kafka-topics.bat --zookeeper localhost:2181 --list
或
kafka-topics.bat --bootstrap-server localhost:9092 --list

3.3 更新topics
命令如下,但未测试成功
xxx\bin\windows\kafka-topics.bat --zookeeper localhost:2181 --alter --topic TestTest --partitions 1
3.4 删除topics
xxx\bin\windows\kafka-topics.bat --zookeeper localhost:2181 --delete --topic test1
或者
kafka-topics.bat --bootstrap-server localhost:9092--delete --topic test1(kafka2.2以后用)

使用查看命令查看

但此次删除非物理删除,物理删除需要修改kafaka配置文件server.properties, 添加delete.topic.enable=true,重启kafka,之后通过kafka命令行就可以直接删除topic
3.5生产者发送消息
kafka-console-producer.bat --broker-list 127.0.0.1:9092 --topic helloTets
3.6消费者消费消息
kafka-console-consumer.bat --bootstrap-server 127.0.0.1:9092 --topic helloTets --from-beginning

以上命令分为两种, --bootstrap-server 和 --zookeeper
从kafka 2.2 版本开始, --bootstrap-server 逐渐成为标准,用以替换 --zoookeeper ,二者区别不大,但 Kafka 有一套自己的安全体系,用于安全认证。 --zookeeper会绕过安全体系。