卡夫卡满怀期待地关闭了。无法创建许可证主题

blu*_*sky 5 apache-kafka confluent-platform

在 Kafka 启动时,会记录多条消息kafka/logs/kafkaServer.out并包含:

信息 [代理 0 上的管理员管理器]:处理创建主题请求时出错 CreatableTopic(name='_confluence-license', numPartitions=1,replicationFactor=3,指派=[], configs=[CreateableTopicConfig(name='cleanup.policy', value='compact'), CreateableTopicConfig(name='min.insync.replicas', value='2')]) (kafka.server.AdminManager)

大约 15 分钟后,Kafka 关闭并输出到 kafka/logs/kafkaServer.out

org.apache.kafka.common.errors.InvalidReplicationFactorException: Replication factor: 3 larger than available brokers: 1.
[2020-12-08 04:04:15,951] ERROR [KafkaServer id=0] Fatal error during KafkaServer startup. Prepare to shutdown
Run Code Online (Sandbox Code Playgroud)

(kafka.server.KafkaServer) org.apache.kafka.common.errors.TimeoutException: 无法创建许可证主题 原因: org.apache.kafka.common.errors.InvalidReplicationFactorException: 复制因子: 3 大于可用代理: 1 . [2020-12-08 04:04:15,952] 信息 [KafkaServer id=0] 关闭(kafka.server.KafkaServer)

看来 Kafka 关闭是因为该主题的复制因子设置为 3 _confluent-license?我没有创建主题_confluent-license,这是作为 Kafka 启动许可检查的一部分创建的吗?

为了尝试修复,我进行了修改/v5.5.0/etc/kafka/server.properties,以便内部主题的复制因子为 1:

############################# Internal Topic Settings  #############################
# The replication factor for the group metadata internal topics "__consumer_offsets" and "__transaction_state"
# For anything other than development testing, a value greater than 1 is recommended for to ensure availability such as 3.
offsets.topic.replication.factor=1
transaction.state.log.replication.factor=1
Run Code Online (Sandbox Code Playgroud)

而不是 3 :

#offsets.topic.replication.factor=3
#transaction.state.log.replication.factor=3
Run Code Online (Sandbox Code Playgroud)

但这并不能解决问题并且会生成相同的日志。__consumer_offsets 的复制因子仍然是 3。如何将 topic 的复制因子_confluent-license从 3 减少到 1 ?或者是否有其他问题导致 Kafka 关闭?

Kat*_*ova 4

您应该更改该属性confluent.license.topic.replication.factor,默认为 3。