如何在windows上运行kafka rest代理

bzzcjhmw  于 2021-06-07  发布在  Kafka
关注(0)|答案(4)|浏览(385)

如何在windows上运行kafka rest代理。
我下载了confluent-2.0.1-2.11.7.tar.gz
在windows文件夹中,我看不到kafka rest start。

7ajki6be

7ajki6be1#

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

t8e9dugd

t8e9dugd2#

下面是他们在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

如果你想尝试的话,一定要改变路径。

643ylb08

643ylb083#

windows目前不是受支持的平台。但是,如果您修改脚本,它应该可以正常工作。即使只是跑步 java io.confluent.kafkarest.KafkaRestMain 使用适当的类路径应该可以工作。

ve7v8dk2

ve7v8dk24#

也许,这个答案会帮助任何一个刚接触Kafka的人,并且像我一样偶然发现这种情况:)。
一周前,我在寻找同一个问题的答案,遇到了在windows中运行jar文件(在这个路径中为confluent-x.x.x\share\java\kafka rest)的官方建议,但没有成功。
总是遇到这个错误 no main attribute found 有或没有指定正确的类路径和 io.confluent.kafkarest.KafkaRestMain .
我甚至尝试使用[babun]运行为linux发行版打包的shell脚本:http://babun.github.io/,但这导致了如下错误 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
最后,如果您想将kafka rest代理服务器作为docker容器运行到外部网络(比如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

如果一切正常,您将能够在这个url访问rest代理 http://<Docker_host_IP>:8082 从windows机器上。

相关问题