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

如何配置 kafka 集群在停止并重新启动代理后重新选举分区领导者所需的时间?

冯元魁
2023-03-14

我有以下设置:< br> 3个kafka broker和3个zookeeper ensamble
1个主题,有12个分区和3个副本(因此每个Kafka broker是4个分区的领导者)< br >

我停止了其中一个代理-它从集群中删除,其分区的领导被转移到剩余的两个代理

我重新启动代理——它重新出现在集群中,最终领导权重新平衡,因此每个代理都是4个分区的领导者。

它工作正常,除了我发现在重新平衡之前花费的时间太长(如几分钟)。这是在没有负载的情况下发生的 - 没有消息发送到集群,没有消息被消耗。

Kafka版本 0.9.0.0, 动物园管理员 3.4.6

动物园管理员勾选时间=2000

Kafka动物园管理员连接超时。毫秒=6000

(基本上是默认配置)

有人知道kafka和/或zookeeper中的哪些配置参数会影响领导拉比所需的时间吗?

共有1个答案

微生啸
2023-03-14

正如官方文档 http://kafka.apache.org/documentation.html#configuration 所说(有关代理配置的更多详细信息可以在 scala 类 kafka.server.KafkaConfig 中找到)实际上有一个领导者.不平衡.check.interval.秒属性,默认为 300(5 分钟),将其设置为 30 秒即可满足我的需求。

 类似资料:
  • 我们在内部云上安装了kafka broker。我们使用zookeeper找到实际的url,并在bootstrap.server配置中提供。现在的问题是,当代理重新启动内部云时,它会使用新的主机端口在动态分配的机器上重新启动。现在,我最初在生产者配置中给出的主机端口无效。 问题是如何在不重新启动的情况下重新加载此配置。 注意:我知道这是一个糟糕的设计主机代理,它可以在不同的机器上重新启动,但这就是现

  • 我在XAMPP中启动MYSQL时遇到了问题。Apache启动正常,但MYSQL不断报告意外关机。 我被引导删除,它在此之后工作,但它删除了我所有的数据库,并且MYSQL在我重新启动机器后再次停止工作。 [ERROR]INNODB:试图打开以前打开的表空间。以前的表空间MYSQL/INNODB_INDEX_STATS在FILEPATH:.\MYSQL\INNODB_INDEX_STATS.IBD中使

  • Triathlon程序执行一个长时间运行的任务,如果该任务已完全执行,则有可能重新启动该任务。我想添加停止执行以重置UI的可能性。为了达到这个目的,我增加了一个新的按钮,停止。代码如下: 如果任务已经完成,程序很好地重新启动,但是如果我在停止它之后调用start,程序就会崩溃。我该纠正什么?

  • 问题内容: 我很难找到一种方法来启动,停止和重新启动Java中的线程。 具体来说,我在中有一个类Task(当前实现)。我的主应用程序需要能够在线程上启动此任务,在需要时停止(杀死)该线程,有时还可以杀死并重新启动该线程… 我的第一次尝试是与,但我似乎找不到办法重新启动任务。当我使用任何将来的呼叫失败时,因为是“关机” … 那么,我该怎么做呢? 问题答案: 一旦线程停止,你将无法重新启动它。但是,没

  • 问题内容: 我已经从http://jenkins-ci.org/content/thank-you-downloading-windows- installer 下载了“ jenkins-1.501.zip” 。 我已经解压缩了zip文件,并在Windows 7上成功安装了Jenkins。詹金斯的表现不错。我想从控制台停止Jenkins服务。我怎样才能做到这一点?通过控制台/命令行启动和重新启动的

  • 我有一个3节点Hadoop集群(Apache Hadoop-2.8.0)设置。我已经部署了2个使用QJM在HA模式下配置的名称代码。在安装namenode的同一台计算机上配置了2个数据阳极。第三个节点仅用于仲裁目的。 需要帮助..