kafka 基本操作命令
kafka版本:kafka_2.11-2.3.0
(已启动kafka服务的前提下
启动命令 ./kafka-server-start.sh -daemon /yang/kafka/config/server.properties 1>/dev/null 2>&1 & )
=使用脚本操作kafka====
使用脚本操作kafka
说明: 索引执行的脚本文件都存放在kafka的bin目录中, 需要先进入bin目录才可以执行
cd /yang/kafka/bin
-1) 创建一个topic:
- topic: 指的是话题, 主题的意思, 在消息发送的时候, 我们需要对消息进行分类, 生产者和消费者需要在同一个topic下, 才可以进行发送和接收
./kafka-topics.sh --create --zookeeper zk01:2181 --replication-factor 1 --partitions 5 --topic order5
-2) 使用Kafka自带一个命令行客户端启动一个生产者,生产数据
./kafka-console-producer.sh --broker-list node01:9092 --topic flptbak
-3) 使用Kafka自带一个命令行客户端启动一个消费者,消费数据 (如果没有指定消费组 默认的消费组id 是和topic名称一样的 指定消费组: --consumer-property group.id=group-xxx)
./kafka-console-consumer.sh --bootstrap-server node01:9092 --topic flptbak
# 该消费语句,只能获取最新的数据,要想历史数据,需要添加选项 --from-beginning
# 指定消费组: --consumer-property group.id=group-xxx
如:./kafka-console-consumer.sh --bootstrap-server node01:9092 --from-beginning --topic order -consumer-property group.id=group-xxx
-4) 查看有哪些topic
./kafka-topics.sh --list --zookeeper zk01:2181
-5) 查看某一个具体的Topic的详细信息
./kafka-topics.sh --describe --topic flptbak --zookeeper zk01:2181
-6) 删除topic
./kafka-topics.sh --delete --topic order --zookeeper zk01:2181
注意:彻底删除一个topic,需要在server.properties中配置delete.topic.enable=true,否则只是标记删除
配置完成之后,需要重启kafka服务。
-7)有哪些消费组 group ID 正在进行消费 (查看所有正在消费的消费组)
./kafka-consumer-groups.sh --bootstrap-server node01:9092 --list
-8) 查看某个消费组的消费情况 (消费者对应所有topic的 offset等)
./kafka-consumer-groups.sh --bootstrap-server node01:9092 --group yang --describe
-9) 获取Kafka每个分区最新Offset的几种方法
./kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list node01:9092 --topic test
-10) 更改指定消费者分组对应topic的offset
前提offset信息保存在topic中(0.9版本以后) (要先停消费端)
./kafka-consumer-groups.sh --bootstrap-server node01:9092 --group mysteel-unify-test --topic flptbak --execute --reset-offsets --to-offset 6718593
参数解析: --bootstrap-server 代表你的kafka集群 你的offset保存在topic中
–group 代表你的消费者分组
–topic 代表你消费的主题
–execute 代表支持复位偏移
–reset-offsets 代表要进行偏移操作
–to-offset 代表你要偏移到哪个位置 是long类型数值,只能比前面查询出来的小
还有其他的–to- ** 方式可以自己验证 本人验证过–to-datetime 没有成功
-11) 修改topic分区数量
./kafka-topics.sh --zookeeper zk01:2181 --alter --topic flptbak --partitions 10
//查看指定toic内所有分区的offset
./kafka-run-class.sh kafka.tools.GetOffsetShell --broker-list node03:9092 --topic flptbak
netstat -anp |grep 9092 | wc -l 查下9092端口连接数有多少