【问题标题】:Kafdrop (localhost/127.0.0.1:9092) could not be established. Broker may not be available无法建立 Kafdrop (localhost/127.0.0.1:9092)。经纪人可能不可用
【发布时间】:2020-12-08 03:40:36
【问题描述】:

我在本地机器上设置了 Kafka 和 Zookeeper,我想使用 Kafdrop 作为 UI。我尝试使用下面的 docker 命令运行:

docker run -d --rm -p 9000:9000 \
    -e KAFKA_BROKERCONNECT=<localhost:9092> \
    -e JVM_OPTS="-Xms32M -Xmx64M" \
    -e SERVER_SERVLET_CONTEXTPATH="/" \
    obsidiandynamics/kafdrop

我得到-bash: https://locahost:9092: No such file or directory

当我删除 KAFKA_BROKERCONNECT 参数时,应用程序运行但我收到以下错误:

[AdminClient clientId=kafdrop-admin] Connection to node -1 (localhost/127.0.0.1:9092) could not be established. Broker may not be available.
2020-07-22 09:39:29.108  WARN 1 [| kafdrop-admin] o.a.k.c.NetworkClient 

我确实为此设置了 Kafka 服务器的侦听器设置,但没有帮助。

listeners=PLAINTEXT://localhost:9092

我找到了this similar issue on GitHub,但大部分答案都看不懂。

【问题讨论】:

  • 你是在 Docker 中运行 Kafka 和 zookeeper 还是在 Standalone 中运行
  • 不,它们都是本地安装的
  • 然后就可以构建github可用的代码并运行jar了。
  • 运行 JAR 文件有效。不过我想使用 docker 镜像。

标签: apache-kafka


【解决方案1】:

Kafka 不是基于 HTTP 的。连接 Kafka 不需要 schema 协议,也不需要使用尖括号。

您也不能使用localhost,因为那是 Kafdrop 容器,而不是 Kafka。

我建议你使用Docker Compose with Kafdrop and Kafka

【讨论】:

    【解决方案2】:

    我按照@OneCricketeer 在他的回答中所说的进行了操作,一切正常 这是我所做的:

    • 我从 GitHub 上面的链接或Click here 下载了撰写文件

    • 通过转到文件所在的目录运行撰写文件并使用 cmd docker-compose up 运行它

    • 停止所有 kafka 服务器和 Zookeeper,因为所有内容都将使用 docker-compose 命令下载

    • 在转到 http://localhost:9000/ 和瞧

    【讨论】:

    • 一旦你编辑了 yaml 并运行 docker-compose up ,因为你有它在本地机器上,使用 127.0.0.1 是否有任何问题,你解释的方式,意味着创建一个代理.. .
    • 我没有创建任何代理,只是运行 docker-compose 并检查图像是否正常,如果您有问题,请详细说明
    猜你喜欢
    • 2021-08-18
    • 1970-01-01
    • 1970-01-01
    • 2019-10-03
    • 2018-05-20
    • 2018-07-05
    • 1970-01-01
    • 2018-04-11
    • 1970-01-01
    相关资源
    最近更新 更多