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

Kafka如何在经纪人之间分配话题分区

孟新知
2023-03-14

我有3个Kafka经纪人在3个不同的VM,其中一个还运行一个Zookeeper。我现在创建一个有8个分区的主题。制作人在创建的“主题”上向这些经纪人组推送消息。

  • Kafka是如何在经纪人之间分配话题及其分区的?
  • 当新的Kafka代理加入集群时,Kafka是否重新分发主题?
  • 创建主题后是否可以增加主题分区?

共有1个答案

家弘业
2023-03-14

>

  • 当创建新主题时,Kafka将分区和副本放在一种方式,即首先使用现有分区数量最少的代理,而同一分区的副本放在不同的代理上。

    当您添加一个新代理时,它将用于新分区(因为它的现有分区数量最低),但是现有分区不会自动平衡到新代理。可以使用Replica-Resignment工具将分区和副本移动到新的代理。

    是的,您可以向现有主题添加分区。

  •  类似资料:
    • 我想知道简单主题和分区主题之间的区别是什么。根据我的理解,为了平衡负载,主题已经被分区,每个消息都有偏移,使用者将确认以确保先前的消息已经被确认。如果没有分区和使用者不匹配,由kafka完成的重新平衡会有效地管理。 如果创建多个主题而不是分区,是否会影响操作效率。

    • 我试图连接到Kafka服务器使用SpringKafka客户端 我正在使用logback。xml。下面是配置。在测试之前,我对Kafka主机和端口进行了硬编码。相同的代码和配置适用于其中一个环境。

    • 我正在尝试仅为代理间kerberos配置Kafka代理。然而,由于它似乎也想通过Kerberos连接到Zookeeper,所以我似乎总是遇到错误。我目前还没有设置任何Zookeeper键。 我的Kafka代理 JAAS 配置如下: 服务器属性 我用上述配置得到的错误如下: 换句话说,我只想要经纪人到经纪人的 kerberos 和经纪人 - 动物园管理员的普通SASL_SSL。这可能吗?

    • 我指定“kafka_auto_create_topics_enable:'false'”是因为我想手工创建主题,所以我进入第一个broker容器并键入以下内容: ./kafka-topics.sh--创建--zookeeper 172.19.0.2:2181--主题test1--分区4--复制-因子3 看起来一切都很好: ./kafka-topics.sh--list--zookeeper 172

    • Kafka初学者和融合包。我想启动多个代理,以便了解主题。可以通过此设置完成- 此设置可以在服务器配置文件中定义,也可以在脚本中定义。 但是我该如何运行它们呢?。如果我只是向引导服务器添加多个endpoint,就会出现以下错误: Java . lang . illegalargumentexception:要求失败:每个侦听器必须有不同的名称,listeners: PLAINTEXT://:909

    • 我有4个Kafka和debezium一起运行。经过几天的良好运行后,三台kafka机器脱离网络一段时间,在< code > connect distributed . out 日志文件中,我收到了许多包含以下错误的消息: 我有4台Kafka机器,经纪人从0到3 动物园管理员: <代码>192.168.240.70 关注我的 - 除了之外,有相同的 指向安装 Kafka 的计算机的相同 IP,并且