yarn 运行命令(yarn 常用命令)

yarn 运行命令(yarn 常用命令)svg xmlns http www w3 org 2000 svg style display none svg

大家好,我是讯享网,很高兴认识大家。



 <svg xmlns="http://www.w3.org/2000/svg" style="display: none;"> <path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"></path> </svg> <blockquote> 

讯享网

YARN上部署的过程是:客户端把Flink应用提交给Yarn的ResourceManager,Yarn的ResourceManager会向Yarn的NodeManager申请容器。在这些容器上,Flink会部署JobManager和TaskManager的实例,从而启动集群。Flink会根据运行在JobManger上的作业所需要的Slot数量动态分配TaskManager资源。

在将Flink任务部署至YARN集群之前,需要确认集群是否安装有Hadoop,保证Hadoop版本至少在2.2以上,并且集群中安装有HDFS服务。
具体配置步骤如下:
(1)配置环境变量,增加环境变量配置如下:

讯享网

(2)启动Hadoop集群,包括HDFS和YARN。

 

(3)在hadoop102中执行以下命令启动netcat。

讯享网

YARN的会话模式与独立集群略有不同,需要首先申请一个YARN会话(YARN Session)来启动Flink集群。具体步骤如下:

1)启动集群

 

可用参数解读:

  • -d:分离模式,如果你不想让Flink YARN客户端一直前台运行,可以使用这个参数,即使关掉当前对话窗口,YARN session也可以后台运行。
  • -jm(–jobManagerMemory):配置JobManager所需内存,默认单位MB。
  • -nm(–name):配置在YARN UI界面上显示的任务名。
  • -qu(–queue):指定YARN队列名。
  • -tm(–taskManager):配置每个TaskManager所使用内存。

注意:Flink1.11.0版本不再使用-n参数和-s参数分别指定TaskManager数量和slot数量,YARN会按照需求动态分配TaskManager和slot。所以从这个意义上讲,YARN的会话模式也不会把集群资源固定,同样是动态分配的。

YARN Session启动之后会给出一个Web UI地址以及一个YARN application ID,如下所示,用户可以通过Web UI或者命令行两种方式提交作业。

讯享网

2)提交作业

(1)通过Web UI提交作业
这种方式比较简单,与前文所述Standalone部署模式基本相同。
在这里插入图片描述
讯享网

(2)通过命令行提交作业

① 将FlinkTutorial-1.0-SNAPSHOT.jar任务上传至集群。

② 执行以下命令将该任务提交到已经开启的Yarn-Session中运行。

 

客户端可以自行确定JobManager的地址,也可以通过-m或者-jobmanager参数指定JobManager的地址,JobManager的地址在YARN Session的启动页面中可以找到。

③ 任务提交成功后,可在YARN的Web UI界面查看运行情况。

在这里插入图片描述
从上图中可以看到我们创建的Yarn-Session实际上是一个Yarn的Application,并且有唯一的Application ID。

④也可以通过Flink的Web UI页面查看提交任务的运行情况,如下图所示。
在这里插入图片描述

讯享网

注意:如果启动过程中报如下异常。

 

解决办法:在flink的/opt/module/flink-1.17.0/conf/配置文件中设置

讯享网

(2)在YARN的ResourceManager界面查看执行情况。

在这里插入图片描述
点击可以打开Flink Web UI页面进行监控,如下图所示:
在这里插入图片描述
(3)可以使用命令行查看或取消作业,命令如下。

 

这里的是当前应用的ID,是作业的ID。注意如果取消作业,整个Flink集群也会停掉。

应用模式同样非常简单,与单作业模式类似,直接执行flink run-application命令即可。

1)命令行提交

(1)执行命令提交作业。

讯享网

(2)在命令行中查看或取消作业。

 

2)上传HDFS提交

可以通过yarn.provided.lib.dirs配置选项指定位置,将flink的依赖上传到远程。

(1)上传flink的lib和plugins到HDFS上

讯享网

(2)上传自己的jar包到HDFS

 

(3)提交作业

讯享网

这种方式下,flink本身的依赖和用户jar可以预先上传到HDFS,而不需要单独发送到集群,这就使得作业提交更加轻量了。

小讯
上一篇 2025-04-18 19:37
下一篇 2025-04-30 20:58

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/199254.html