我在flink的文档中看到了下面的信息—将相应的jar复制到plugins目录以使用s3。如果我使用kubernetes部署flink怎么办。
“要使用flink-s3-fs-hadoop或flink-s3-fs-presto,请在启动flink之前将相应的jar文件从opt目录复制到flink发行版的plugins目录,例如:。
mkdir./plugins/s3 fs presto cp./opt/flink-s3-fs-presto-1.9.0.jar./plugins/s3 fs presto/“
2条答案
按热度按时间tkqqtvp11#
如果你是参考k8s设置在正式文件你可以简单地重新创建你的形象。
checkout github存储库中的docker文件
下载
flink-s3-fs-presto-1.9.0.jar
到与docker文件相同的文件夹在右前添加以下内容
COPY docker-entrypoint.sh
```install Flink S3 FS Presto plugin
RUN mkdir ./plugins/s3-fs-presto
COPY ./flink-s3-fs-presto-1.9.1.jar ./plugins/s3-fs-presto/
gab6jxml2#
如果您使用flink的build.sh脚本来构建特定于应用程序的docker映像,那么它有一个参数(--job artifacts),允许您指定要包含在映像中的工件(jar文件)列表。这些jar文件最终都位于lib目录中。看到了吗https://github.com/apache/flink/blob/master/flink-container/docker/build.sh.
您可以在此基础上进行扩展,以正确处理插件,或者暂时不用担心(仍然支持将它们放在lib目录中)。