Alok Nikhil created KAFKA-12237:
-----------------------------------
Summary: Support non-routable quorum voter addresses
Key: KAFKA-12237
URL: https://issues.apache.org/jira/browse/KAFKA-12237
Project: Kafka
Issue Type: Sub-task
Reporter: Alok Nikhil
Assignee: Alok Nikhil
With KIP-595, we expect the RaftConfig to specify the quorum voter endpoints
upfront on startup. In the general case, this works fine. However, for testing
we need a more lazy approach that discovers the other voters in the quorum
after startup (i.e. controller port bind). This approach also lends itself well
to cases where we might have an observer that discovers the voter endpoints
from, say a `DescribeQuorum` event.
Quoting [~hachikuji]:
{panel}
**At a high level, I think we should make {{0.0.0.0:0}} a valid address
configuration from the perspective of {{KafkaRaftClient}}. We are telling the
client that initialization of the endpoints will come at a later time and
through some external mechanism. I think this is a generally useful capability
even outside of testing. For example, we may eventually want to be able to
initialize an observer from a {{bootstrap.servers}} configuration. In this
case, discovery of the voter endpoints will come after we have (say) sent a
{{DescribeQuorum}} to the cluster. We may also want to implement some of the
more fancy bootstrapping options that etcd has, such as using an external
service to facilitate address bootstrapping.
{panel}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)