我想從我的本地機器連接到卡夫卡:弗林克,卡夫卡和動物園管理員與URI
kafkaParams.setProperty("bootstrap.servers", Defaults.BROKER_URL)
kafkaParams.setProperty("metadata.broker.list", Defaults.BROKER_URL)
kafkaParams.setProperty("group.id", "group_id")
kafkaParams.setProperty("auto.offset.reset", "earliest")
完全正常的,但我的BROKER_URI
定義如下my-server.com:1234/my/subdirectory
。
我發現這種現象被稱爲chroot路徑。
它引發以下錯誤:Caused by: org.apache.kafka.common.config.ConfigException: Invalid url in bootstrap.servers: my-server.com:1234/my/subdirectory
如何解決這個問題?
這是我的依賴關係:
val flinkVersion = "1.0.3"
"org.apache.flink" %% "flink-scala" % flinkVersion % "provided",
"org.apache.flink" %% "flink-streaming-scala" % flinkVersion % "provided",
"org.apache.flink" %% "flink-connector-kafka-0.9" % flinkVersion,
這提供了以下錯誤:'異常線程「main」 org.apache.kafka.common.errors.TimeoutException:超時過期而獲取主題元數據' –
這表明配置的格式沒問題。接下來要看的是如果在kafka實例上運行iptables或防火牆。你可以在你的客戶端中telnet kafka實例嗎? –
有趣的是,我可以使用Kafka控制檯消費者進行連接:'./kafka-console-consumer.sh --zookeeper my-server.com:1234/my/subdirectory --topic my-topic --from-beginning'工作得很好。和Telnet也工作正常:'telnet my-server.com 1234' –