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

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

    [ https://issues.apache.org/jira/browse/KAFKA-4121?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15466998#comment-15466998 ] 

Rajini Sivaram commented on KAFKA-4121:
---------------------------------------

Advertised listeners can specify hostnames, the exception is because hostnames cannot contain underscores - see KAFKA-3017 for details.

> 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 a wurstmeister/kafka-docker container, 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)