MAPREDUCE服务 MRS-YARN Java API接口介绍:常用接口

时间:2024-06-13 09:38:27

常用接口

YARN常用的Java类有如下几个。

  • ApplicationClientProtocol

    用于Client与ResourceManager之间。Client通过该协议可实现将应用程序提交到ResourceManager上,查询应用程序的运行状态或者中止应用程序等功能。

    表1 ApplicationClientProtocol常用方法

    方法

    说明

    forceKillApplication(KillApplicationRequest request)

    Client通过此接口请求RM中止一个已提交的任务。

    getApplicationAttemptReport(GetApplicationAttemptReportRequest request)

    Client通过此接口从RM获取指定ApplicationAttempt的报告信息。

    getApplicationAttempts(GetApplicationAttemptsRequest request)

    Client通过此接口从RM获取所有ApplicationAttempt的报告信息。

    getApplicationReport(GetApplicationReportRequest request)

    Client通过此接口从RM获取某个应用的报告信息。

    getApplications(GetApplicationsRequest request)

    Client通过此接口从RM获取满足一定过滤条件的应用的报告信息。

    getClusterMetrics(GetClusterMetricsRequest request)

    Client通过此接口从RM获取集群的Metrics。

    getClusterNodes(GetClusterNodesRequest request)

    Client通过此接口从RM获取集群中的所有节点信息。

    getContainerReport(GetContainerReportRequest request)

    Client通过此接口从RM获取某个Container的报告信息。

    getContainers(GetContainersRequest request)

    Client通过此接口从RM获取某个ApplicationAttemp的所有Container的报告信息。

    getDelegationToken(GetDelegationTokenRequest request)

    Client通过此接口获取授权票据,用于container访问相应的service。

    getNewApplication(GetNewApplicationRequest request)

    Client通过此接口获取一个新的应用ID号,用于提交新的应用。

    getQueueInfo(GetQueueInfoRequest request)

    Client通过此接口从RM中获取队列的相关信息。

    getQueueUserAcls(GetQueueUserAclsInfoRequest request)

    Client通过此接口从RM中获取当前用户的队列访问权限信息。

    moveApplicationAcrossQueues(MoveApplicationAcrossQueuesRequest request)

    移动一个应用到新的队列。

    submitApplication(SubmitApplicationRequest request)

    Client通过此接口提交一个新的应用到RM。

  • ApplicationMasterProtocol

    用于ApplicationMaster与ResourceManager之间。ApplicationMaster使用该协议向ResourceManager注册、申请资源、获取各个任务的运行情况等。

    表2 ApplicationMasterProtocol常用方法

    方法

    说明

    allocate(AllocateRequest request)

    AM通过此接口提交资源分配申请。

    finishApplicationMaster(FinishApplicationMasterRequest request)

    AM通过此接口通知RM其运行成功或者失败。

    registerApplicationMaster(RegisterApplicationMasterRequest request)

    AM通过此接口向RM进行注册。

  • ContainerManagementProtocol

    用于ApplicationMaster与NodeManager之间。ApplicationMaster使用该协议要求NodeManager启动/中止Container或者查询Container的运行状态。

    表3 ContainerManagementProtocol常用方法

    方法

    说明

    getContainerStatuses(GetContainerStatusesRequest request)

    AM通过此接口向NM请求Containers的当前状态信息。

    startContainers(StartContainersRequest request)

    AM通过此接口向NM提供需要启动的containers列表的请求。

    stopContainers(StopContainersRequest request)

    AM通过此接口请求NM停止一系列已分配的Containers。

support.huaweicloud.com/devg-lts-mrs/mrs_07_430004.html