zoukankan      html  css  js  c++  java
  • kafka单机环境搭建及其基本使用

      最近在搞kettle整合kafka producer插件,于是自己搭建了一套单机的kafka环境,以便用于测试。现整理如下的笔记,发上来和大家分享。后续还会有kafka的研究笔记,依然会与大家分享!

    1 kafka环境搭建

    1.1 kafka单机环境搭建

    (1)、解压kafka_2.11-1.1.0.tgz,得到“kafka_2.11-1.1.0”文件夹。

    (2)、kafka需要安装zookee使用,但kafka集成zookeeper,在单机搭建时可直接使用。使用需配置kafka_2.11-1.1.0/config 下的“zookeeper.properties”。

    (3)、配置“zookeeper.properties”。修改dataDir和clientPort。前者是快照存放地址(自己随意配置),后者是客户端连接zookeeper服务的端口。

    (4)、配置kafka_2.11-1.1.0/config下的“server.properties”,修改log.dirs和zookeeper.connect。前者是日志存放文件夹,后者是zookeeper连接地址(端口和clientPort保持一致)。

    到此,kafka的单机环境就搭建成功了。

    2 kafka的相关命令

    开启kafka自带zookeeper:

    前台运行:

    bin/zookeeper-server-start.sh config/zookeeper.properties

    后台运行:

    nohup bin/zookeeper-server-start.sh config/zookeeper.properties > zookeeper-run.log 2>&1 &

    (关于后台启动命令,可看我的另一篇博客:《Linux后台运行进程》)

    开启kafka:

    前台运行:

    bin/kafka-server-start.sh config/server.properties

    后台运行:

    nohup bin/kafka-server-start.sh config/server.properties > kafka-run.log 2>&1 &

     

    创建kafka主题:

    bin/kafka-topics.sh --create --zookeeper 10.45.xx.xx:2191 --replication-factor 1 --partitions 1 --topic test

     

    显示kafka所有主题:

    bin/kafka-topics.sh -list -zookeeper 10.45.xx.xx:2191

     

    创建kafka生产者:

    bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test

     

    创建kafka消费者:

    bin/kafka-console-consumer.sh --zookeeper 10.45.xx.xx:2191 --topic test --from-beginning

    解释:

    --zookeeper:后面接的是你配置的zookeeper地址

    --broker-list:默认端口为9092.可自行更改

    3 kafka的简单使用

    (1)、进入” kafka_2.11-1.1.0”文件夹,运行”开启kafka自带zookeeper”命令(最好用后台模式)。记得进入日志中,检查下启动是否有错误。

    (2)、确认zookeeper启动成功后,继续在当前目录,运行“开启kafka”命令(依然用后台模式)。记得检查日志。

    (3)、确认两者启动完毕后,运行“创建kafka主题”命令。显示红框中内容,即为创建成功。

    (4)、继续在此目录下,运行“创建kafka生产者”的命令。kafka默认端口是9092。(图片里我自己改成了9192,没改的直接用9092端口)。如图,我发送了”qpf_test”的消息。

    (5)、另起一个终端,仍在相同目录下运行“创建kafka消费者”的命令。消费者会收到生产者发来的消息。如图,我接收到了之前发的” qpf_test”的消息。

  • 相关阅读:
    测试 多线程 实现 callable 带返回值
    给定一个 hashMap 最终输出最大值的键
    正则判断输入的字符(英文、数字、空格、其他)的个数
    当返回值为json字符串时 如何获得其中的json数组
    thread run 和 start 的区别
    docker 构建dockerfile
    jsonp 跨域
    springsession 实现session 共享
    通过反射获得 spring 的 RequestMapping value值
    redis 集群搭建 以及 报错解决
  • 原文地址:https://www.cnblogs.com/qpf1/p/9161742.html
Copyright © 2011-2022 走看看