Strimzi Apache Kafka 运算符不尊重 auto.create.topics.enable



我用strimzi运算符(版本0.28.0(创建了一个kafka集群,设置如下:

spec:
kafka:
config:
log.retention.hours: 5
auto.create.topics.enable: false
default.replication.factor: 3
min.insync.replicas: 2

假设不会自动创建任何主题,我添加了两个主题定义:

架构注册表的_schemas
  • 消费者群体的__consumer_offsets
  • 然而,在启动集群后,我也看到了两个自动创建的主题:

    1. __strimzi_store_topic,它由strimzi-store-topic---effb8e3e057afce1ecf67c3f5d8e4e3ff177fc55Kubernetes资源表示
    2. 以CCD_ 6 Kubernetes资源表示的CCD_

    附加到资源名称的散列表明它们是在外部创建的(不使用kind: KafkaTopicCRD(

    我在互联网上搜索了auto.create.topics.enable,第一个结果解释了这个配置的作用。上面写着:

    。。。有一个名为auto.create.topics.enable的属性,当生产者试图向其中写入数据时,它允许自动创建主题。这意味着,如果生产者试图向名为customers的主题写入记录,而该主题还不存在,它将自动创建以允许写入。而不是向客户端返回错误。

    您看到的由Strimzi创建的主题并不是生产者试图写入它们的自动结果,而是因为Strimzi需要它们用于自己的内部状态管理目的,所以它明确地创建了它们。

    你应该看到的是,如果你试图制作一个名为foo的主题,它会失败。

    如果你设置了auto.create.topics.enable: true,并在制作人那里尝试了同样的事情,它不会失败,foo将由Kafka自动创建。

    最新更新