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 Yichao Yang <10...@qq.com> on 2020/06/11 07:53:27 UTC

回复:flink on yarn模式的代码运行位置问题

Hi


yarn是用作资源管理调度,你所说的未运行在yarn是没有运行在yarn的服务器上吗?


Best,
Yichao Yang




------------------&nbsp;原始邮件&nbsp;------------------
发件人:&nbsp;"zjfplayer@hotmail.com"<zjfplayer@hotmail.com&gt;;
发送时间:&nbsp;2020年6月11日(星期四) 下午2:32
收件人:&nbsp;"user-zh"<user-zh@flink.apache.org&gt;;

主题:&nbsp;flink on yarn模式的代码运行位置问题



Hi,
&nbsp;&nbsp;&nbsp; 我在使用flink的过程中,有些疑问请教下各位:
&nbsp;&nbsp;&nbsp; 1.flink分为jobmanger和taskmanager,我怎么区分哪些代码是运行在jobmanager,哪些在taskmanager?
&nbsp;&nbsp;&nbsp; 2.假设我jarA中使用AbstractYarnClusterDescriptor.deployJobCluster()替代flink run命令(想直接通过jar包启动方式直接提交flink任务上yarn),部署jarB到yarn上,jarB中mainClass中使用StreamExecutionEnvironment.execute去执行流任务,通过java -cp jarA的方式来启动,首先能确定的一点是jarA运行在服务器本地端,jarB中mainClass是否已经运行在yarn上了?还是运行在服务器端?
&nbsp;&nbsp;&nbsp;&nbsp; 服务器端指的是java -cp执行的服务器
&nbsp;&nbsp;&nbsp;&nbsp; 我这边本身从日志打印和远程debug(java -cp中加remote debug参数和flink-conf.yaml中加入remote debug配置)来看,jarB中的mainClass还未运行在yarn上,这个是什么原因? 
&nbsp;&nbsp; 
&nbsp;&nbsp;&nbsp; 


zjfplayer@hotmail.com

Re: 回复:flink on yarn模式的代码运行位置问题

Posted by Yang Wang <da...@gmail.com>.
> 如何区分代码是运行在Client/JobManager/TaskManager里面?

Yarn perjob模式,用户的main方法运行在Client端,编译生成JobGraph会ship到JobManager进行
任务的调度。我理解用户的代码一般是不会在JobManager端运行的,JM会将task调度到TaskManager
上运行。对于Yarn application模式,用户main运行在JobManager生成JobGraph,其他相同。


> jarB中mainClass是否已经运行在yarn上了?还是运行在服务器端?

还是如上所说,取决于你是deployJobCluster还是deployApplicationCluster,在1.11以前只有deployJobCluster,
也就是mainClass是在client端运行(调用deployJobCluster的地方)。这个是预期内的,因为需要生成
JobGraph之后再上传,也是为了解决这个问题引入了Application Mode[1].


[1].
https://cwiki.apache.org/confluence/display/FLINK/FLIP-85+Flink+Application+Mode


Best,
Yang


zjfplayer@hotmail.com <zj...@hotmail.com> 于2020年6月11日周四 下午3:55写道:

> 未运行在yarn的容器里面,还在服务器java -cp的进程里面
>
>
>
> zjfplayer@hotmail.com
>
> 发件人: Yichao Yang
> 发送时间: 2020-06-11 15:53
> 收件人: user-zh
> 主题: 回复:flink on yarn模式的代码运行位置问题
> Hi
>
>
> yarn是用作资源管理调度,你所说的未运行在yarn是没有运行在yarn的服务器上吗?
>
>
> Best,
> Yichao Yang
>
>
>
>
> ------------------&nbsp;原始邮件&nbsp;------------------
> 发件人:&nbsp;"zjfplayer@hotmail.com"<zjfplayer@hotmail.com&gt;;
> 发送时间:&nbsp;2020年6月11日(星期四) 下午2:32
> 收件人:&nbsp;"user-zh"<user-zh@flink.apache.org&gt;;
>
> 主题:&nbsp;flink on yarn模式的代码运行位置问题
>
>
>
> Hi,
> &nbsp;&nbsp;&nbsp; 我在使用flink的过程中,有些疑问请教下各位:
> &nbsp;&nbsp;&nbsp;
> 1.flink分为jobmanger和taskmanager,我怎么区分哪些代码是运行在jobmanager,哪些在taskmanager?
> &nbsp;&nbsp;&nbsp;
> 2.假设我jarA中使用AbstractYarnClusterDescriptor.deployJobCluster()替代flink
> run命令(想直接通过jar包启动方式直接提交flink任务上yarn),部署jarB到yarn上,jarB中mainClass中使用StreamExecutionEnvironment.execute去执行流任务,通过java
> -cp jarA的方式来启动,首先能确定的一点是jarA运行在服务器本地端,jarB中mainClass是否已经运行在yarn上了?还是运行在服务器端?
> &nbsp;&nbsp;&nbsp;&nbsp; 服务器端指的是java -cp执行的服务器
> &nbsp;&nbsp;&nbsp;&nbsp; 我这边本身从日志打印和远程debug(java -cp中加remote
> debug参数和flink-conf.yaml中加入remote
> debug配置)来看,jarB中的mainClass还未运行在yarn上,这个是什么原因?
> &nbsp;&nbsp;
> &nbsp;&nbsp;&nbsp;
>
>
> zjfplayer@hotmail.com
>

回复: 回复:flink on yarn模式的代码运行位置问题

Posted by "zjfplayer@hotmail.com" <zj...@hotmail.com>.
未运行在yarn的容器里面,还在服务器java -cp的进程里面



zjfplayer@hotmail.com
 
发件人: Yichao Yang
发送时间: 2020-06-11 15:53
收件人: user-zh
主题: 回复:flink on yarn模式的代码运行位置问题
Hi
 
 
yarn是用作资源管理调度,你所说的未运行在yarn是没有运行在yarn的服务器上吗?
 
 
Best,
Yichao Yang
 
 
 
 
------------------&nbsp;原始邮件&nbsp;------------------
发件人:&nbsp;"zjfplayer@hotmail.com"<zjfplayer@hotmail.com&gt;;
发送时间:&nbsp;2020年6月11日(星期四) 下午2:32
收件人:&nbsp;"user-zh"<user-zh@flink.apache.org&gt;;
 
主题:&nbsp;flink on yarn模式的代码运行位置问题
 
 
 
Hi,
&nbsp;&nbsp;&nbsp; 我在使用flink的过程中,有些疑问请教下各位:
&nbsp;&nbsp;&nbsp; 1.flink分为jobmanger和taskmanager,我怎么区分哪些代码是运行在jobmanager,哪些在taskmanager?
&nbsp;&nbsp;&nbsp; 2.假设我jarA中使用AbstractYarnClusterDescriptor.deployJobCluster()替代flink run命令(想直接通过jar包启动方式直接提交flink任务上yarn),部署jarB到yarn上,jarB中mainClass中使用StreamExecutionEnvironment.execute去执行流任务,通过java -cp jarA的方式来启动,首先能确定的一点是jarA运行在服务器本地端,jarB中mainClass是否已经运行在yarn上了?还是运行在服务器端?
&nbsp;&nbsp;&nbsp;&nbsp; 服务器端指的是java -cp执行的服务器
&nbsp;&nbsp;&nbsp;&nbsp; 我这边本身从日志打印和远程debug(java -cp中加remote debug参数和flink-conf.yaml中加入remote debug配置)来看,jarB中的mainClass还未运行在yarn上,这个是什么原因? 
&nbsp;&nbsp; 
&nbsp;&nbsp;&nbsp; 
 
 
zjfplayer@hotmail.com