当前位置: 首页 > 知识库问答 >
问题:

KafkaStream createTopic不尊重Kafka服务器的Auto.Create.Topics.Enable设置

徐隐水
2023-03-14

我们有一个生产Kafka集群,最近被一堆新话题污染了。Kafka群集具有以下设置:

auto.create.topics.enable=false
delete.topic.enable=false

经过调查,我发现这些主题是由使用kafkastream的createTopic方法的客户团队创建的:org.apache.kafka.streams.integration.utils.embeddedkafkacluster#createTopic(java.lang.string,int,int)

这是否意味着KafKastReam的主题创建不经过auto.create.topics.enable的服务器端代理设置?这是否意味着createTopic*方法不算自动主题创建?如果是这样,我们如何阻止客户团队以编程方式在Kafka集群上创建主题呢?

编辑:kafka集群运行的是10.1.1,客户端运行的是kafka和Kafka-Stream的1.1.0

共有1个答案

百里芷阳
2023-03-14

配置auto.create.topics.enable仅在客户端尝试从不存在的主题读/写(或查询不存在的主题的元数据)时才适用。

Kafka流,确实使用createTopic请求显式创建主题,因此不应用auto.create.topics.enable

您可以为集群设置一些ACL来控制谁可以创建主题:https://kafka.apache.org/0101/documentation.html#security_authz

注意:如果您不允许使用Kafka流的团队创建新主题,您会使他们很难使用Kafka流。如果没有这些主题,Kafka Streams无法运行,您需要手动创建这些主题(使用正确的配置),以避免中断Kafka Streams应用程序。

 类似资料:
  • 我有一个独立的Kafka经纪人,我试图配置SASL。配置如下。我试图在经纪人身上设置SASL_PLAIN身份验证。 我的理解是,这与听众有关。名称服务器中的配置。属性,我不需要jaas文件。但我已经尝试过一种方法,看看这是否是一种更好的方法。 我对这些命令中的每一个都进行了实验,但都产生了相同的异常。 显示的异常为: KafkaServer启动期间出现致命错误。准备关机。。。找不到“KafkaSe

  • 我已经设置了Spark Structured Streaming(Spark2.3.2)来阅读Kafka(2.0.0)。如果消息在Spark streaming作业启动之前就进入了主题,我无法从主题的开始消费。这是Spark streaming的预期行为吗?它忽略了Spark streaming作业初始运行之前产生的Kafka消息(即使带有.选项(“StratingOffSets”,“Earlis

  • 出于某种原因,当浏览到以文件夹结尾的URL时(例如://localhost:8500/website/directory/),索引。cfm未加载,而是返回404错误页。我已经确认。。。\web inf\web。xml文件正在通过修改筛选器映射来使用,以启用的显示。htm和。txt文件。事实上,欢迎文件列表部分中的任何文件都没有被使用,即使它们存在,这让我相信web的这一部分有问题。xml文件。 网

  • 我已经设置了Spark结构流(Spark 2.3.2)来阅读Kafka(2.0.0)。如果消息在Spark流作业开始之前进入主题,我无法从主题的开始消费。Spark streaming会忽略在初始运行Spark Stream作业之前产生的Kafka消息(即使使用。选项(“StratingoffSets”、“reasly”)),这是否是预期的Spark streaming行为? > 在开始流作业之前

  • Debug 字段 该设置默认值是 false,当发生错误时,只返回错误信息本身。 当该字段设置为 true 时,当发生 panic 时,会将整个 panic 的错误堆栈信息返回给客户端,在用户进行 hprose 服务开发时,该设置可以帮助你快速定位错误位置。 ErrorDelay 字段 该设置为整型值,默认值为 10 秒。 该字段表示在调用执行时,如果发生异常,将延时一段时间后再返回给客户端。 在

  • null null 谢谢你的回答。