kafka脚本命令

kafka相关命令

环境

操作系统:Linux

kafka版本:2.3.0(kafka_2.11-2.3.0.tgz)

zk_port 默认为 2181,kafka_port 默认为 9092

启动

zookeeper的启动

./zkServer.sh [–config ] {start|start-foreground|stop|restart|status|print-cmd}

zookeeper启动

./zkServer.sh --config ../conf/zoo.cfg start

kafka的启动

./kafka-server-start.sh [-daemon] server.properties [–override property=value]*

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

查看是否启动成功

jps -l

在这里插入图片描述
会有 jps、zookeeper、kafka 三个进程

kafka的停止

./kafka-server-stop.sh …/config/server.properties

./zkServer.sh stop

topic

创建topic

./kafka-topics.sh --zookeeper zk_ip:zk_port --create --topic demo --partitions 10 --replication-factor 1

–zookeeper 指定 zookeeper 的 IP 地址及端口号

–partitions 指定 partition 的数量

–replication-factor 指定数据副本的数量,副本数量不能多于 broker 的数量

查看所有topic列表

./kafka-topics.sh --zookeeper zk_ip:zk_port --list

查看指定topic明细

./kafka-topics.sh --zookeeper zk_ip:zk_port --describe --topic spti-topic

在这里插入图片描述

从第一行可以看到topic名称,Partition数量,ReplicationFactor副本数量。

从第二行开始,显示的是每个 partition 的状况,分别表示:topic名字、partition编号、此 partition 的 leader broker 的编号、副本集合、ISR集合。

补充:AR、ISR、OSR 介绍

  • 简单来说,分区中的所有副本统称为 AR (Assigned Replicas)。所有与leader副本保持一定程度同步的副本(包括leader副本在内)组成 ISR (In Sync Replicas)。 ISR 集合是 AR 集合的一个子集。消息会先发送到leader副本,然后follower副本才能从leader中拉取消息进行同步。同步期间,follow副本相对于leader副本而言会有一定程度的滞后。前面所说的 ”一定程度同步“ 是指可忍受的滞后范围,这个范围可以通过参数进行配置。于leader副本同步滞后过多的副本(不包括leader副本)将组成 OSR (Out-of-Sync Replied)由此可见,AR = ISR + OSR。正常情况下,所有的follower副本都应该与leader 副本保持 一定程度的同步,即AR=ISR,OSR集合为空
  • leader副本负责维护和跟踪 ISR 集合中所有follower副本的滞后状态,当follower副本落后太多或失效时,leader副本会把它从 ISR 集合中剔除。如果 OSR 集合中所有follower副本“追上”了leader副本,那么leader副本会把它从 OSR 集合转移至 ISR 集合。默认情况下,当leader副本发生故障时,只有在 ISR 集合中的follower副本才有资格被选举为新的leader,而在 OSR 集合中的副本则没有任何机会(不过这个可以通过配置来改变)。

修改topic

增加 partition的数量(partition的数量只允许增不允许减),将 partition 增加到20:

./kafka-topics.sh --zookeeper zk_ip:zk_port --alter --topic demo --partitions 20

删除topic

删除之前,需要先将server.properties文件中的配置delete.topic.enable=true更改一下,否则执行删除命令不会生效。

./kafka-topics.sh --zookeeper zk_ip:zk_port --describe --topic demo

Producer

Producer 生产消息

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

Consumer

Consumer 消费消息

./kafka-console-consumer.sh --bootstrap-server localhost:9092 --from-beginning --topic demo

其他参数:

–from-beginning 从第一条消息开始消费
–group 消费者组
–offset

查看所有的消费者组

./kafka-consumer-groups.sh --bootstrap-server localhost:9092 --list

查看指定消费者组明细

./kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group group_1

其中依次展示 group 名称、消费的 topic 名称、partition id、consumer group 最后一次提交的 offset、最后提交的生产消息offset、消息堆积的条数(消费 offset 与生产 offset 之间的差值)、当前消费 topic-partition 的 group 成员 id (不一定包含hostname)

TODO:zookeeper相关命令

查看broker状态等等

todo: kafka可视化管理工具

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值