【问题标题】:Alternative to Kakfa-connect due to ARM incompability由于 ARM 不兼容而替代 Kafka-connect
【发布时间】:2022-01-19 00:15:52
【问题描述】:

我一直在使用 kafka(使用 wurstmeister 图像,但我也尝试使用融合图像设置代理和 Zookeeper 并且它有效)有一段时间了,我现在正在尝试设置 kafka-connect 所以我可以直接将消息从 kafka 主题加载到 S3。但是,我遇到了几个问题。 Qemu 错误、org.eclipse.jetty.http.MimeTypes 上的 java.lang.ExceptionInInitializerError 等,我读到这与缺乏 ARM 支持有关(https://github.com/confluentinc/common-docker/issues/117https://github.com/docker/buildx/issues/542)。我曾尝试使用平台:linux/amd64 运行 docker compose,但它仍然无法正常工作。

我想知道是否有人有任何解决方法可以使 kafka-connect 工作,或者您是否知道任何替代方法。

谢谢!

【问题讨论】:

    标签: macos docker apache-kafka apache-kafka-connect arm64


    【解决方案1】:

    您不需要 Docker 来运行 Kafka Connect。

    • 在您的 Mac 上安装 Java
    • 下载卡夫卡
    • 运行 Zookeeper 和 Kafka(可能与 M1 Mac 有问题)
    • 运行bin/connect-distributed.sh config/connect-distributed.properties

    如果你真的需要 Docker,你可以从其他来源重建镜像,such as mine,它是从支持 ARM 的 adoptopenjdk:11-jre 基础镜像构建的

    【讨论】:

    • 你是卡夫卡的救星。我刚刚安装了 kafka 并在没有 docker 的情况下运行它,它似乎正在工作。我运行连接位来测试它,因为我注意到配置中有一个示例 filestreamsink,并尝试将一些消息写入主题。但如果它正在工作,应该会创建一个文件,对吧?还有什么我想念的吗?
    • FileStreamSink应该自己创建一个文件。
    • 实际上,如果你不提供文件的配置值,它只会打印到连接工作人员标准输出(即终端)
    • 我终于可以让它工作了。我非常感谢你的帮助!下一站:s3 连接器!再次感谢!
    • 不确定你以前是否遇到过这种情况,但是当我从 confluence 下载了 s3 连接器并将其添加到 plugin.path 时。但是当我添加它时,我得到错误提示 java.lang.NoClassDefFoundError: Caused by: java.lang.ClassNotFoundException: io.confluent.connect.storage.StorageSinkConnectorConfi。但是,如果我将 plugin.path 删除到 s3 连接器,它就会恢复正常。有什么想法吗?
    猜你喜欢
    • 1970-01-01
    • 2019-08-16
    • 2018-01-08
    • 1970-01-01
    • 1970-01-01
    • 2022-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多