Kafka 代理处于只读模式

问题描述 投票:0回答:2

我有 3 个代理 Kafka 集群,我想要的是将任意 1 个代理设置为只读模式。 我确实检查了 Kafka 文档,但没有找到任何配置来执行此操作。

有什么办法可以实现这个目标吗?

更新

我的用例:

当前状态: 我有一个 3 个代理的 kafka 集群,运行在健康状态。

要实现什么:我想更新所有 3 个经纪商的硬件。

我在尝试什么

  • 启动 3 个新经纪人,并让他们加入集群(集群为 6 个)
  • 使用重新分配分区工具将数据从旧经纪人迁移到新经纪人
  • 一旦成功完成上述操作,则终止旧的3个经纪商

我确实验证了这一点,并且工作正常,我可以看到我的所有数据已成功转移到新经纪人。

。 .

挑战是什么

我确实有客户端(生产者和消费者)访问此集群。我希望上述活动非停机(我的意思是我不应该丢失任何客户端数据,现有客户端也应该能够访问服务)

我目前正在挖掘的事情是 - 如果客户端在数据迁移过程中同时请求创建新主题会怎样?

会发生这种事吗?

新主题的分区可能会分配给旧经纪人,并且由于数据重新分配正在进行中,因此该主题不会被重新分配。(我知道它也可以分配给新经纪人,但如果所有分区都分配给旧经纪人怎么办)

那么如果我终止旧的经纪人,那么我会失去新创建的主题吗?

因此

这就是为什么我一直在寻找一种方法 - 通过它我可以确保新主题的分区被放置到新的代理(类似于将旧代理置于只读模式)

apache-kafka apache-zookeeper
2个回答
0
投票

您不能将代理设置为只读模式。 Kafka Broker 不支持只读模式。


0
投票

您可以通过此设置 auto.create.topics.enable 禁用主题创建 然后迁移后再次启用

© www.soinside.com 2019 - 2024. All rights reserved.