开发者社区> 问答> 正文

slot数量与并行度的大小关系

我在flink web面板上提交了1个job,job的并行度为15,flink集群slot总数为12,发现任务一直在created阶段等待,一段时间后报错:

Caused by: org.apache.flink.runtime.jobmanager.scheduler.NoResourceAvailableException: Could not allocate the required slot within slot request timeout.

Please make sure that the cluster has enough resources.

是因为slot数量必须要大于并行度吗?有没有参数可以让flink自动选择可用slot数作为job的并行度?*来自志愿者整理的flink邮件归档

展开
收起
小阿矿 2021-12-03 16:17:07 1170 0
1 条回答
写回答
取消 提交回答
  • Flink 的调度策略会保证一个job需要的slot数恰好等于该job所有算子的最大并行度。

    如果slot数量小于算子的最大并行度,则该job无法执行。可以参考[1][2]中的文档描述。

    目前没有方法让flink自动选择可用slot数量作为并行度,但可以通过[3]中的几种方法来设置。

    [1]

    https://ci.apache.org/projects/flink/flink-docs-release-1.11/zh/internals/job_scheduling.html

    [2]

    https://ci.apache.org/projects/flink/flink-docs-release-1.11/zh/concepts/flink-architecture.html#task-slots-and-resources

    [3]

    https://ci.apache.org/projects/flink/flink-docs-release-1.11/zh/dev/parallel.html

    *来自志愿者整理的flink邮件归档

    2021-12-06 10:40:53
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载