【问题标题】:Kafka internal topic : Where are the internal topics created - source or target broker?Kafka 内部主题:内部主题在哪里创建 - 源代理还是目标代理?
【发布时间】:2020-09-19 02:25:36
【问题描述】:

我们正在执行有状态操作。我们的集群是托管的。每次创建内部主题时,我们都必须要求管理员解锁,以便可以通过 kafka 流应用程序创建内部主题。我们可以控制目标集群而不是源集群。

那么,想了解哪个集群 - 源/目标是内部主题创建的?

【问题讨论】:

    标签: apache-kafka apache-kafka-streams kafka-topic


    【解决方案1】:

    AFAIK,kafka-streams 应用程序连接到的只有一个集群,并且所有主题源/目标/内部都在那里创建。

    【讨论】:

      【解决方案2】:

      到目前为止,Kafka Stream 应用程序只能支持连接到 Stream 配置中 BOOTSTRAP_SERVERS_CONFIG 中定义的一个集群。

      如上所述,所有源主题都驻留在这些代理中,所有内部主题(更改日志/重新分区主题)都在同一个集群中创建。 KStream 应用也会在同一个集群中创建目标主题。

      查看服务器日志以了解和分析实际根本原因是值得的。

      【讨论】:

        【解决方案3】:

        正如其他答案所暗示的那样,Kafka Stream 应用程序应该只连接一个集群。内部主题由 Kafka 流应用程序创建,仅由创建它的应用程序使用。但是,在 Broker 端可能存在一些与安全设置相关的配置,这可能会阻止流式应用程序创建这些主题:

        如果在 Kafka 代理上启用了安全性,您必须授予底层客户端管理员权限,以便他们可以创建内部主题集。有关详细信息,请参阅 Streams 安全性。

        引自here

        要记住的另一点是内部主题是由 Stream 应用程序自动创建的,并且没有明确的配置来自动创建内部主题。

        【讨论】:

          猜你喜欢
          • 2018-08-03
          • 1970-01-01
          • 1970-01-01
          • 2019-09-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-02-02
          相关资源
          最近更新 更多