没有了可用 Task slot,Flink 新增任务会怎样?
欢迎访问我的 GitHub
这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos
没有了可用 Task slot,新增任务会怎样?
如下图所示,一个普通 Flink1.7 的 Local 环境,正在运行一个并行度为 4 的任务,现有 Task slot 全部被使用,因此 Available Task Slots 为零:
如果这时候再提交一个任务,会出现什么情况呢?如下图,新提交的任务,状态是 SCHEDULED(红框所示),执行的主机也没有分配(绿框所示):
看来要想任务顺利执行,首先要保证 slot 数量够用,目前机器内存是够用的,那么就把 slot 数量调大些吧;
注意
由于修改的配置文件要重启 Flink 才能生效,在生产环境请慎用!
修改配置
根据官方文档的指导,应该修改 conf 目录下的 flink-conf.yaml 文件中 taskmanager.numberOfTaskSlots 的值,如下图红框所示,文档地址:https://ci.apache.org/projects/flink/flink-docs-master/ops/config.html
这里我将之前配置的 4 改为 8(机器的 CPU 是四核,超线程开启),重启 Flink;
再次验证
重启 Flink 之后,再次提交两个任务,去看首页整体情况一切正常,如下图:
欢迎关注 InfoQ:程序员欣宸
版权声明: 本文为 InfoQ 作者【程序员欣宸】的原创文章。
原文链接:【http://xie.infoq.cn/article/b7bb8b1c92de31435b1052b68】。文章转载请联系作者。
评论