當前位置:編程學習大全網 - 編程軟體 - 日更挑戰解決Kafka的Offset越界問題(未完)

日更挑戰解決Kafka的Offset越界問題(未完)

最近折騰公司的大數據平臺,遇到了壹個Kafka的消費者消費時無法正常啟動,報 afka.common.OffsetOutOfRangeException 的錯誤。俗稱就是Offset的數組越界。

其實到撰文的時候,問題還未解決,先把之前的思路理壹理。

根據網上的教程,先查看當前我們這個topic有幾個分區,具體命令如下

查出來目前是6個分區(0-5)。同時由於kafka的broker有4個,會發現每個分區都有兩個broker承載數據,其中壹個為leader。

其次看zookeeper中對應的offset位移是多少。這裏比較奇怪的是,我只能在 /brokers/topics/TEST_TOPIC/partitions/0 (0可替換為1-5)中找到offset。而不是如網上說的在consumer/消費者組這個路徑下。另外在以上路徑中,看到值為null,所以嘗試找到正確的offset並重置。

這時通過兩個途徑找,首先是看目錄。從Kafka的配置裏找到log.dirs,再去各個broker中找這個參數指定的目錄,註意不是每個broker都有所有的分區數據,我這邊壹個broker基本有3個分區,或者作為leader,或者作為replica。

這裏其實分辨不出哪個是earliest,哪個是lastest,特別的和第二種方法還不太壹致。

第二個途徑是使用命令,通過 kafka-run-class 命令可以運行壹些Kafka提供的類進行管理。

其中-2是最小值,-1是最大值。

這個運行出來的結果,有些和第壹種方法對不上。

我在zk上使用第二種方法set了offset,但是重啟原來的yarn job,問題還是沒有解決。

(等壹旦解決,第壹時間更新或另發文分享!)

  • 上一篇:數控編程,求大家幫我編壹個程序在線等啊。不用切螺紋謝謝大家了。
  • 下一篇:手機cad看圖王怎麽使用教程
  • copyright 2024編程學習大全網