centos7 安装部署kafka

一、下载

官网地址: 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

三、配置

进入 kafka 的 config 目录下

cd /usr/local/kafka_2.12-2.7.2/config
ll

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

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

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

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

四、启动

进入 kafka 的安装目录

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

启动 zookeeper

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

启动 kafka

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

查看是否启动成功

jps -l
或
ps -ef | grep zookeeper
ps -ef | grep kafka

在这里插入图片描述

五、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 的节点数

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,就加上该参数。

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

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

  • 19
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yax1n9

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值