You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@kafka.apache.org by "Joaquin Casares (JIRA)" <ji...@apache.org> on 2016/09/03 21:57:20 UTC

[jira] [Created] (KAFKA-4121) Allow creating broker listeners from hostname

Joaquin Casares created KAFKA-4121:
--------------------------------------

             Summary: Allow creating broker listeners from hostname
                 Key: KAFKA-4121
                 URL: https://issues.apache.org/jira/browse/KAFKA-4121
             Project: Kafka
          Issue Type: Improvement
          Components: config
    Affects Versions: 0.10.0.1
            Reporter: Joaquin Casares
            Priority: Minor


I'm attempting to start a docker container using the parameter:

{CODE}
advertised.listeners = PLAINTEXT://dockercomposeproject_kafka_1:9092
{CODE}

However, I get this error:

{CODE}
kafka_1      | java.lang.IllegalArgumentException: Error creating broker listeners from 'PLAINTEXT://dockercomposeproject_kafka_1:9092': Unable to parse PLAINTEXT://dockercomposeproject_kafka_1:9092 to a broker endpoint
kafka_1      | 	at kafka.server.KafkaConfig.validateUniquePortAndProtocol(KafkaConfig.scala:954)
kafka_1      | 	at kafka.server.KafkaConfig.getAdvertisedListeners(KafkaConfig.scala:985)
kafka_1      | 	at kafka.server.KafkaConfig.<init>(KafkaConfig.scala:927)
kafka_1      | 	at kafka.server.KafkaConfig$.fromProps(KafkaConfig.scala:743)
kafka_1      | 	at kafka.server.KafkaConfig$.fromProps(KafkaConfig.scala:740)
kafka_1      | 	at kafka.server.KafkaServerStartable$.fromProps(KafkaServerStartable.scala:28)
kafka_1      | 	at kafka.Kafka$.main(Kafka.scala:58)
kafka_1      | 	at kafka.Kafka.main(Kafka.scala)
{CODE}

My workaround is to set my envar (for the wurstmeister/kafka-docker, which is unrelated to this ticket) to:

{CODE}
KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://`getent hosts dockercomposeproject_kafka_1 | awk '{ print $1 }'`:9092
{CODE}

Which resolves to:

{CODE}
advertised.listeners = PLAINTEXT://172.18.0.4:9092
{CODE}

This advertised.listeners resolution allows my docker container to start as expected.

Could sending in hostnames, instead of strict IP addresses, be supported for the advertised.listeners setting?

Thanks!



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)