You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by lei-tian <to...@163.com> on 2021/10/18 13:31:21 UTC

flink作业的停止

您好:
      我用flink读取hbase或者文件的数据,读完数据之后页面显示状态为finished,但是这个任务在yarn上的资源还没有被释放,仍然在yarn的running列表里面,需要通过命令行kill掉这个任务,有什么解决的方法么。我没有设置batch或者streaming的模式,用的是默认的。


| |
lei-tian
|
|
totorobabyfans@163.com
|
签名由网易邮箱大师定制

回复:flink作业的停止

Posted by lei-tian <to...@163.com>.
我不是用的sql,但是也是同样的问题




| |
totorobabyfans
|
|
邮箱:totorobabyfans@163.com
|

签名由 网易邮箱大师 定制

在2021年10月20日 16:21,Kenyore Woo 写道:
我遇到过和你一模一样的问题。
如果你使用的也是Flink SQL,你可以在configuration中增加table.dml_sync=true的配置。这个配置对我有用。
详见TableEnvironment.executeInternal
On Oct 20, 2021 at 09:06:54, lei-tian <to...@163.com> wrote:

> Hi , yuepeng-pan:
> 你好,我这边提交的是数据yarn的per-job的模式,Flink的UI界面上在任务running状态下可以看到jobmanager的日志和taskmanager的日志,任务finished或者failed后它会出现在UI界面上的Completed
> Job List,同时左边的tm的点击去后已经没有相关信息,只有jm有相关信息,
> 应该是JM资源没有被释放。
>
>
> | |
> lei-tian
> |
> |
> totorobabyfans@163.com
> |
> 签名由网易邮箱大师定制
> 在2021年10月19日 10:53,Yuepeng Pan<fl...@126.com> 写道:
> Hi,
> lei-tian.
> 基于你的描述,我推测(flink-1.10+)会存在这几种可能。
> 1. 使用了
> flink的yarn-session模式,然后进行了相应的作业提交。这种情况表现为,作业最终完成后,yarn中对应flink集群的taskmanager
> container能够被释放掉,但是只是保留了Jobmanager组件的容器没有释放。在 flink的yarn-session模式
> 的部署方式中,这是正常的。
> 2. 不论是在flink yarn 的per-job部署模式或者yarn-session部署模式中,如果负责hbase source/sink的
> 算子与其他任意一种流模式的算子进行connect或者union等多流的计算,那么将会导致hbase
> IO结束后,剩余的流式算子还是处于正常运行状态,这种情况下的大概表现为 yarn中 flink taskmanager
> container和jobmanager container 都未释放。
> 3.其他。
> 如果作业所有的souce都是读取"批模式"的数据源,比如 mysql/hbase 而非包含kafka/pulsar等,那么你可以尝试flink on
> yarn 的per-job的部署方式运行任务。
>
>
>
>
> 祝好。
> Roc
>
>
>
>
>
>
>
>
>
>
>
> 在 2021-10-18 21:31:21,"lei-tian" <to...@163.com> 写道:
> 您好:
>
> 我用flink读取hbase或者文件的数据,读完数据之后页面显示状态为finished,但是这个任务在yarn上的资源还没有被释放,仍然在yarn的running列表里面,需要通过命令行kill掉这个任务,有什么解决的方法么。我没有设置batch或者streaming的模式,用的是默认的。
>
>
> | |
> lei-tian
> |
> |
> totorobabyfans@163.com
> |
> 签名由网易邮箱大师定制
>

Re: 回复:flink作业的停止

Posted by Kenyore Woo <wo...@gmail.com>.
我遇到过和你一模一样的问题。
如果你使用的也是Flink SQL,你可以在configuration中增加table.dml_sync=true的配置。这个配置对我有用。
详见TableEnvironment.executeInternal
On Oct 20, 2021 at 09:06:54, lei-tian <to...@163.com> wrote:

> Hi , yuepeng-pan:
> 你好,我这边提交的是数据yarn的per-job的模式,Flink的UI界面上在任务running状态下可以看到jobmanager的日志和taskmanager的日志,任务finished或者failed后它会出现在UI界面上的Completed
> Job List,同时左边的tm的点击去后已经没有相关信息,只有jm有相关信息,
> 应该是JM资源没有被释放。
>
>
> | |
> lei-tian
> |
> |
> totorobabyfans@163.com
> |
> 签名由网易邮箱大师定制
> 在2021年10月19日 10:53,Yuepeng Pan<fl...@126.com> 写道:
> Hi,
> lei-tian.
> 基于你的描述,我推测(flink-1.10+)会存在这几种可能。
> 1. 使用了
> flink的yarn-session模式,然后进行了相应的作业提交。这种情况表现为,作业最终完成后,yarn中对应flink集群的taskmanager
> container能够被释放掉,但是只是保留了Jobmanager组件的容器没有释放。在 flink的yarn-session模式
> 的部署方式中,这是正常的。
> 2. 不论是在flink yarn 的per-job部署模式或者yarn-session部署模式中,如果负责hbase source/sink的
> 算子与其他任意一种流模式的算子进行connect或者union等多流的计算,那么将会导致hbase
> IO结束后,剩余的流式算子还是处于正常运行状态,这种情况下的大概表现为 yarn中 flink taskmanager
> container和jobmanager container 都未释放。
> 3.其他。
> 如果作业所有的souce都是读取"批模式"的数据源,比如 mysql/hbase 而非包含kafka/pulsar等,那么你可以尝试flink on
> yarn 的per-job的部署方式运行任务。
>
>
>
>
> 祝好。
> Roc
>
>
>
>
>
>
>
>
>
>
>
> 在 2021-10-18 21:31:21,"lei-tian" <to...@163.com> 写道:
> 您好:
>
> 我用flink读取hbase或者文件的数据,读完数据之后页面显示状态为finished,但是这个任务在yarn上的资源还没有被释放,仍然在yarn的running列表里面,需要通过命令行kill掉这个任务,有什么解决的方法么。我没有设置batch或者streaming的模式,用的是默认的。
>
>
> | |
> lei-tian
> |
> |
> totorobabyfans@163.com
> |
> 签名由网易邮箱大师定制
>

回复:flink作业的停止

Posted by lei-tian <to...@163.com>.
Hi , yuepeng-pan:
你好,我这边提交的是数据yarn的per-job的模式,Flink的UI界面上在任务running状态下可以看到jobmanager的日志和taskmanager的日志,任务finished或者failed后它会出现在UI界面上的Completed Job List,同时左边的tm的点击去后已经没有相关信息,只有jm有相关信息,
应该是JM资源没有被释放。


| |
lei-tian
|
|
totorobabyfans@163.com
|
签名由网易邮箱大师定制
在2021年10月19日 10:53,Yuepeng Pan<fl...@126.com> 写道:
Hi,
lei-tian.
基于你的描述,我推测(flink-1.10+)会存在这几种可能。
1. 使用了 flink的yarn-session模式,然后进行了相应的作业提交。这种情况表现为,作业最终完成后,yarn中对应flink集群的taskmanager container能够被释放掉,但是只是保留了Jobmanager组件的容器没有释放。在 flink的yarn-session模式 的部署方式中,这是正常的。
2. 不论是在flink yarn 的per-job部署模式或者yarn-session部署模式中,如果负责hbase source/sink的 算子与其他任意一种流模式的算子进行connect或者union等多流的计算,那么将会导致hbase IO结束后,剩余的流式算子还是处于正常运行状态,这种情况下的大概表现为 yarn中 flink taskmanager container和jobmanager container 都未释放。
3.其他。
如果作业所有的souce都是读取"批模式"的数据源,比如 mysql/hbase 而非包含kafka/pulsar等,那么你可以尝试flink on yarn 的per-job的部署方式运行任务。




祝好。
Roc











在 2021-10-18 21:31:21,"lei-tian" <to...@163.com> 写道:
您好:
我用flink读取hbase或者文件的数据,读完数据之后页面显示状态为finished,但是这个任务在yarn上的资源还没有被释放,仍然在yarn的running列表里面,需要通过命令行kill掉这个任务,有什么解决的方法么。我没有设置batch或者streaming的模式,用的是默认的。


| |
lei-tian
|
|
totorobabyfans@163.com
|
签名由网易邮箱大师定制

Re:flink作业的停止

Posted by Yuepeng Pan <fl...@126.com>.
Hi, 
    lei-tian.
基于你的描述,我推测(flink-1.10+)会存在这几种可能。
1. 使用了 flink的yarn-session模式,然后进行了相应的作业提交。这种情况表现为,作业最终完成后,yarn中对应flink集群的taskmanager container能够被释放掉,但是只是保留了Jobmanager组件的容器没有释放。在 flink的yarn-session模式 的部署方式中,这是正常的。
2. 不论是在flink yarn 的per-job部署模式或者yarn-session部署模式中,如果负责hbase source/sink的 算子与其他任意一种流模式的算子进行connect或者union等多流的计算,那么将会导致hbase IO结束后,剩余的流式算子还是处于正常运行状态,这种情况下的大概表现为 yarn中 flink taskmanager container和jobmanager container 都未释放。
3.其他。
如果作业所有的souce都是读取"批模式"的数据源,比如 mysql/hbase 而非包含kafka/pulsar等,那么你可以尝试flink on yarn 的per-job的部署方式运行任务。




祝好。
Roc











在 2021-10-18 21:31:21,"lei-tian" <to...@163.com> 写道:
>您好:
>      我用flink读取hbase或者文件的数据,读完数据之后页面显示状态为finished,但是这个任务在yarn上的资源还没有被释放,仍然在yarn的running列表里面,需要通过命令行kill掉这个任务,有什么解决的方法么。我没有设置batch或者streaming的模式,用的是默认的。
>
>
>| |
>lei-tian
>|
>|
>totorobabyfans@163.com
>|
>签名由网易邮箱大师定制