zoukankan      html  css  js  c++  java
  • windows环境安装kafka


    安装kafka之前先安装JDK.....

    一:安装Zookeeper 
    Kafka的运行依赖于Zookeeper,所以在运行Kafka之前我们需要安装并运行Zookeeper 

    1:下载安装文件:https://download.csdn.net/download/weixin_33446857/10624824

    2:解压文件(本文解压到 H:JAVAyingyongkafka) 

    3:打开H:JAVAyingyongkafkazookeeper-3.4.6conf,把zoo_sample.cfg重命名成zoo.cfg

    更改前:


    更改后:


    4: 在任意文本编辑器(如notepad)中打开zoo.cfg,修改dataDir保存路径

    如:dataDir=H:/JAVA/yingyong/kafka/zookeeper-3.4.6/logs

    或者 dataDir=H:\JAVA\yingyong\kafka\zookeeper-3.4.6\logs

    (路径根据自己实际需要设置)

    注意:路径要么是"/"分割,要么是转义字符"\",这样会生成正确的路径(层级,子目录)。

    默认端口是2181,如果需要更改也可以在zoo.cfg里面修改  (本文未做修改)

    clientPort=2181

    更改前:


    更改后:


    5: 添加系统变量:ZOOKEEPER_HOME= H:JAVAyingyongkafkazookeeper-3.4.6

    (路径根据自己实际更改)

    编辑path系统变量,添加路径:%ZOOKEEPER_HOME%in

    6:打开cmd,输入zkServer,运行Zookeeper。

    7:命令行提示如下:说明本地Zookeeper启动成功

    恭喜,Zookeeper已经安装完成,已在2181端口运行。

    注意:不要关了这个(cmd)窗口

    二:安装并运行Kafka 
    1:下载地址:https://download.csdn.net/download/weixin_33446857/10624845

    2:解压文件(本文解压到 H:JAVAyingyongkafka)

    3:进入kafka配置文件所在目录,H:JAVAyingyongkafkakafka_2.11-0.10.0.1config,使用任意文本编辑器(如notepad)中打开

    server.properties文件,

    将log.dirs=/tmp/kafka-logs更改为:

    log.dirs=H:/JAVA/yingyong/kafka/kafka_2.11-0.10.0.1/kafka-logs

    或者

    log.dirs=H:\JAVA\yingyong\kafka\kafka_2.11-0.10.0.1\kafka-logs

    同样注意:路径要么是"/"分割,要么是转义字符"\",这样会生成正确的路径(层级,子目录)。

    4:在server.properties文件中,zookeeper.connect=localhost:2181代表kafka所连接的zookeeper所在的服务器IP以及端口,可根据需要更改。本文在同一台机器上使用,故不用修改。

    5:kafka会按照默认配置,在9092端口上运行,并连接zookeeper的默认端口2181。

    三:运行kafka
    提示:请确保启动kafka服务器前,Zookeeper实例已经在运行,因为kafka的运行是需要zookeeper这种分布式应用程序协调服务。

    1:打开cmd,进入kafka安装目录,H:JAVAyingyongkafkakafka_2.11-0.10.0.1

    2:在命令行中输入:.inwindowskafka-server-start.bat .configserver.properties   回车。

    如果出现:

    解决:在kafka安装目录中找到binwindows目录中的kafka-run-class.bat中,加" "号,如下
    修改前: 
    set COMMAND=%JAVA% %KAFKA_HEAP_OPTS% %KAFKA_JVM_PERFORMANCE_OPTS% %KAFKA_JMX_OPTS% %KAFKA_LOG4J_OPTS% -cp %CLASSPATH% %KAFKA_OPTS% %* 

    修改后: 

    set COMMAND=%JAVA% %KAFKA_HEAP_OPTS% %KAFKA_JVM_PERFORMANCE_OPTS% %KAFKA_JMX_OPTS% %KAFKA_LOG4J_OPTS% -cp "%CLASSPATH%" %KAFKA_OPTS% %*

    保存完成后,再次执行  .inwindowskafka-server-start.bat .configserver.properties

    正常情况 如下图:

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

     
    重要(操作日志的处理):
    kafka启动后,在kafka安装目录下有个logs目录,里面默认生成一堆操作日志,而且会不断生成不同时间戳的操作日志。(这样看起来真心很乱):

    这是因为,启动的时候是会默认使用到config目录下log4j.properties文件中的配置

    找到config下的log4j.properties

    编辑log4j.properties,将路径更改下即可,这样就可以归档在一个文件夹下边了,路径根据自己喜好定义:

    当以后再启动kafka时,会在kafka安装目录下创建start-logs目录,里面存放日志。

    另外如何消除不断生成日志的问题,就是同一天的不同时间会不停生成。

    修改这里,还是在log4j.properties中:

    本身都为trace,字面理解为会生成一堆跟踪日志,将其改为INFO即可。

    测试:
    (1):创建主题
    ①创建主题,命名为"test20190916",replicationfactor=1(因为只有一个kafka服务器在运行)。可根据集群中kafka服务器个数来修改replicationfactor的数量,以便提高系统容错性等。

    ②在G:kgdxkjyingyongkafka_2.11-0.10.0.1kafka_2.11-0.10.0.1inwindows目录下打开新的命令行(cmd)

    ③输入命令:

    kafka-topics.bat --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test20190916

    执行完毕之后,此窗口可以关闭。

    (2):创建生产者(producer)和消费者(consumer)
    ①在G:kgdxkjyingyongkafka_2.11-0.10.0.1kafka_2.11-0.10.0.1inwindows目录下打开新的命令行(cmd)。

    ②输入命令,启动生产者:

    kafka-console-producer.bat --broker-list localhost:9092 --topic test20190916

    该窗口不要关闭。

    ③同样在该目录下打开新的命令行。

    ④输入命令,启动消费者:

    kafka-console-consumer.bat --zookeeper localhost:2181 --topic test20190916 

    该窗口不要关闭

    现在生产者、消费者均已创建完成。

    ⑤在生产者命令行窗口中任意输入内容,回车  在消费命令行窗口中即可看到相应的内容。

  • 相关阅读:
    Activity之间的数据传递
    解析JSON
    使用HTTP协议访问网路
    WebView的初体验
    Alarm机制用于定时服务
    IntentService和Service执行子线程对比
    前台服务
    Android四大组件之服务
    异步消息处理机制,UI更新
    Git学习
  • 原文地址:https://www.cnblogs.com/muliu/p/12342137.html
Copyright © 2011-2022 走看看