Priority election
Priority election is an alternative to the default raft leader election, where leader election is implemented by a random timer-based algorithm.
It aims to achieve a more uniform leader distribution by assigning each node a priority per partition and modifying the election algorithm to ensure nodes with higher priority have a higher chance of becoming leader.
Configuration​
Enable priority election by setting zeebe.broker.raft.enablePriorityElection = "true"
in your config or
by setting the equivalent environment variable ZEEBE_BROKER_RAFT_ENABLEPRIORITYELECTION="true"
.
If you are using the fixed partitioning scheme (experimental), you may need additional configuration.
Limitations​
With priority election enabled, election latency and thus failover time increases.
The result of leader election is not deterministic and priority election can only increase the chance of having a uniform leader distribution, not guarantee it.
Factors such as high load can prevent high priority nodes from becoming the leader.