博客
关于我
Kafka consumer group位移重设
阅读量:798 次
发布时间:2023-04-02

本文共 2071 字,大约阅读时间需要 6 分钟。

Kafka 0.11.0.0版本新增位移调整功能:使用kafka-consumer-groups.sh脚本

操作前置条件

在使用kafka-consumer-groups.sh脚本调整消费者组位移之前,需确保消费者组状态为inactive,即不处于运行状态。现有版本的新功能仅适用于新版本的消费者。


位移调整流程概述

调整消费者组位移的操作分为三大步骤:

  • 确定主题作用域

    支持以下三种指定方式:

    • --all-topics:为所有主题的所有分区调整位移。
    • --topic t1 --topic t2:指定多个主题的所有分区。
    • --topic t1:0,1,2:为指定主题的特定分区调整位移。
  • 确定位移重设策略

    支持8种调整策略:

    • --to-earliest:调整至分区当前最小位移。
    • --to-latest:调整至分区当前最新位移。
    • --to-current:调整至分区当前位移(无变化)。
    • --to-offset <offset>:指定特定位移值。
    • --shift-by N:位移调整量,可正负值(负值表示向前移动)。
    • --to-datetime <yyyy-MM-ddTHH:mm:ss.xxx>:调整至指定时间点的最早位移。
    • --by-duration <PnDTnHnMnS>:调整至距离当前时间指定时间段的位移。
    • --from-file <file>:从CSV文件读取调整策略。
  • 确定执行方案

    支持三种执行方式:

    • 不加参数:仅显示调整方案,未执行。
    • --execute:执行位移调整。
    • --export:将调整方案生成CSV文件,便于后续使用。

  • 7种位移调整策略的示例

    1. --to-earliest
    bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --group test-group --reset-offsets --all-topics --to-earliest --execute

    所有分区位移重置为0。

    2. --to-latest
    bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --group test-group --reset-offsets --all-topics --to-latest --execute

    所有分区位移调整至最新位置(如1000000)。

    3. --to-offset 500000
    bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --group test-group --reset-offsets --all-topics --to-offset 500000 --execute

    所有分区位移调整至500000。

    4. --to-current
    bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --group test-group --reset-offsets --all-topics --to-current --execute

    位移保持不变(此操作无实际效果)。

    5. --shift-by -100000
    bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --group test-group --reset-offsets --all-topics --shift-by -100000 --execute

    所有分区位移向前移动100000。

    6. --to-datetime 2017-08-04T14:30:00.000
    bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --group test-group --reset-offsets --all-topics --to-datetime 2017-08-04T14:30:00.000 --execute

    所有分区位移调整至2017年8月4日14:30之后的最早位移。

    7. --by-duration PT0H30M0S
    bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --group test-group --reset-offsets --all-topics --by-duration PT0H30M0S --execute

    所有分区位移调整至30分钟前的最早位移(如0)。


    操作示例总结

    通过kafka-consumer-groups.sh脚本,用户可以轻松完成消费者组位移调整。在实际操作中,可根据具体需求选择合适的策略和参数,实现高效的消费者管理。

    转载地址:http://kmefk.baihongyu.com/

    你可能感兴趣的文章
    oracle数据库笔记---oracleweb视图使用流程,及plsql安装
    查看>>
    oracle数据库笔记---pl/sql的基础使用方法
    查看>>
    Transformer 架构解释
    查看>>
    Oracle数据库表空间 数据文件 用户 以及表创建的SQL代码
    查看>>
    oracle数据库零碎---Oracle Merge 使用,表中存在数据就修改,没有数据自动添加
    查看>>
    Oracle数据库验证IMP导入元数据是否会覆盖历史表数据
    查看>>
    Oracle未开启审计情况下追踪表变更记录
    查看>>
    Oracle条件查询
    查看>>
    Oracle查看数据库会话连接
    查看>>
    Oracle查询前几条数据的方法
    查看>>
    oracle树形查询 start with connect by
    查看>>
    oracle毕业论文题目,历届毕业论文申报题目大全.doc
    查看>>
    oracle求助---win7下oracle配置相关疑问Starting Oracle Enterprise Manager 10g Database Control ...发生系统错误 5。
    查看>>
    Oracle流程控制语句
    查看>>
    oracle深度解析检查点
    查看>>
    Oracle游标
    查看>>
    oracle游标数最大数,Oracle 最大连接数 最大游标数
    查看>>
    oracle用户改名
    查看>>
    oracle用户解压不了,PLSQL developer 连接不上64位Oracle 的解决方法
    查看>>
    oracle用户解锁
    查看>>