当前位置:   article > 正文

centos7 安装部署kafka_centoskafka安装配置教程

centoskafka安装配置教程

一、下载

官网地址: https://kafka.apache.org/downloads
kafka 在 2.8 版本开始脱离 zookeeper,本文示例版本为 2.7.2。
kafka
选择图中标记的版本下载。

  • kafka-2.7.2.src.tgz 是源码格式,需要编译。
  • kafka_2.12-2.7.2.tgz、kafka_2.13-2.7.2.tgz 是二进制格式,其中 2.12 和 2.13 代表 scala 的版本。

二、解压

将下载的文件放到linux的 /usr/local 目录下,然后解压:

cd /usr/local
tar -zxvf kafka_2.13-2.7.2.tgz
  • 1
  • 2

三、配置

进入 kafka 的 config 目录下

cd /usr/local/kafka_2.12-2.7.2/config
ll
  • 1
  • 2

kafka的配置文件目录

  • consumer.properties 是消费者的相关配置
  • producer.properties 是生产者的相关配置
  • server.properties 是 kafka 服务的配置
  • zookeeper.properties 是 zookeeper 的相关配置
    • zookeeper 中记录kafka的broker等信息

修改 server.properties 的配置。

vim /usr/local/kafka_2.12-2.7.2/config/server.properties
  • 1

kafka server.properties 配置
kafka server.properties 配置
修改 zookeeper.properties 的配置

vim /usr/local/kafka_2.12-2.7.2/config/zookeeper.properties
  • 1

kafka zookeeper配置
修改完成保存退出

四、启动

进入 kafka 的安装目录

cd /usr/local/kafka_2.12-2.7.2/
  • 1

启动 zookeeper

./bin/zookeeper-server-start.sh -daemon config/zookeeper.properties
  • 1

启动 kafka

./bin/kafka-server-start.sh -daemon config/server.properties
  • 1

查看是否启动成功

jps -l
或
ps -ef | grep zookeeper
ps -ef | grep kafka
  • 1
  • 2
  • 3
  • 4

在这里插入图片描述

五、kafka 操作

kafka/bin 目录:
kafka /bin 目录
kafka 整体有三大模块,分别为生产者producer、消费者consumer 和主题topic,其中 topic 是保存在kafka集群中的,producer 和 consumer 向集群中的 topic 中添加 events 以及消费 events,而针对这三大模块,在kafka的bin目录下,分别有对应的可执行脚本。

5.1 kafka-topics.sh

参数说明
–bootstrap-server <String: server to connect to>连接的kafka的broker的主机名称和端口号
–topic <String: topic>操作的topic的名称
–create创建topic
–delete删除主题
–alter修改主题
–list查看所有主题
–describe查看主题详细描述
–partitions <Integer: # of partitions>设置分区数
–replication-factor <Integer:replication factor>分区副本数,一般跟kafka节点数相同
–config <String: name=value>更新系统默认的配置

使用 topic 控制台创建一个 topic

cd /usr/local/kafka_2.12-2.72/
./bin/kafka-topics.sh --bootstrap-server loaclhost:9092 --create --topic testTopic --partitions 1 --replication-factory 1
	# --bootstrap-server 表示要连接到哪台机器上
	# --create 表示要创建一个 topic
	# --topic 表示要创建的topic的名称,这里是 testTopic
	# --partitions 表示分区数
	# --replication-factory 表示副本数,不能大于 kafka 的节点数
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

5.2 kafka-console-consumer.sh

使用 consumer 控制台订阅 topic

cd /usr/local/kafka_2.12-2.72/
./bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic testTopic
	# --from-beginning 消费者订阅topic之前,生产者如果已经发布了一个event,这时消费者是拿不到这个event的,如果想要拿到之前已经发布的event,就加上该参数。
  • 1
  • 2
  • 3

5.3 kafka-console-producer.sh

使用 producer 控制台发布 event

cd /usr/local/kafka_2.12-2.72/
./bin/kafka-console-producer.sh --bootstrap-server localhost:9092 --topic testTopic
	# 在箭头后输入要发送的 event,每行代表一个 event
  • 1
  • 2
  • 3

在 producer 中发布的 event,topic 的订阅者会接收到。
生产者发送event
消费者接收到event

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/557386
推荐阅读
相关标签
  

闽ICP备14008679号