You are viewing a plain text version of this content. The canonical link for it is here.
Posted to yarn-issues@hadoop.apache.org by "Billie Rinaldi (JIRA)" <ji...@apache.org> on 2017/12/05 17:02:00 UTC

[jira] [Commented] (YARN-7540) Convert yarn app cli to call yarn api services

    [ https://issues.apache.org/jira/browse/YARN-7540?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16278862#comment-16278862 ] 

Billie Rinaldi commented on YARN-7540:
--------------------------------------

I haven't tested the patch manually yet. Hopefully I will have time for this later this week. These are the comments I have so far:
* ApiServiceClient doesn't need to store a copy of the configuration; it can call getConfig() to access the configuration that will be initialized in AbstractService.serviceInit
* Instead of this implementation of ApiServiceClient.getRMAddress, I suspect we should be doing something similar to RMWebApp.buildRedirectPath or reusing existing utility methods like RMHAUtils.getRMHAWebappAddresses
* The enableFastLaunch method probably isn't working because the ServiceClient needs to be inited
* The patch doesn't apply because the log statement added in ApiServer has already been added
* There are a couple of problems with the NATIVE_TYPE. For one, the name is confusing; I don't think we should use "native" for this. Also, there is no way to create an application that has NATIVE_TYPE, because YARN service is coded to use "yarn-service" through the YarnServiceConstants.APP_TYPE variable. I would think we should just make the new ApiServiceClient the only provided AppAdminClient, but I guess that would leave us unable to unit test some features that it's good to have unit tests for. What do you think?

> Convert yarn app cli to call yarn api services
> ----------------------------------------------
>
>                 Key: YARN-7540
>                 URL: https://issues.apache.org/jira/browse/YARN-7540
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>            Reporter: Eric Yang
>            Assignee: Eric Yang
>             Fix For: yarn-native-services
>
>         Attachments: YARN-7540.001.patch, YARN-7540.002.patch
>
>
> For YARN docker application to launch through CLI, it works differently from launching through REST API.  All application launched through REST API is currently stored in yarn user HDFS home directory.  Application managed through CLI are stored into individual user's HDFS home directory.  For consistency, we want to have yarn app cli to interact with API service to manage applications.  For performance reason, it is easier to implement list all applications from one user's home directory instead of crawling all user's home directories.  For security reason, it is safer to access only one user home directory instead of all users.  Given the reasons above, the proposal is to change how {{yarn app -launch}}, {{yarn app -list}} and {{yarn app -destroy}} work.  Instead of calling HDFS API and RM API to launch containers, CLI will be converted to call API service REST API resides in RM.  RM perform the persist and operations to launch the actual application.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: yarn-issues-help@hadoop.apache.org