天天看点

Kafka入门级(一) Windows环境下安装

简单说明什么是Kafka

        Apache kafka是消息中间件的一种,是用于构建实时数据管道和流应用程序。具有横向扩展,容错,wicked fast(变态快)等优点,下面咱们就举个例子来说明下,它究竟是干啥用的!

       例如:生产者消费者,生产者生产鸡蛋,消费者消费鸡蛋,生产者生产一个鸡蛋,消费者就消费一个鸡蛋,假设消费者消费鸡蛋的时候噎住了(系统宕机了),生产者还在生产鸡蛋,那新生产的鸡蛋就丢失了。再比如生产者很强劲(大交易量的情况),生产者1秒钟生产100个鸡蛋,消费者1秒钟只能吃50个鸡蛋,那要不了一会,消费者就吃不消了(消息堵塞,最终导致系统超时),消费者拒绝再吃了,”鸡蛋“又丢失了,这个时候我们放个篮子在它们中间,生产出来的鸡蛋都放到篮子里,消费者去篮子里拿鸡蛋,这样鸡蛋就不会丢失了,都在篮子里,而这个篮子就是”kafka“。鸡蛋其实就是“数据流”,系统之间的交互都是通过“数据流”来传输的(就是tcp、https什么的),也称为报文,也叫“消息”。消息队列满了,其实就是篮子满了,”鸡蛋“ 放不下了,那赶紧多放几个篮子,其实就是kafka的扩容。

后面大家会看到一些关于kafka的名词,比如topic、producer、consumer、broker,我这边来简单说明一下 :
  • producer

    :生产者,就是它来生产“鸡蛋”的。
  • consumer

    :消费者,生出的“鸡蛋”它来消费。
  • topic

    :你把它理解为标签,生产者每生产出来一个鸡蛋就贴上一个标签(topic),消费者可不是谁生产的“鸡蛋”都吃的,这样不同的生产者生产出来的“鸡蛋”,消费者就可以选择性的“吃”了。
  • broker

    :就是篮子了

 各位现在大概知道kafka是干什么的了吧,它就是那个"篮子"。接下来我们就在Windows环境下安装kafka,笔者的环境是Windows8.1,jdk1.8.0_191版本,废话不多说,下面我就开始介绍啦..........

JDK的安装

  • 下载地址:https://www.oracle.com/technetwork/java/javase/downloads/index.html
  • 环境变量的配置:“我的电脑”-右键-“属性”-(左侧)高级系统设置-(弹窗右下角)环境变量配置
    1. 创建JAVA_HOME,输入jdk的安装目录,比如: C:\Program Files (x86)\Java\jdk1.8.0_101
    2. 创建CLASSPATH,输入 .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar(注意最前面有一点)
    3. 编辑Path把值放到最前边  %JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;      
  • 运行cmd,输入
    java -version
               
    如出现一下界面信息,即JDK环境配置成功!
    Kafka入门级(一) Windows环境下安装

 Zookeeper的安装

  • 下载地址:http://mirror.bit.edu.cn/apache/zookeeper/,注意下载版本为 apache-zookeeper-3.5.5-bin.tar.gz
  • 下载后,解压放在目录E:\kafka(本文所用的目录)下,关于zookeeper的目录,路径中最好不要出现空格、中文,比如E:\Program Files,尽量别用,运行脚本时会出现问题
  • 进入解压后zookeeper所在的文件目录,例如本文的:E:\kafka\apache-zookeeper-3.5.5\conf
  • 将"zoo_sample.cfg"重命名为"zoo.cfg"
  • 打开zoo.cfg文件编辑,将dataDir=/tmp/zookeeper修改为dataDir=E:\\kafka\\apache-zookeeper-3.5.5\\data(本机安装zookeeper的文件目录),需要注意:路径要么是"/"分割,要么是转义字符"\\",这样会生成正确的路径(层级,子目录),否则会出错
  • Kafka入门级(一) Windows环境下安装
  • 环境变量配置,参考上述JDK环境变量配置

        1.  系统变量中添加ZOOKEEPER_HOME=E:\kafka\apache-zookeeper-3.5.5

        2.  编辑系统变量中的path变量,增加%ZOOKEEPER_HOME%\bin

  • 运行cmd,输入
    zkserver
               
    Kafka入门级(一) Windows环境下安装

如出现上图所示的界面,则恭喜你已经成功安装zookeeper了!!保持运行状态,不要关闭!!!!

笔者在尝试安装zookeeper的时候,由于版本下载的是 apache-zookeeper-3.5.5.tar.gz,所有配置完成之后,运行zkserver出现了”找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMain“的错误,后面替换apache-zookeeper-3.5.5-bin.tar.gz版本后,运行命令成功启动!所以各位网友一定要下载对应的版本,不然就会和我一样哦!!!!!

Kafka的安装

  • 下载地址:http://kafka.apache.org/downloads ,注意下载Binary downloads类型,不要下载源文件,这种方便使用。下载后,解压放在相应的目录下, 路径中最好不要出现空格、中文
    Kafka入门级(一) Windows环境下安装
  • 进入kafka配置文件所在目录 E:\kafka\kafka_2.12-2.3.0\config
  • 找到配置文件 server.properties 并进行编辑:log.dirs=/tmp/kafka-logs  修改成自己安装的目录,如:log.dirs=E:\\kafka\\kafka_2.12-2.3.0\\kafka-logs,需要注意:路径要么是"/"分割,要么是转义字符"\\",这样会生成正确的路径(层级,子目录),否则会出错
  • 在server.properties文件中,zookeeper.connect=localhost:2181代表kafka所连接的zookeeper所在的服务器IP以及端口,可根据需要更改。本文在同一台机器上使用,故不用修改
  • kafka会按照默认配置,在9092端口上运行,并连接zookeeper的默认端口2181
  • 运行cmd,进入到kafka的安装目录
    Kafka入门级(一) Windows环境下安装

      接着运行

.\bin\windows\kafka-server-start.bat .\config\server.properties 
           
Kafka入门级(一) Windows环境下安装

      到目前为止,zookeeper以及kafka都已正确运行。保持运行状态,不要关闭!!!!

   Kafka创建主题 

  • 创建主题,命名为"theme",replicationfactor=1(因为只有一个kafka服务器在运行)。可根据集群中kafka服务器个数来修改replicationfactor的数量,以便提高系统容错性
  • 运行cmd,进入到kafka的安装目录下的bin/windows目录下
    Kafka入门级(一) Windows环境下安装

       接着运行

kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic theme
           
Kafka入门级(一) Windows环境下安装

       出现上述图片的界面,即创建主题成功,此时该窗口可以暂时关闭!

创建生产者 Producer

  • 运行cmd,进入到kafka的安装目录下的bin/windows目录下
  • 运行命令,启动producter
    kafka-console-producer.bat --broker-list localhost:9092 --topic theme
               
    Kafka入门级(一) Windows环境下安装

       出现上述图片的界面,即创建生产者成功,此时该窗口可以不能关闭!!! 

 创建消费者 Consumer

  • 运行cmd,进入到kafka的安装目录下的bin/windows目录下
  • 运行命令,启动consumer
    kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic theme--from-beginning
               
    Kafka入门级(一) Windows环境下安装

      出现上述图片的界面,即创建消费者成功,此时该窗口可以不能关闭!!! 

      现在生产者、消费者均已成功创建,在producer命令行窗口中任意输入内容,回车在consumer命令行窗口中即可看到相应的内容,其中包括历史消费的消息也能够看到,如aa,vv等就是之前生产者生产的消息:

Kafka入门级(一) Windows环境下安装

       到这里,笔者就将自己亲自在Window下安装kafka的全部步骤分享给大家了,如有不对之处,恳请各位大佬积极指正,本人学疏才浅,您的点点滴滴指导就是我进步的阶梯,谢谢你们啦!!!!