一、kafka相关概念

kafka是一种高吞吐量的分布式发布订阅消息系统。

·Broker

Kafka集群包含一个或多个服务器,这种服务器被称为broker [5]

·Topic

每条发布到Kafka集群的消息都有一个类别,这个类别被称为Topic。(物理上不同Topic的消息分开存储,逻辑上一个Topic的消息虽然保存于一个或多个broker上但用户只需指定消息的Topic即可生产或消费数据而不必关心数据存于何处)

·Partition

Partition是物理上的概念,每个Topic包含一个或多个Partition.

·Producer

负责发布消息到Kafka broker

·Consumer

消息消费者,向Kafka broker读取消息的客户端。

·Consumer Group

每个Consumer属于一个特定的Consumer Group(可为每个Consumer指定group name,若不指定group name则属于默认的group)。

 

二、如何快速搭建kafka

学会查看用户手册:kafka.apache.org

1.解压文件,使用notepad++对config目录下的两个文件进行编辑。

如何搭建最基础的kafka

(1)zookeeper.properties

如何搭建最基础的kafka

改为zookeeper-data

如何搭建最基础的kafka

(2)server.properties

本文件一共修改三处,第一处:

如何搭建最基础的kafka

改为kafka-logs。

如何搭建最基础的kafka

第二处:

如何搭建最基础的kafka

取消注释,并将localhost处,改为自己的hostname。不要照抄示例,在cmd中输入hostname即可知道本机hostname。

如何搭建最基础的kafka

第三处:

如何搭建最基础的kafka

将localhost改为本机hostname。

如何搭建最基础的kafka

保存以上修改的两个文件。

2.运行zookeeper

在解压的文件下,运行cmd。按住shift,按鼠标右键,选择在此处打开窗口。

输入:

.\bin\windows\zookeeper-server-start.bat.\config\zookeeper.properties

如何搭建最基础的kafka

提示started则为运行成功。在启动了zookeeper后,启动kafka,注意顺序。

3.运行kafka

新建cmd窗口,输入:

.\bin\windows\kafka-server-start.bat.\config\server.properties

如何搭建最基础的kafka

4.建立topics

新建cmd窗口,输入

bin\windows\kafka-topics.bat --create--zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

其中partions后面的数字代表了分区个数;test为topic名字。

如何搭建最基础的kafka

bin/kafka-topics.sh --list --zookeeperlocalhost:2181

可以用来列出topic的名字。

如何搭建最基础的kafka

5.运行producer

新建cmd窗口,输入:

bin\windows\kafka-console-producer.bat--zookeeper localhost:9092 --topic test

如何搭建最基础的kafka

注:如按照官网输入

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

提示—broker-list报错,说明在windows下这个选项不可用,输入bin\windows\kafka-console-producer.bat

提示:有—zookeeper选项,用这个。

6.运行consumer

新建cmd窗口,输入:

bin\windows\kafka-console-consumer.bat--bootstrap-server localhost:9092 --topic test--from-beginning

可以收到producer端输入的内容。

如何搭建最基础的kafka

注意:producer和consumer启动的基础是zookeeper和kafka已成功启动。

 

三、分布式kafka

1.一个zookeeper,运行zookeeper即可

2.多个kafka,kafka.properties在之前基础上,修改一处配置,将localhost修改为zookeeper的hostname。注意:可以这样操作的前提是,几台主机位于同一网段的内网。

如何搭建最基础的kafka

运行kafka,zookeeper端可以监测到连接。

注:如果连接不上,可以尝试ping zookeeper,查看网络是否通畅;查看是否关闭杀毒软件;查看是否关闭防火墙。


四、flume和kafka一起使用

(待整理)

flume解压后,编辑example.conf

zookeeper和kafka节点端一样

如何搭建最基础的kafka

Test为topic名

205-30为zookeeper的hostname

如何搭建最基础的kafka

bbb为kafka为文件目录。

运行flume

bin/flume-ngagent --conf conf --conf-file example.conf –name a1

当bbb文件下有新的文件时,就会立即进行分布式处理,文件后缀会加completed。此时需要打卡kafka的consumer可以看到新存入bbb文件夹下的文件。



相关文章:

  • 2021-11-30
  • 2021-12-13
  • 2021-04-13
  • 2022-12-23
  • 2021-09-11
  • 2021-12-07
  • 2021-11-30
猜你喜欢
  • 2022-02-07
  • 2021-11-29
  • 2022-01-10
  • 2022-12-23
  • 2021-04-13
  • 2021-11-05
  • 2022-12-23
相关资源
相似解决方案