[
https://issues.apache.org/jira/browse/KAFKA-2310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15064136#comment-15064136
]
Stevo Slavic edited comment on KAFKA-2310 at 12/18/15 4:04 PM:
---------------------------------------------------------------
Enabling only specific brokers to become controllers, and disabling controller
nodes from becoming leads for any partition (becoming data nodes), would help
minimize downtime when controller node goes down - when that happens, if
controller node was a lead for any partitions no other replica can become lead
for some time even when there are ISRs available, at least not until new
controller is elected, and then new lead for partitions is elected as well and
during that time those partitions cannot be written to or read from.
KAFKA-1778 (KIP-39) is somewhat related and would further help one move
controller around.
With all this, maybe it would make sense to split controller process into
separate app and candidates cluster into separate one from data nodes.
was (Author: sslavic):
Preventing broker from becoming controller, and controller nodes from becoming
leads for any partition, would help minimize downtime when controller node goes
down - when that happens, if controller node was a lead for any partitions no
other replica can become lead for some time even when there are ISRs available,
at least not until new controller is elected, and then new lead for partitions
is elected as well and during that time those partitions cannot be written to
or read from.
KAFKA-1778 (KIP-39) is somewhat related and would further help one move
controller around.
With all this, maybe it would make sense to split controller process into
separate app and candidates cluster into separate one from data nodes.
> Add config to prevent broker becoming controller
> ------------------------------------------------
>
> Key: KAFKA-2310
> URL: https://issues.apache.org/jira/browse/KAFKA-2310
> Project: Kafka
> Issue Type: Bug
> Reporter: Andrii Biletskyi
> Assignee: Andrii Biletskyi
> Attachments: KAFKA-2310.patch, KAFKA-2310_0.8.1.patch,
> KAFKA-2310_0.8.2.patch
>
>
> The goal is to be able to specify which cluster brokers can serve as a
> controller and which cannot. This way it will be possible to "reserve"
> particular, not overloaded with partitions and other operations, broker as
> controller.
> Proposed to add config _controller.eligibility_ defaulted to true (for
> backward compatibility, since now any broker can become a controller)
> Patch will be available for trunk, 0.8.2 and 0.8.1
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)