【问题标题】:Kafka connect in dockerKafka 在 docker 中连接
【发布时间】:2019-12-28 10:04:49
【问题描述】:

我正在尝试设置一个运行 kafka-connect 并具有独立连接器 (s3-sink) 的 Dockerized 环境。

我正在使用 docker-compose 和 Kafka,zookeeper 和我的 producer 都运行良好,但是 kafka connect 的 docker 映像在启动后立即关闭。我使用了文档中的示例,但没有使用 ENTRYPOINT 或 CMD。

此外,当我阻止它关闭并尝试使用./bin/connect-standalone 启动我的连接器时,它会失败并出现以下错误org.apache.kafka.connect.errors.ConnectException: Failed to find any class that implements Connector and which name matches io.confluent.connect.s3.S3SinkConnector

我的 Docker 撰写实际上是两行,第一行应该做我的第一个问题,第二个是安装第二个问题声称缺少的东西......

当然,我在这应该如何工作方面遗漏了一些东西,知道吗?

我阻止了图像关闭,但它仍然没有使用 kafka-connect REST 接口在端口 8083 上公开任何内容

FROM confluentinc/cp-kafka-connect-base:5.3.0
RUN confluent-hub install --no-prompt confluentinc/kafka-connect-s3:5.3.0
COPY . .
#CMD["connect-standalone", "connect-standalone.properties", "s3-sink.properties"]

我希望 Docker 映像不会关闭并暴露端口 8083

Answer:启动连接器时启动其余 API。如果连接器出现故障,则 api 将关闭,容器也会关闭。

【问题讨论】:

  • 我构建了映像并在检查中显示它公开了端口 8083。可能您没有在主机上映射该端口?发布您的 docker-compose.yml 以及您运行以构建映像和运行容器的任何 docker 和 docker-compose 命令会很有用
  • cp-kafka-connect 图像已经从 S3 连接器开始。你需要自己的吗?
  • 我有类似的问题,想知道你是怎么解决的?

标签: apache-kafka dockerfile apache-kafka-connect


【解决方案1】:

您需要将环境变量 CONNECT_PLUGIN_PATH 设置为插件安装到的任何路径。

如果你在 confluent-hub install 命令中使用 --verbose,插件会被安装到 /usr/share/confluent-hub-components/

默认情况下,可执行文件在不同的文件夹中查找。

【讨论】:

    【解决方案2】:

    启动连接器时会启动其余 API。如果连接器出现故障,则 api 将关闭,容器也会关闭。

    【讨论】:

      猜你喜欢
      • 2019-03-23
      • 2019-03-06
      • 1970-01-01
      • 2018-06-07
      • 2022-01-25
      • 2020-10-24
      • 1970-01-01
      • 2017-07-02
      • 2021-09-21
      相关资源
      最近更新 更多