本篇文章主要对Kafka进行一个入门,文章参考官方文档的QuickStart进行编写。

官方文档寻找

这一节主要讲述Kafka的各个版本的官方文档在何处?进入Kafka官方网站后,界面会入下图所示 :
image.png
GetStarted是当前版本的官方文档。Doc是全部的文档。可以通过选择查看不同版本的官方文档。
image.png

单机安装

1.步骤描述

  • 下载Kafka安装tar包
  • 解压tar包
  • 启动Kafka自带的Zookeeper
  • 启动Kafka

    2.安装明细

    1. #解压tar包
    2. tar -xzf kafka_2.13-3.0.0.tgz
    3. cd kafka_2.13-3.0.0
    4. #启动zk
    5. bin/zookeeper-server-start.sh config/zookeeper.properties
    6. #启动kafka
    7. bin/kafka-server-start.sh config/server.properties

    伪分布式安装

    伪分布式安装就是在同一台Linux主机上,启动3个Kafka实例。

    1.步骤描述

  • 下载并解压Kafka安装包

  • 复制config/server.properties文件3份,并修改其中的配置
  • 分别通过3份server.properties进行启动Kafka

    2.安装明细

  • 三份server.properties文件(server.properties,server-1.properties,server-2.properties) ```shell

    server.properties 文件

    broker.id=0 log.dirs=/tmp/kafka-logs listeners=PLAINTEXT://192.168.2.5:9092 advertised.listeners=PLAINTEXT://192.168.2.5:9092

server-1.properties 文件

broker.id=1 log.dirs=/tmp/kafka-logs-1 listeners=PLAINTEXT://192.168.2.5:9093 advertised.listeners=PLAINTEXT://192.168.2.5:9093

server-2.properties 文件

broker.id=2log.dirs=/tmp/kafka-logs-2 listeners=PLAINTEXT://192.168.2.5:9094 advertised.listeners=PLAINTEXT://192.168.2.5:9094

  1. - 分别使用启动命令启动
  2. ```shell
  3. 在启动了zk后
  4. bin/kafka-server-start.sh config/server.properties
  5. bin/kafka-server-start.sh config/server-1.properties
  6. bin/kafka-server-start.sh config/server-2.properties

使用测试

1.测试步骤

  • 创建一个Topic
  • 启动控制台生产者
  • 启动控制台消费者

    2.操作明细

    ```shell bin/kafka-topics.sh —create —zookeeper localhost:2181 —replication-factor 3 —partitions 3 —topic myTopic

启动生产者

bin/kafka-console-producer.sh —broker-list 192.168.2.5:9092 —topic myTopic

启动消费者

bin/kafka-console-consumer.sh —bootstrap-server 192.168.2.5:9092 —from-beginning —topic myTopic

在生产者窗口发送消息,消费者消息就可以接收到

  1. <a name="xorcy"></a>
  2. # 后台方式启动
  3. 默认启动Kafka的方式会占用控制台,且Kafka自带的zk也是占用一个控制台的,因此,我们需要了解如何后台方式启动。
  4. ```shell
  5. #后台启动ZK
  6. bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
  7. #后台启动Kafka
  8. bin/kafka-server-start.sh -daemon config/server.properties

Kafka Connect

KafkaConnect做的工作是将数据从一个地方转移到另外一个地方,Kafka将自己作为一个中间人。

官方演示

官方实例演示通过sh脚本启动一个Java类,完成的功能是从文件中读取数据发送到Kafka,再从Kafka读取过来存入另一个文件
步骤
1.新建一个test.txt文件
2.通过脚本启动脚本
3.启动控制台消费者

Kakfa Stream

用于实时的计算Kafka中的消息数据并将计算结果也存储在Kafka。