簡體   English   中英

許可證主題的 Kafka Connect 復制因子

[英]Kafka Connect replication factor for license topic

我正在嘗試使用docker-compose在本地運行Kafka-Connect 就像我喜歡 Confluent 產品和 Kafka 一樣,有時傳遞一些配置或找到一個一致的示例是一項艱巨的任務。 在我的 docker-compose 文件中,我現在為brokerzksrkafka-connect使用6.0.0版本,但我也嘗試過舊版本。

代理( confluentinc/cp-server:6.0.0 )失敗:

信息 [代理 1 上的管理員管理器]:處理創建主題請求 CreatableTopic(name='_confluent-license', numPartitions=1, replicationFactor=3, assignments=[], configs=[CreateableTopicConfig(name='cleanup.policy', value='compact'), CreateableTopicConfig(name='min.insync.replicas', value='2')], linkName=null, mirrorTopic=null) (kafka.server.AdminManager)

而且我根本不知道如何將confluent.topic.replication.factor作為環境變量傳遞給我的工人。 我已經添加了兩個:

      CONNECT_CONFLUENT_TOPIC_REPLICATION_FACTOR: "1"
      CONFLUENT_TOPIC_REPLICATION_FACTOR: "1"

...但它們都被忽略了。 更重要的是,我_confluent-license無法在任何地方的文檔中找到_confluent-license ,只有_confluent-command

如何在不設置 3 個代理的情況下在docker-compose內部進行本地連接?

代理失敗,因為該主題是從中創建的,因此您需要代理上的變量

KAFKA_CONFLUENT_TOPIC_REPLICATION_FACTOR: 1

否則,您需要cp-kafka ,而不是cp-server

正如 OneCricketeer 指出的那樣,該值必須在代理容器中設置,這也解釋了為什么代理容器失敗,而不是連接工作人員。 這絕對是有道理的。 代理不會因為客戶端配置錯誤而失敗。

找到解決方案可能更令人困惑的是,許可證主題復制因子的 env var 和配置屬性不遵循常規模式,其中 env var 是大寫的配置屬性,點替換為下划線(和前綴在適用的情況下) . 實際上我們得到: confluent.topic.replication.factor -> KAFKA_CONFLUENT_TOPIC_REPLICATION_FACTOR

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM