【问题标题】:Install Kafka connector manually手动安装 Kafka 连接器
【发布时间】:2020-08-15 19:04:05
【问题描述】:

我正在尝试安装 twitter 源连接器并找到以下链接 link1link2。第一个展示了如何安装 twitter 源连接器,第二个展示了如何手动安装连接器(始终为 Confluent Platform)。

但是我对整个过程感到困惑。我按照here 中的步骤操作,到目前为止一切正常。但是,由于 twitter 源连接器不在连接器集线器的列表中,因此需要手动安装。根据link1,我在某处克隆了一个git repo - 问题:我在哪里克隆它?在 docker-compose.yml 中有一堆服务。特别是,在我启动 yaml 显示后,docker-compose ps

       Name                    Command                  State                         Ports
  ------------------------------------------------------------------------------------------------------------

   broker            /etc/confluent/docker/run        Up             0.0.0.0:9092->9092/tcp
   connect           /etc/confluent/docker/run        Up             0.0.0.0:8083->8083/tcp, 9092/tcp
   control-center    /etc/confluent/docker/run        Up             0.0.0.0:9021->9021/tcp
   ksql-datagen      bash -c echo Waiting for K ...   Up
   ksqldb-cli        /bin/sh                          Up
   ksqldb-server     /etc/confluent/docker/run        Up (healthy)   0.0.0.0:8088->8088/tcp
   rest-proxy        /etc/confluent/docker/run        Up             0.0.0.0:8082->8082/tcp
   schema-registry   /etc/confluent/docker/run        Up             0.0.0.0:8081->8081/tcp
   zookeeper         /etc/confluent/docker/run        Up             0.0.0.0:2181->2181/tcp, 2888/tcp, 3888/tcp

我不明白我应该对上述哪一项执行link1的指示。是在 zookeeper、broker 还是在 connect 中?欢迎任何帮助,如果有人有时间更彻底地围绕link1中的步骤写出几句话,请随意。干杯

【问题讨论】:

    标签: docker apache-kafka apache-kafka-connect confluent-platform


    【解决方案1】:

    连接器安装在 Kafka Connect 工作器中。它们必须在工作程序启动之前安装。

    该博客文章的更新版本在这里:https://www.confluent.io/blog/stream-processing-twitter-data-with-ksqldb。与之相关的是一个新的演示,你可以在这里找到它:https://github.com/confluentinc/demo-scene/tree/master/ksqldb-twitter

    作为演示的一部分,它安装了 twitter 连接器at runtime。它通过覆盖容器映像的默认命令来实现这一点,而是在运行连接工作程序之前运行连接器安装:

        command: 
          - bash 
          - -c 
          - |
            echo "Installing connector plugins"
            confluent-hub install --no-prompt jcustenborder/kafka-connect-twitter:0.3.33
            #
            echo "Launching Kafka Connect worker"
            /etc/confluent/docker/run & 
            #
            sleep infinity
    

    【讨论】:

    • 您好 Robin,非常感谢您的及时回复和很好的回答 (+1)。我有一个(也许是愚蠢的)问题。在工作人员实际启动之前,如何在 docker 中安装克隆的 repo?当您使用 docker-compose 启动 docker 容器时,不是所有堆栈都启动并运行,即 zookeeper、broker 自动启动吗?
    • + 我不得不说我对你的仓库中的 docker-compose.yml 印象深刻。
    • 再次感谢,我明白了要点;总结一下,我需要在 docker-compose.yml 的连接服务中包含上述内容,因此在创建时将安装 twitter 连接器。最后两个问题(我保证 :)):1.) 我的第一条评论是真的吗?即,当启动 docker、zookeeper 和 broker 时会自动启动? 2.) 我是否需要在上面的命令中包含克隆 custenborder/kafka-connect-twitter:0.3.33 repo,或者上面的命令也包含该步骤?谢谢你的一切。
    • 1.是 2. 不需要克隆 repo,Docker Compose 是完全独立的。仅当您手动构建和安装它(您不是)时,您才会克隆存储库
    猜你喜欢
    • 2016-09-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-12
    • 1970-01-01
    • 2021-10-20
    • 1970-01-01
    相关资源
    最近更新 更多