3

如何在 Windows 上运行 kafka rest 代理。

我下载了 confluent-2.0.1-2.11.7.ta​​r.gz

在 Windows 文件夹中,我看不到 kafka-rest-start。

4

4 回答 4

3

以下是他们在 bash 脚本末尾实际执行的命令示例:

java -Xmx256M -server -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:+DisableExplicitGC -Djava.awt.headless=true -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false -Dlog4j.configuration=file:C:/Dev/kafka/confluent-4.0.0/etc/kafka-rest/log4j.properties -cp .;C:/Dev/kafka/confluent-4.0.0/target/kafka-rest-*-development/share/java/kafka-rest/*;C:/Dev/kafka/confluent-4.0.0/share/java/confluent-common/*;C:/Dev/kafka/confluent-4.0.0/share/java/rest-utils/*;C:/Dev/kafka/confluent-4.0.0/share/java/kafka-rest/* io.confluent.kafkarest.KafkaRestMain C:/Dev/kafka/confluent-4.0.0/etc/kafka-rest/kafka-rest.properties

如果您想尝试一下,请确保将路径更改为您的路径。

于 2018-01-13T22:50:05.453 回答
3

Windows 当前不是受支持的平台。但是,如果您调整脚本,它应该可以正常工作。即使只是java io.confluent.kafkarest.KafkaRestMain使用适当的类路径运行也应该可以。

于 2016-10-07T19:48:10.707 回答
2

也许,这个答案会帮助任何刚接触 Kafka 并偶然发现这种情况的人,比如我 :)。

一周前,我正在寻找同样问题的答案,遇到了在 Windows 中运行 jar 文件(在此路径confluent-xxx\share\java\kafka-rest中)的官方建议,但没有成功。

无论no main attribute found是否指定正确的类路径和io.confluent.kafkarest.KafkaRestMain.

我什至尝试使用 [babun]: http://babun.github.io/运行为 Linux 发行版打包的 shell 脚本,但这导致了类似Error: Could not find or load main class io.confluent.kafkarest.KafkaRestMain.

最终,使用 zookeeper、kafka、schema-registry、kafka-rest 构建的 docker 镜像就像一个魅力。这是包含图像名称信息的官方页面,进一步参考它的文档:https ://hub.docker.com/r/confluentinc/cp-kafka-rest/

提取此映像后,将创建一个新的虚拟机,其中包含另外四个映像(一个用于每个服务,如 zookeeper、Kafka、schem-registry 和 Kafka-rest)。运行图像会运行一个单独的 Docker 容器。

本指南应该可以帮助您快速入门: http: //docs.confluent.io/current/cp-docker-images/docs/quickstart.html

最后,如果您想将作为 Docker 容器运行的 kafka REST 代理服务器公开给外部网络(例如 Windows 机器,它是与这些容器不同的网络的一部分),只需提及 Docker 主机 IP(通过点击找到它docker-machine ip <hostname>)并使用选项KAFKA_REST_LISTENERS公开端口。-p

像这样:

docker run -d \
  --net=host \
  --name=kafka-rest \
  -p 8082:8082 \
  -e KAFKA_REST_ZOOKEEPER_CONNECT=localhost:32181 \
  -e KAFKA_REST_LISTENERS=http://192.168.99.100:8082 \
  -e KAFKA_REST_SCHEMA_REGISTRY_URL=http://localhost:8081 \
  -e KAFKA_REST_HOST_NAME=localhost \
  confluentinc/cp-kafka-rest:3.2.1

如果一切正常,您将能够http://<Docker_host_IP>:8082从 Windows 机器通过此 url 访问 REST 代理。

于 2017-07-18T12:05:43.847 回答
0

我能够运行@lexler 上面提到的命令,但在cygwin 之外。(直接使用 windows 命令提示符。)

于 2019-09-27T06:36:25.557 回答