• 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杀掉。

  • 相关阅读:
    ajax专题
    luogu P1346 电车 最短路
    luogu P1462 通往奥格瑞玛的道路 最短路
    luogu P1328 生活大爆炸版石头剪刀布
    luogu P1315 联合权值 枚举
    luogu P1156 垃圾陷阱 背包问题
    luogu P1217 回文质数 枚举
    luogu P3650 滑雪课程设计 枚举
    luogu1209 修理牛棚 贪心
    luogu P1223 排队接水 贪心
  • 原文地址:https://www.cnblogs.com/zzl0916/p/13850030.html
Copyright © 2020-2023  润新知