【发布时间】:2017-10-22 17:45:38
【问题描述】:
我使用的是在 Docker 上运行的 Flink 1.2.1,任务管理器作为 Docker Swarm 的一部分分布在不同的虚拟机上。
使用 Flink Web UI 上传 Apache Beam 应用程序并尝试在作业提交点设置并行度不起作用。也不使用 Flink CLI 提交作业。
似乎并行度没有在客户端级别获得,最终默认为 1。
当我在 Apache Beam 代码中以编程方式设置并行度时,它可以工作:flinkPipelineOptions.setParallelism(4);
我怀疑问题的根源可能在 org.apache.beam.runners.flink.DefaultParallelismFactory 类中,因为它检查 Flink 的 GlobalConfiguration,它可能无法获取传递给 Flink 的运行时值。
关于如何解决或解决此问题的任何想法?我需要能够动态更改并行度,因此编程方法将不起作用,在系统级别设置 Flink 配置也不行。
我正在使用以下文档: https://ci.apache.org/projects/flink/flink-docs-release-1.2/dev/parallel.html https://beam.apache.org/documentation/sdks/javadoc/2.0.0/org/apache/beam/runners/flink/DefaultParallelismFactory.html
【问题讨论】:
标签: apache-flink docker-swarm apache-beam