如何在DC / OS上将JDBC驱动程序添加到Kafka Connect?

时间:2018-11-11 21:53:44

标签: docker apache-kafka mesos apache-kafka-connect dcos

使用融合社区软件包在DC / OS上运行Kafka Connect 4.1.1。如何将jdbc驱动程序上传或添加到远程集群?

更新:这是一个软件包安装的DC / OS目录,它是一个运行docker映像的mesos框架。

1 个答案:

答案 0 :(得分:2)

更新

here (thanks to @rmoff)借来的脚本

这是一个使用bash脚本覆盖Docker CMD以下载和提取REST API源连接器的示例。

bash -c 'echo Installing unzip… && \
                curl -so unzip.deb http://ftp.br.debian.org/debian/pool/main/u/unzip/unzip_6.0-16+deb8u3_amd64.deb && \
                dpkg -i unzip.deb && \
                echo Downloading connector… && \
                curl -so kafka-connect-rest.zip https://storage.googleapis.com/rmoff-connectors/kafka-connect-rest.zip && \
                mkdir -p /u01/connectors/ && \
                unzip -j kafka-connect-rest.zip -d /u01/connectors/kafka-connect-rest && \
                echo Launching Connect… && \
                /etc/confluent/docker/run'

您需要build your own Docker images并将其发布到您的Mesos集群的可解析的Docker注册表中,然后编辑Mesos服务以提取这些映像而不是Confluent映像。

例如,在您的Dockerfile中,您将拥有

ADD http://somepath.com/someJDBC-driver.jar /usr/share/java/kafka-connect-jdbc

还是curl而不是ADD,如Confluent文档中所示(因为它需要提取该.tar.gz文件)。

FROM confluentinc/cp-kafka-connect

ENV MYSQL_DRIVER_VERSION 5.1.39

RUN curl -k -SL "https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-${MYSQL_DRIVER_VERSION}.tar.gz" \
    | tar -xzf - -C /usr/share/java/kafka-connect-jdbc/ --strip-components=1 mysql-connector-java-5.1.39/mysql-connector-java-${MYSQL_DRIVER_VERSION}-bin.jar

您还可以使用confluent-hub install添加不是JDBC JAR文件的其他连接器