【问题标题】:Kafka topic messages are gone after cluster restart集群重启后Kafka主题消息消失
【发布时间】:2019-05-20 13:44:28
【问题描述】:

我们有一个在 Openshift 中运行的两节点 Kafka tcluster。我们创建了一个保留政策设置为 30 天的主题。这项工作按预期进行,包括单个代理重新启动。然而,当 Kafka 集群通过缩减 Kafka statefulset 重新启动为 0 个副本并将其扩展到 2 个副本时,所有主题消息都消失了。

集群重启前:

/usr/bin/kafka-run-class kafka.tools.GetOffsetShell --broker-list localhost:29092 --topic platform.openshift.events --time -1 --offsets 1

platforms.openshift.events:0:73387

集群重启后:

$/usr/bin/kafka-run-class kafka.tools.GetOffsetShell --broker-list localhost:29092 --topic platform.openshift.events --time -1 --offsets 1

platforms.openshift.events:0:0

这是预期的行为吗?我们使用挂载卷来存储 Kafka 主题。

【问题讨论】:

  • 主题的复制因子是多少?如果主题数据目录正确安装了卷,那么这应该不是问题。
  • 复制因子为 2。持久卷安装在 /var/lib/kafka 并且 Kafka 服务器使用 logs.dir=/var/lib/kakfa 运行。

标签: kubernetes apache-kafka openshift


【解决方案1】:

我注意到 kafka.properties 设置 log.dirs=/var/lib/kafka/data 而不是 /var/lib/kafka。将卷挂载点从 /var/lib/kafka 更改为 /var/lib/kafka/data 后,问题就消失了。

【讨论】:

  • 感谢您回答自己的问题!这解决了我的问题(不得不取消 /var/lib/kafka/data 中的 'lost+found' 文件夹,但它终于奏效了)
猜你喜欢
  • 2020-01-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-20
  • 2018-07-07
相关资源
最近更新 更多