如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留链接信息。

kafka是apache基金会下面的一个开源项目,定位是类似redis的一个队列应用,设计的初衷是用于大量的日志数据的归集统计分析。当然,完成这个初衷,还需要其他一系列apache系列的开源软件配套支持。

前提为安装好zookeeper

本篇文章里面,苏南大叔给大家带来的就是kafka的安装。kafka的安装,需要先安装并启动zookeeper,所以,还没有安装好zookeeper的同学,可以先查看相关文章:https://newsn.net/tag/zookeeper/ 。zookeeper和java的安装及环境变量必须配置好,才能继续本篇文章中的内容。

下载源码并修改配置

今天的范例里面,苏南大叔的安装环境还是win10。当然,kafka和zookeeper一样,都是基于java的,所以,安装包方面就不用考虑win10还是mac了,都是同一个安装包。http://kafka.apache.org/downloads 。我们这里选择一个已经编译好的二进制包。苏南大叔选择的是Scala 2.12 - kafka_2.12-0.11.0.0.tgz。至于scala的选择,官方也有说明,就是给有洁癖的兄弟准备的,如果没有特别需要,这两个版本都是可以运行的。

win10,大数据套装之kafka安装及使用 - kafka_00

苏南大叔,把解压后的文件,放在和zookeeper平行的目录。然后,我们需要编辑一下kafka下面config/server.properties 这个文件里面的log.dirs项目。见下图。

win10,大数据套装之kafka安装及使用 - kafka_01

win10,大数据套装之kafka安装及使用 - zoo12

启动kafka

然后使用下面的命令启动kafka。再次强调一下,kafka的运行,是以zookeeper的执行为前提的。必须先启动zookeeper。

.\bin\windows\kafka-server-start.bat .\config\server.properties

win10,大数据套装之kafka安装及使用 - zoo16

创建topic

下一步就是,我们需要创建一个topic,这个和redis的channel有些类似,不过redis并不需要单独再次创建channel。

cd bin\windows
kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

win10,大数据套装之kafka安装及使用 - zoo19

消费者consumer

创建好topic之后,就是消费者consumer和生产者producer粉墨登场了。我们先创建一个consumer。

cd bin\windows
kafka-console-consumer.bat --zookeeper localhost:2181 --topic test

win10,大数据套装之kafka安装及使用 - zoo20

生产者producer

再新开窗口创建一个producer。

cd bin\windows
kafka-console-producer.bat --broker-list localhost:9092 --topic test

结果展示

然后,我们就可以从producer愉快的和consumer进行对话了。9092和2181端口,就是我们在zookeeper和kafka里面设置好的,具体的,大家可以再复习一下相关设置文件哦。

win10,大数据套装之kafka安装及使用 - zoo22

新的启动消费者的命令

不过,创建consumer的时候,这个命令,似乎在提示这种创建consumer的方法有些落伍了。下面是个新的启动consumer的命令。

cd bin\windows
kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test --new-consumer --from-beginning --consumber.config ../../config/consumer.properties

win10,大数据套装之kafka安装及使用 - zoo23

结论

基本上讲解完毕,整体的感觉就是,又回到了刀耕火种的年代,这命令行敲的.....头晕眼花的。使用老外出品的开源软件,基本上都是这种感觉,这也就是为啥,会有好事者会出gui版本的某某软件的原因。shell下面的这种命令行模式,真心不是一般人能够接受的。

关注大数据,关注苏南大叔。苏南大叔为您带来最新第一手大数据资讯。 https://newsn.net/tag/bigdata/

本站采用创作共用版权协议, 要求署名、非商业用途和相同方式共享。
转载本站内容必须也遵循“署名-非商业用途-相同方式共享”的创作共用协议。
程序如此灵动~》下所有原创文章,如被用于商业用途,请您按规定支付稿费。