1. 程式人生 > >kafka參數在線修改

kafka參數在線修改

lte log 歷史 top 指定 覆蓋 出現 保留 part

當kafka集群單個節點出現磁盤滿了,需要清理歷史topic數據;方法如下

1): 停掉kafka進程,將kafka的server.properties中的log.retention.hours=1/60; 將日誌數據保留1分鐘

或者

在不用停掉kafka進程的情況下執行:

kafka-configs.sh –zookeeper localhost:2181 –entity-type topics –entity-name test –alter –add-config retention.ms=86400000

#test 為topic名稱
#retention.ms 保留時間24小時

這樣就可以保證當前消費者不會再消費阻塞的數據了

首先是可以在配置文件中設置全局性的topic配置參數,其次是可以在創建topic時使用 –confi設置一個或多個自定義的配置。自定義的配置項優先級別會高於全局配置。

topic 參數設置如下:

技術分享圖片

技術分享圖片

技術分享圖片

這是在創建一個topic時自定義了最大的消息字節數和消息持久化參數:

> bin/kafka-topics.sh –zookeeper localhost:2181 –create –topic my-topic –partitions 1 –replication-factor 1 –config max.message.bytes=64000 –config flush.messages=1

  

可以在創建topic後繼續使用命令修改topic中已經定義了的參數,本示例更新my-topic的最大message大小::

> bin/kafka-configs.sh –zookeeper localhost:2181 –entity-type topics –entity-name my-topic –alter –add-config max.message.bytes=128000

  

要檢查在主題上設置的覆蓋,您可以執行

> bin/kafka-configs.sh –zookeeper localhost:2181 –entity-type topics –entity-name my-topic –describe

  

或者是刪除指定的topic中的某個自定義參數:

> bin/kafka-topics.sh –zookeeper localhost:2181 –alter –topic my-topic –deleteConfig max.message.bytes

  

或者是刪除指定的topic中的某個自定義參數:

> bin/kafka-configs.sh –zookeeper localhost:2181 –entity-type topics –entity-name my-topic –alter –delete-config max.message.bytes

  

 



kafka參數在線修改