我正在尝试使用docker compose部署一个flink集群,这一直运行良好,但每当重新启动作业管理器时,它都会删除所有JAR文件。
根据flink网站:https://ci.apache.org/projects/flink/flink-docs-stable/ops/deployment/docker.html
我需要像这样装载文件夹位置:-/host/path/to/job/artifacts:/opt/flink/usrlib
但是,一旦成功地这样做,管理界面中似乎没有可用的作业。我可以进入集装箱,看到装载成功
这是错误的位置吗?还是我这里少了什么?
谢谢!
如果希望作业从作业管理器重新启动中恢复,则需要配置高可用性。
根据文档您必须设置上传路径web.upload.dir
,否则Flink将默认在web.tmpdir
/tmp
下创建一个动态目录,然后您可以将上传目录装载到Volume。例如:
version: "3.7"
services:
jobmanager:
image: flink:1.13.0-scala_2.11
ports:
- "8081:8081"
command: jobmanager
environment:
- |
FLINK_PROPERTIES=
jobmanager.rpc.address: jobmanager
web.upload.dir: /opt/flink/flink-web
volumes:
- ./data/flink-web:/opt/flink/flink-web
- ./data/usrlib:/opt/flink/usrlib
taskmanager:
image: flink:1.13.0-scala_2.11
depends_on:
- jobmanager
command: taskmanager
scale: 1
environment:
- |
FLINK_PROPERTIES=
jobmanager.rpc.address: jobmanager
taskmanager.numberOfTaskSlots: 5
volumes:
- ./data/usrlib:/opt/flink/usrlib