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

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

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

hl9902@126.com
Hi,all:
我在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的并行度?



[hidden email]
Reply | Threaded
Open this post in threaded view
|

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

黄潇
Hi,

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

Best,
Shawn Huang


[hidden email] <[hidden email]> 于2020年11月11日周三 下午2:58写道:

> Hi,all:
> 我在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的并行度?
>
>
>
> [hidden email]
>
Reply | Threaded
Open this post in threaded view
|

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

Xintong Song
你是部署的 flink standalone 集群吗?目前作业的并行度 15 是通过什么方式指定的?

流处理作业默认是至少要拿到并行度数量的 slot 才能够运行的。可以通过 Shawn 提到的 [3]
中的几种方式更改作业的并行度。另外,也可以通过配置 `taskmanager.numberOfTaskSlots` 来增加 flink 集群的
slot 数量。

Thank you~

Xintong Song



On Wed, Nov 11, 2020 at 7:54 PM Shawn Huang <[hidden email]> wrote:

> Hi,
>
> 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
>
> Best,
> Shawn Huang
>
>
> [hidden email] <[hidden email]> 于2020年11月11日周三 下午2:58写道:
>
> > Hi,all:
> > 我在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的并行度?
> >
> >
> >
> > [hidden email]
> >
>
Reply | Threaded
Open this post in threaded view
|

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

hl9902@126.com
是flink standalone 集群。
job并行度是在job的java代码中通过  streamExecutionEnvironment.setParallelism(15) 来指定的。



[hidden email]
 
发件人: Xintong Song
发送时间: 2020-11-12 13:18
收件人: user-zh
主题: Re: slot数量与并行度的大小关系
你是部署的 flink standalone 集群吗?目前作业的并行度 15 是通过什么方式指定的?
 
流处理作业默认是至少要拿到并行度数量的 slot 才能够运行的。可以通过 Shawn 提到的 [3]
中的几种方式更改作业的并行度。另外,也可以通过配置 `taskmanager.numberOfTaskSlots` 来增加 flink 集群的
slot 数量。
 
Thank you~
 
Xintong Song
 
 
 
On Wed, Nov 11, 2020 at 7:54 PM Shawn Huang <[hidden email]> wrote:
 

> Hi,
>
> 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
>
> Best,
> Shawn Huang
>
>
> [hidden email] <[hidden email]> 于2020年11月11日周三 下午2:58写道:
>
> > Hi,all:
> > 我在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的并行度?
> >
> >
> >
> > [hidden email]
> >
>
Reply | Threaded
Open this post in threaded view
|

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

zhisheng
可以参考 http://www.54tianzhisheng.cn/2019/01/14/Flink-parallelism-slot/  文章理解一下

[hidden email] <[hidden email]> 于2020年11月12日周四 下午4:47写道:

> 是flink standalone 集群。
> job并行度是在job的java代码中通过  streamExecutionEnvironment.setParallelism(15) 来指定的。
>
>
>
> [hidden email]
>
> 发件人: Xintong Song
> 发送时间: 2020-11-12 13:18
> 收件人: user-zh
> 主题: Re: slot数量与并行度的大小关系
> 你是部署的 flink standalone 集群吗?目前作业的并行度 15 是通过什么方式指定的?
>
> 流处理作业默认是至少要拿到并行度数量的 slot 才能够运行的。可以通过 Shawn 提到的 [3]
> 中的几种方式更改作业的并行度。另外,也可以通过配置 `taskmanager.numberOfTaskSlots` 来增加 flink 集群的
> slot 数量。
>
> Thank you~
>
> Xintong Song
>
>
>
> On Wed, Nov 11, 2020 at 7:54 PM Shawn Huang <[hidden email]> wrote:
>
> > Hi,
> >
> > 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
> >
> > Best,
> > Shawn Huang
> >
> >
> > [hidden email] <[hidden email]> 于2020年11月11日周三 下午2:58写道:
> >
> > > Hi,all:
> > > 我在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的并行度?
> > >
> > >
> > >
> > > [hidden email]
> > >
> >
>