内容提要
distributedShell是Yarn的应用程序,用于压测Yarn。用户通过初始化Client对象提交作业,核心流程包括连接Yarn、申请AppId和提交作业,作业信息在ApplicationSubmissionContext中配置,AM负责管理作业执行和资源分配。
关键要点
-
distributedShell是Yarn的应用程序,用于压测Yarn。
-
用户通过初始化Client对象提交作业,核心流程包括连接Yarn、申请AppId和提交作业。
-
作业信息在ApplicationSubmissionContext中配置,AM负责管理作业执行和资源分配。
-
使用示例提供了提交作业的命令。
-
入口类为org.apache.hadoop.yarn.applications.distributedshell.Client,主类在pom文件中定义。
-
核心流程包括初始化Client对象、初始化Client和提交作业到Yarn。
-
初始化阶段包括创建Yarn连接和初始化参数列表。
-
作业提交前需要向RM申请AppId,作业信息在ApplicationSubmissionContext中设置。
-
AM的核心代码在ApplicationMaster.java中,主要负责与RM和NM的连接。
-
AM启动后需要注册到RM,申请普通Container并启动Container。
延伸问答
distributedShell的主要功能是什么?
distributedShell是Yarn的应用程序,用于对Yarn进行压测。
如何提交作业到Yarn?
用户需要初始化Client对象,连接Yarn,申请AppId,并在ApplicationSubmissionContext中配置作业信息后提交作业。
distributedShell的入口类是什么?
入口类为org.apache.hadoop.yarn.applications.distributedshell.Client。
在初始化Client对象时需要做哪些准备?
初始化Client对象时需要创建Yarn的连接和初始化支持的参数列表。
ApplicationMaster在作业执行中负责什么?
ApplicationMaster负责管理作业执行和资源分配,并与ResourceManager和NodeManager进行连接。
提交作业前需要申请什么?
提交作业前需要向ResourceManager申请AppId。