环境准备
win7 系统
java环境:jdk1.8
安装zookeeper
zookeeper下载地址:https://www.apache.org/dyn/closer.cgi/zookeeper/
- 下载至本地解压
- 在系统环境变量中设置ZOOKEEPER_HOME,如下图,在Path中添加%ZOOKEEPER_HOME%\bin;
- 在zookeeper的conf目录下将zoo_sample.cfg文件重命名为zoo.cfg
- 打开cmd,在zookeeper的bin目录下执行zkServer.cmd
- 成功启动后可以看到如下图打印信息
安装kafka
下载地址:https://www.apache.org/dyn/closer.cgi?path=/kafka/2.1.0/kafka_2.11-2.1.0.tgz
下载至本地并解压
- 进入Kafka config文件,修改server.properties,打开注释 listeners=PLAINTEXT://:9092,zookeeper.connect=localhost:2181(zookeeper将用于管理并协调Kafka代理),此处的zookeeper使用前面本机已启动的服务。
- 打开cmd 进入kafka目录,执行以下命令启动kafka
.\bin\windows\kafka-server-start.bat .\config\server.properties
运行成功,会有log文件的输出(文件地址在server.properties中可指定,默认是安装目录下tmp/kafka-logs文件),连接zk的2181端口,启动默认的9092端口
kafka之Topic
前面已经成功安装zookeeper和kafka,并完成启动。现在我们来测试一下
打开新的cmd命令窗口,在kafka的bin\windows目录下执行
kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic topic1
创建主题命名为“infos”,replication-factor=1(因为只有1个Kafka服务器在运行创建主题命名为“infos”,replication-factor=1(因为只有1个Kafka服务器在运行)
kafka之Producer
有了topic,接下来我们启动producer,输入消息
在kafka的bin\windows目录下打开新的cmd,执行命令
kafka-console-producer.bat --broker-list localhost:9092 --topic topic1
输入消息 one ,如下图:
kafka之Consumer
创建了topic,有了生产者Producer,看看Consumer是否能够收到消息
在kafka的bin\windows目录下执行命令
kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic topic1 --from-beginning
可以看看刚刚生产者Producer发送的消息one
两个命令行窗口,producer可以输入任何消息,consumer可以获取消息。