コマンドラインからグローバルおよびトピックごとのデフォルトの Kafka 構成を取得するにはどうすればよいですか? 質問する

コマンドラインからグローバルおよびトピックごとのデフォルトの Kafka 構成を取得するにはどうすればよいですか? 質問する

コマンドラインまたは他の方法から、グローバルおよびトピックごとのデフォルトの Kafka 構成を取得するにはどうすればよいですか?

デフォルトは利用可能だと知っていますブローカー設定また、describe を使用してトピックごとに「オーバーライド」を取得できますが、トピック レベルの構成に多くの変更を加える場合は、トピックごとのオーバーライドを含むすべての値を取得できると便利です。

$KAFKA_HOME/bin/kafka-topics.sh --zookeeper $ZK --describe --topic test-topic
$KAFKA_HOME/bin/kafka-configs.sh --zookeeper $ZK --describe --entity-name test-topic --entity-type topics

参考までに、私は kafka v0.9.0.1 を使い始めたばかりです。

どうやら、なぜこれが不可能なのかについての議論なので、解決策はないと思います。

ベストアンサー1

Kafka 2.5.0以降(https://issues.apache.org/jira/browse/KAFKA-9040) では、--allすべての (デフォルトおよび上書きされた) トピック構成を表示するオプションを使用できるようになりました。

% kafka-configs --bootstrap-server <KAFKA_SERVERS> --entity-type topics --entity-name <TOPIC_NAME> --describe --all
All configs for topic <TOPIC_NAME> are:
  compression.type=producer sensitive=false synonyms={}
  message.format.version=1.0-IV0 sensitive=false synonyms={}
  file.delete.delay.ms=60000 sensitive=false synonyms={}
  leader.replication.throttled.replicas= sensitive=false synonyms={}
  max.message.bytes=1000012 sensitive=false synonyms={}
  min.compaction.lag.ms=0 sensitive=false synonyms={}
  message.timestamp.type=CreateTime sensitive=false synonyms={}
  min.insync.replicas=1 sensitive=false synonyms={}
  segment.jitter.ms=0 sensitive=false synonyms={}
  preallocate=false sensitive=false synonyms={}
  index.interval.bytes=4096 sensitive=false synonyms={}
  min.cleanable.dirty.ratio=0.5 sensitive=false synonyms={}
  unclean.leader.election.enable=false sensitive=false synonyms={}
  retention.bytes=-1 sensitive=false synonyms={}
  delete.retention.ms=86400000 sensitive=false synonyms={}
  cleanup.policy=delete sensitive=false synonyms={}
  flush.ms=1000 sensitive=false synonyms={}
  follower.replication.throttled.replicas= sensitive=false synonyms={}
  segment.bytes=1073741824 sensitive=false synonyms={}
  retention.ms=172800000 sensitive=false synonyms={}
  segment.ms=604800000 sensitive=false synonyms={}
  message.timestamp.difference.max.ms=9223372036854775807 sensitive=false synonyms={}
  flush.messages=10000 sensitive=false synonyms={}
  segment.index.bytes=10485760 sensitive=false synonyms={}

ご覧の通り、広報このオプションは、(少なくとも)ブローカー設定にも使用できます。

また、このオプションはない現在kafka-topicsCLI に存在します。

おすすめ記事