Apache kafka 在卡夫卡集群中,控制器选举是否发生多次?

Apache kafka 在卡夫卡集群中,控制器选举是否发生多次?,apache-kafka,Apache Kafka,在卡夫卡集群中,一个代理充当控制器。我的问题是,即使已经当选的控制人已经开始运作,这次的控制人选举还会一次又一次地发生吗?如果是,这种情况多久发生一次?我们可以控制时间吗?Zookeeper负责通过心跳机制对集群中的所有代理进行健康检查,以保持代理列表的最新状态。它还负责在一开始或当前控制器崩溃时选择控制器 因此无需重新选择控制器,当控制器处于健康状态时(向Zookeeper发送心跳)Zookeeper负责通过心跳机制对集群中的所有代理进行健康检查,以保持代理列表最新。它还负责在一开始或当前控制

在卡夫卡集群中,一个代理充当控制器。我的问题是,即使已经当选的控制人已经开始运作,这次的控制人选举还会一次又一次地发生吗?如果是,这种情况多久发生一次?我们可以控制时间吗?

Zookeeper负责通过心跳机制对集群中的所有代理进行健康检查,以保持代理列表的最新状态。它还负责在一开始或当前控制器崩溃时选择控制器


因此无需重新选择控制器,当控制器处于健康状态时(向Zookeeper发送心跳)

Zookeeper负责通过心跳机制对集群中的所有代理进行健康检查,以保持代理列表最新。它还负责在一开始或当前控制器崩溃时选择控制器


因此,无需重新选择控制器,只要控制器运行正常(向Zookeeper发送心跳)

即可在所有代理启动并运行时执行控制器重新选择:删除Zookeeper中的控制器节点,该节点将在不关闭任何代理的情况下再次启动控制器选择

Zookeeper外壳命令:

bin/zookeeper-shell localhost:2181 deleteall /kafka/controller [rmr is deprecated]

要在所有代理启动并运行时执行控制器重新选择:删除zookeeper中的控制器节点,该节点将在不关闭任何代理的情况下再次启动控制器选择

Zookeeper外壳命令:

bin/zookeeper-shell localhost:2181 deleteall /kafka/controller [rmr is deprecated]

好吧,主控制器可能会死,所以是的,它发生了,谢谢你的信息。我的问题是更具体的,当现有的控制器启动并运行时,是否会像交换控制器一样重新选举,以确保每个人都有机会?不会有多个控制器,如果它确实切换(我不确定为什么需要,如果控制器是健康的),Zookeeper将负责选举,不仅仅是卡夫卡集群。我不确定我是否理解你所说的“有机会”是什么意思,因为它不像负载平衡协议。我想我知道答案了。我对您的解释的理解是,除非现有控制器死亡,否则它将在集群的生命周期内继续作为控制器。我的理解正确吗?@cricket_007你是对的,除非控制员死了,否则就不会有连任。动物园管理员只有在现有的控制器死亡时才会重新选择。好吧,主控制器可能会死亡,所以是的,它发生了。谢谢你提供的信息。我的问题是更具体的,当现有的控制器启动并运行时,是否会像交换控制器一样重新选举,以确保每个人都有机会?不会有多个控制器,如果它确实切换(我不确定为什么需要,如果控制器是健康的),Zookeeper将负责选举,不仅仅是卡夫卡集群。我不确定我是否理解你所说的“有机会”是什么意思,因为它不像负载平衡协议。我想我知道答案了。我对您的解释的理解是,除非现有控制器死亡,否则它将在集群的生命周期内继续作为控制器。我的理解正确吗?@cricket_007你是对的,除非控制员死了,否则就不会有连任。Zookeeper仅在现有控制器死亡时重新选择。