在没有安装 Confluent 平台的情况下使用 Confluent Hub
Posted
技术标签:
【中文标题】在没有安装 Confluent 平台的情况下使用 Confluent Hub【英文标题】:Use Confluent Hub without Confluent Platform installation 【发布时间】:2019-11-19 08:29:16 【问题描述】:我正在使用这些安装说明来获取 confluent hub 客户端 https://docs.confluent.io/current/connect/managing/confluent-hub/client.html
但是,当我上线安装 kafka-connect-elasticsearch 连接器时
confluent-hub install confluentinc/kafka-connect-elasticsearch:latest
我继续收到此错误消息:
Unable to detect Confluent Platform installation. Specify --component-dir and --worker-configs explicitly.
Error: Invalid options or arguments
我在 Mac 上通过 Homebrew 安装了 ElasticSearch 和 Kafka
【问题讨论】:
【参考方案1】:明确指定 --component-dir 和 --worker-configs
您必须传递这两个选项以包括 Kafka Connect 的 plugin.path
设置的 Homebrew 位置(Confluent Hub 将安装到的位置)和您的 connect-distributed.properties
(以便可以设置插件路径,如果不是已经)
例如
confluent-hub install <name> \
--component-dir /opt/connectors \
--worker-configs /etc/kafka/connect-distributed.properties
此命令应下载连接器 zip 并将其解压缩到 /opt/connectors
并修改 connect-distributed.properties
文件以将该路径包含在其 plugin.path
属性中
Here is an example using a Kafka Connect docker image that I've built
【讨论】:
这两个参数有建议的位置吗? @bagi 我会说运行 Kafka Connect 的服务帐户有权读取它们的位置。默认情况下,在 Confluent Platform 中,组件安装在/usr/share/java
下,配置放在 /etc
下
如何找到这些路径?如果从 docker 安装?
@Megan confluentinc 连接容器已预先配置为使用 Confluent Hub,因此您无需指定它们。您可以通过 rmoff 的博客文章找到使用示例【参考方案2】:
MacOS
就我而言,我使用brew
安装了Kafka 和Confluent Hub,Kafka 的安装路径是/usr/local/Cellar/kafka
。并创建了一个目录来安装连接器。
移动到/usr/local/Caskroom/confluent-hub-client/6.2.1/bin
,就是confluent-hub所在的目录。
然后我执行了confluent-hub install confluentinc/kafka-connect-azure-blob-storage:1.6.2 --component-dir /Users/Rustam_Zokirov/BigData/connectors --worker-configs /usr/local/Cellar/kafka/3.0.0/libexec/config/connect-distributed.properties
【讨论】:
【参考方案3】:我使用本地融合社区版也有同样的情况 您应该在包含融合平台的目录中启动安装(与 bin 等相同级别,共享 ...) 手动指定配置文件可能会出错。
【讨论】:
在没有 Confluent 平台的情况下明确提出的问题以上是关于在没有安装 Confluent 平台的情况下使用 Confluent Hub的主要内容,如果未能解决你的问题,请参考以下文章
如何在没有 Confluent 的情况下使用 Kafka Connect for Cassandra
在没有 Confluent Schema Registry 的情况下在 KafkaConnect 中使用 Avro