kafka:在windows环境中运行合流

mwg9r5ms  于 2021-06-07  发布在  Kafka
关注(0)|答案(7)|浏览(396)

我把Kafka安排在当地经营。我已经用java编写了示例producer和consumer,通过启动server和zookeeper从本地运行。
我想使用oracle作为生产者,这将需要编写配置文件(已经编写),合流shell脚本在unix上运行它。
有办法逃跑吗 confluent 在windows上,我找不到批处理文件 confluent 设置中?
另外,有没有什么方法可以不使用 confluent 脚本?

vql8enpb

vql8enpb1#

windows不支持合流平台。如果您必须使用windows,最好的选择是docker映像,它完全受支持。

5lwkijsr

5lwkijsr2#

我知道这是古老的,但由于它出现在谷歌搜索,所以重要的是有一个切实可行的答案。
在这个答案中,我假设您也将在某个时候在windows服务器上部署您的应用程序
正如robin moffatt所说,kafka不支持windows的“干净”(我添加了这个),windows上linux容器的docker映像完全受支持。
但不要在docker windows上开发基于linux容器的应用程序,因为linux容器只适用于windows 10,而您在windows server上没有它们(是的,我知道有一个实验性的vesion就绪,但您不能相信,在生产环境中,它在旧版本的windows server 2016上不起作用,如果您像我们这样的客户是老学究类型的人)。
我目前也在努力解决同样的问题,我与我们的项目经理来回联系,从以下解决方案中选择一个:
找到一个很好的替代kafka的方法,它可以在windows上运行,也可以在windows容器上运行
在linux机器上运行应用程序,并在那里安装docker。如果您使用的是带有.net内核的微服务体系结构,那么它在linux上运行得非常好。
这种方法就像是重新设计车轮的某些部件。您需要为它们在zip文件中提供给您的合流kafka创建windows服务。您需要尝试让schema registry、kafka connect和control center自己启动并运行。在没有控制中心的帮助下控制Kafka是一件很痛苦的事情,特别是在生产环境中,当你不打算安装所有东西的时候(如果你能够使用选项3,你可能可以为Kafka创建自己的windows映像(轮子发明了))
我知道这不是很有帮助,但这是我对这个问题研究的结果,我希望微软完成linux容器的开发,或者confluent发布一个windows容器映像。对我来说,如果可能的话,2号解决方案是最好的解决方案。

rdrgkggo

rdrgkggo3#

最新的confluent软件包支持windows。https://docs.confluent.io/4.0.0/installation/installing_cp.html#installation-存档
他们有zookeeper和kafka服务器的bat文件。但是模式注册表bat文件不在那里。但是,您可以下载以下文件。
https://github.com/renukaradhya/confluentplatform/blob/master/bin/windows/schema-registry-run-class.bathttpshttp://github.com/renukaradhya/confluentplatform/blob/master/bin/windows/schema-registry-start.bat
将上述bat文件保存在合流的\u home\bin\windows目录中,并按如下方式运行:
schema-registry-start.bat….\etc\schema registry\schema-registry.properties

ddrv8njm

ddrv8njm4#

最好的方法是通过docker运行kafka、zookeeper,例如:https://hub.docker.com/r/wurstmeister/kafka/

lc8prwob

lc8prwob5#

confluent 命令是用bash编写的,因此您需要像wasl或cygwin这样的东西才能在本机上成功地运行它(在docker/avm之外)
“oracle”听起来像是在运行kafka connect jdbc。
你可以找到 connect-standalone.batbin/windows 目录。
它需要一个属性配置文件,该文件将相应地Map到 kafka-connect-jdbc-source.json 文件,而不是json文件本身。
如果要将json发布到connectapi,则需要使用 connect-distributed 脚本。

uttx8gqw

uttx8gqw6#

合流软件有大量的shell脚本,如果你能使用cygwin(https://www.cygwin.com/ ).
先决条件:要使用的javasdk应该安装在没有空间的文件路径上。
先决条件:安装了curl的cygwin
下载合流发行版并在没有空间的文件路径上安装(解包)。
对于以下每种情况,启动一个cygwin会话,并将javau home设置为sdk和goto/bin
启动zookeeper

./zookeeper-server-start ../etc/kafka/zookeeper.properties

开始Kafka经纪人

./kafka-server-start ../etc/kafka/server.properties

启动合流架构注册表

./schema-registry-start ../etc/schema-registry/schema-registry.properties
ybzsozfc

ybzsozfc7#

是的,你可以在windows下运行。下面是汇合5.0.1的窗口补丁。
https://github.com/mduhan/confluent-windows-5.0.1

相关问题