zoukankan      html  css  js  c++  java
  • kafka

    赵志龙:生產者
    ./kafka-console-producer.sh --broker-list localhost:9092 --topic test

    赵志龙:消費者
    ./kafka-console-consumer.sh --bootstrap-server 192.168.1.199:9092 --topic test

    1. ./kafka-topics.sh --list --zookeeper localhost:2181

    删除创建的topic

    1. 命令:在kafka 目录下bin目录下执行:
    2.  
      ./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test test是topic名字可以随便换哦。

    查询创建的top主题 出现test则为正常

    /usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties &

    /usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties &

    1. #关闭zookeeper
    2.  
      /usr/local/kafka/bin/zookeeper-server-stop.sh /usr/local/kafka/config/zookeeper.properties &
    3.  
      sleep #默默等3秒后执行
    4.  
      #关闭kafka
    5.  
      /usr/local/kafka/bin/kafka-server-stop.sh /usr/local/kafka/config/server.properties &

    /usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties &
    2509 2020-10-21 10:20:31 /usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/server.properties &
    2510 2020-10-21 10:22:08 cd /usr/local/kafka
    2511 2020-10-21 10:22:13 cd bin/
    2512 2020-10-21 10:22:39 ./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test
    2513 2020-10-21 10:23:30 ./kafka-topics.sh --list --zookeeper localhost:2181
    2514 2020-10-21 10:24:18 ./kafka-topics.sh --delete --zookeeper localhost:2181 --topic test
    2515 2020-10-21 10:25:35 ./kafka-console-producer.sh --broker-list localhost:9092 --topic test
    2516 2020-10-21 10:26:53 ./kafka-console-producer.sh --broker-list 172.17.0.5:9092 --topic test
    2517 2020-10-21 10:28:55 ./kafka-topics.sh --create --zookeeper 172.17.0.5:2181 --replication-factor 1 --partitions 1 --topic test
    2518 2020-10-21 10:29:44 ./kafka-topics.sh --list --zookeeper localhost:2181
    2519 2020-10-21 10:30:14 ./kafka-topics.sh --list --zookeeper 172.17.0.5:2181
    2520 2020-10-21 10:30:37 ./kafka-topics.sh --list --zookeeper localhost:2181
    2521 2020-10-21 10:30:47 ./kafka-topics.sh --create --zookeeper 172.17.0.5:2181 --replication-factor 1 --partitions 1 --topic test1
    2522 2020-10-21 10:30:55 ./kafka-topics.sh --create --zookeeper 172.17.0.5:2181 --replication-factor 1 --partitions 1 --topic test2
    2523 2020-10-21 10:31:03 ./kafka-topics.sh --list --zookeeper localhost:2181
    2524 2020-10-21 10:31:33 ./kafka-console-producer.sh --broker-list localhost:9092 --topic test
    2525 2020-10-21 10:31:57 ./kafka-console-producer.sh --broker-list 172.17.0.5:9092 --topic test
    2526 2020-10-21 10:35:47 history

    今天来安装kafka 安装kafka前台必须安装zookeeper 不会安装请移步:点我快速进入安装zookeeper文章

    一、安装kafka

    下载kafka两种方式

    1、手动下载 下载地址:http://kafka.apache.org/downloads

    file

    下载好了然后上传服务器(不在这里赘述。前两个文章都有!)

    2、也可以用命令下载(直接下载到服务器哦!):

    file

    命令:wget http://mirrors.hust.edu.cn/apache/kafka/2.0.0/kafka_2.12-2.0.0.tgz
    

    二、解压kafka:

    file

    命令:tar -xzvf kafka_2.12-2.0.0.tgz(文件名可以更换哦!)
    

    三、修改server.properties文件

    file

    在config目录下输入命令:vi server.properties
    

    修改内容为:

    file

    1.  
      server.properties修改 内容如下:可直接复制粘贴。
    2.  
      broker.id=0
    3.  
      port=9092 #端口号
    4.  
      host.name=localhost #单机可直接用localhost
    5.  
      log.dirs=/DATA/kafka/kafka_2.12-2.0.0/log #日志存放路径可修改可不修改
    6.  
      zookeeper.connect=localhost:2181 #zookeeper地址和端口,单机配置部署,localhost:2181

    由于我修改了日志存放地址 我需要创建一个文件夹

    file

    命令:直接在kafka目录下输入:mkdir log
    

    四、修改zookeeper.properties文件

    file

    1.  
      进入kafka目录下 config目录下输入命令:vi zookeeper.properties
    2.  
       
    3.  
      修改内容为:
    4.  
      dataDir=/DATA/kafka/kafka_2.12-2.0.0/zookeeper/data/dataDir #zookeeper数据目录 (可以修改可以不修改)
    5.  
      dataLogDir=/DATA/kafka/kafka_2.12-2.0.0/zookeeper/data/dataLogDir #zookeeper日志目录 (可以修改可以不修改)
    6.  
      clientPort=2181
    7.  
      maxClientCnxns=100
    8.  
      tickTime=2000
    9.  
      initLimit=10

    由于我修改了默认的数据目录地址和日志目录需要创建文件夹如下图:

    file

    五、修改完之后就可以启动zookeeper和kafka了。直接敲命令感觉有些low呀。弄一个脚本命令吧: 启动脚本:

    file

    1.  
      进入kafka目录下 输入命令:vi kafkaStart.sh
    2.  
       
    3.  
      添加内容为:
    4.  
      #!/bin/bash
    5.  
      #启动zookeeper
    6.  
      /DATA/kafka/kafka_2.12-2.0.0/bin/zookeeper-server-start.sh /DATA/kafka/kafka_2.12-2.0.0/config/zookeeper.properties &
    7.  
      sleep 3 #默默等3秒后执行
    8.  
      #启动kafka
    9.  
      /DATA/kafka/kafka_2.12-2.0.0/bin/kafka-server-start.sh /DATA/kafka/kafka_2.12-2.0.0/config/server.properties &
    10.  
       

    添加脚本执行权限:

    file

    1.  
      在刚创建的脚本目录许下执行以下命令
    2.  
      chmod +x kafkastart.sh(启动脚本名称)

    六、启动kafka

    1、先启动zookeeper。

    file

     启动命令:sh $zookeeper_home/bin/zkServer.sh start 
    

    2、启动kafka

    file

    在kafka目录下输入 启动脚本命令: ./kafkaStart.sh
    

    七、创建topic 出现Created topid test 则创建成功

    file

    1.  
      命令:在kafka 目录下bin目录下执行:
    2.  
      ./kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test test是topic名字可以随便换哦。

    查询创建的top主题 出现test则为正常

    file

    1.  
      命令:在kafka 目录下bin目录下执行:
    2.  
      ./kafka-topics.sh --list --zookeeper localhost:2181

    删除创建的topic

    file

    1.  
      命令:在kafka 目录下bin目录下执行:
    2.  
      ./kafka-topics.sh --delete --zookeeper localhost:2181 --topic 要删除的topic名称

    八、测试生成者(test topic):

    file

    1.  
      命令:在kafka 目录下bin目录下执行:
    2.  
      ./kafka-console-producer.sh --broker-list localhost:9092 --topic test(要启动生成者的topic名称)

    九、测试消费者 启动另一个xsheel窗口 这样效果更明显哦!(test topic):

    file

    1.  
      命令:在kafka 目录下bin目录下执行:
    2.  
      ./kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

    十、生产者发送消息:

    file

    十一、消费者消费消息:

    file

    发送完消息消费者会变成感叹号哦!点击查看输入内容已经打印控制台证明消费成功。

    file

    十二、到此结束kafka单机版本就集成了哦。我们来停止kafka网上有很多脚本 你们可以参考一下

    关闭脚本:

    file

    1.  
      进入kafka目录下 输入命令:vi kafkaStop.sh
    2.  
      #!/bin/bash
    3.  
      #关闭zookeeper
    4.  
      /DATA/kafka/kafka_2.12-2.0.0/bin/zookeeper-server-stop.sh /DATA/kafka/kafka_2.12-2.0.0/config/zookeeper.properties &
    5.  
      sleep 3 #默默等3秒后执行
    6.  
      #关闭kafka
    7.  
      /DATA/kafka/kafka_2.12-2.0.0/bin/kafka-server-stop.sh /DATA/kafka/kafka_2.12-2.0.0/config/server.properties &
    8.  
       

    关闭命令:

    关闭kafka:

    1.  
      在kafka目录下执行
    2.  
      ./kafkaStop.sh

    关闭zookeeper

    sh $zookeeper_home/bin/zkServer.sh stop 
    

    但是他会报没有启动着zookeeper和kafka

    file

    我们ps-ef | grep kafka 一下你会发现还在启动着。

    file

    上面的方法我没成功。你们可以测试一下。用最粗暴的方法把。

    file

    1.  
      ps -ef | grep kafka
    2.  
      kill -9 kafka进程号
    3.  
      ps -ef | grep zookeeper
    4.  
      kill -9 zookeeper进程号

    注意:一定要先关闭kafka在关闭zookeeper !!! 如果先关闭zookeeper kafka会一直去连接zookeeper服务 进入死循环了。 如果进入死循环有两种解决办法:

    1、重启服务

    1.  
      shutdown -h 10 #计算机将于10分钟后关闭,且会显示在登录用户的当前屏幕中
    2.  
      shutdown -h now #计算机会立刻关机
    3.  
      shutdown -h 22:22 #计算机会在这个时刻关机
    4.  
      shutdown -r now #计算机会立刻重启
    5.  
      shutdown -r +10 #计算机会将于10分钟后重启
    6.  
      reboot #重启
    7.  
      halt #关机

    2、新打开一个xsheel窗口 然后把kafka杀掉。

  • 相关阅读:
    Swizzle在OC问题排查中的应用
    MacOS中系统提供的音频单元
    Mac catalyst 使用iOS-AudioUnit的音频采集、播放
    删除单向链表中的某一个节点
    C语言的的free和c++的delete的区别
    Mac下使用源码编译安装TensorFlow CPU版本
    ROC曲线与AUC值
    Linux中如何产生core文件?
    更改Linux默认栈空间的大小
    互信息(Mutual Information)
  • 原文地址:https://www.cnblogs.com/zzl0916/p/13850030.html
Copyright © 2011-2022 走看看