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

posted @ 2020-10-21 00:41  zzl0916  阅读(104)  评论(0编辑  收藏  举报