[jira] [Created] (YARN-3252) YARN LinuxContainerExecutor runs as nobody in Simple Security mode for all applications

2015-02-24 Thread Eric Yang (JIRA)
Eric Yang created YARN-3252:
---

 Summary: YARN LinuxContainerExecutor runs as nobody in Simple 
Security mode for all applications
 Key: YARN-3252
 URL: https://issues.apache.org/jira/browse/YARN-3252
 Project: Hadoop YARN
  Issue Type: Bug
Affects Versions: 2.5.2, 2.5.1, 2.6.0, 2.4.0, 2.3.0
 Environment: Linux
Reporter: Eric Yang
Priority: Critical


When using YARN + Slider + LinuxContainerExecutor, all slider application are 
running as nobody.  This is because the modification in YARN-1253 to restrict 
all containers to run as a single user.  This becomes a exploite to any 
application that runs inside YARN + Slider + LCE.  The original behavior is 
more correct.  The original statement indicated that users can impersonate any 
other users.  This supposed to be only valid for proxy users, who can proxy as 
other users.  It is designed as intended that the service user needs to be 
trusted by the framework to impersonate end users.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-3252) YARN LinuxContainerExecutor runs as nobody in Simple Security mode for all applications

2015-02-24 Thread Eric Yang (JIRA)

[ 
https://issues.apache.org/jira/browse/YARN-3252?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14335677#comment-14335677
 ] 

Eric Yang commented on YARN-3252:
-

Thank you Allen.  By using the fix in YARN-2424, it is possible to run 
application as submitted user.  Proxy user concept could be an enhancement to 
ensure only a small set of users have privileges to run core services.  Such as 
Spark on YARN or HBase on YARN, those users are supposely trusted services.  
Some proxy user rules in YARN can help to reduce the security risk that 
YARN-1253 was originally concerned about.

 YARN LinuxContainerExecutor runs as nobody in Simple Security mode for all 
 applications
 ---

 Key: YARN-3252
 URL: https://issues.apache.org/jira/browse/YARN-3252
 Project: Hadoop YARN
  Issue Type: Bug
Affects Versions: 2.3.0, 2.4.0, 2.6.0, 2.5.1, 2.5.2
 Environment: Linux
Reporter: Eric Yang
Priority: Critical

 When using YARN + Slider + LinuxContainerExecutor, all slider application are 
 running as nobody.  This is because the modification in YARN-1253 to restrict 
 all containers to run as a single user.  This becomes a exploite to any 
 application that runs inside YARN + Slider + LCE.  The original behavior is 
 more correct.  The original statement indicated that users can impersonate 
 any other users.  This supposed to be only valid for proxy users, who can 
 proxy as other users.  It is designed as intended that the service user needs 
 to be trusted by the framework to impersonate end users.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)


[jira] [Commented] (YARN-4266) Allow users to enter containers as UID:GID pair instead of by username

2017-08-22 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-4266:
-

+1 works on my local build and pass test-patch test.

> Allow users to enter containers as UID:GID pair instead of by username
> --
>
> Key: YARN-4266
> URL: https://issues.apache.org/jira/browse/YARN-4266
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn
>Reporter: Sidharta Seethana
>Assignee: luhuichun
> Attachments: YARN-4266.001.patch, YARN-4266.001.patch, 
> YARN-4266.002.patch, YARN-4266.003.patch, 
> YARN-4266_Allow_whitelisted_users_to_disable_user_re-mapping.pdf, 
> YARN-4266_Allow_whitelisted_users_to_disable_user_re-mapping_v2.pdf, 
> YARN-4266_Allow_whitelisted_users_to_disable_user_re-mapping_v3.pdf, 
> YARN-4266-branch-2.8.001.patch
>
>
> Docker provides a mechanism (the --user switch) that enables us to specify 
> the user the container processes should run as. We use this mechanism today 
> when launching docker containers . In non-secure mode, we run the docker 
> container based on 
> `yarn.nodemanager.linux-container-executor.nonsecure-mode.local-user` and in 
> secure mode, as the submitting user. However, this mechanism breaks down with 
> a large number of 'pre-created' images which don't necessarily have the users 
> available within the image. Examples of such images include shared images 
> that need to be used by multiple users. We need a way in which we can allow a 
> pre-defined set of users to run containers based on existing images, without 
> using the --user switch. There are some implications of disabling this user 
> squashing that we'll need to work through : log aggregation, artifact 
> deletion etc.,



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

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



[jira] [Updated] (YARN-7066) Add ability to specify volumes to mount for DockerContainerRuntime

2017-08-22 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7066?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7066:

Issue Type: Sub-task  (was: New Feature)
Parent: YARN-3611

> Add ability to specify volumes to mount for DockerContainerRuntime
> --
>
> Key: YARN-7066
> URL: https://issues.apache.org/jira/browse/YARN-7066
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn-native-services
>Affects Versions: 3.0.0-beta1
>Reporter: Eric Yang
>
> Yarnfile describes environment, docker image, and configuration template for 
> launching docker containers in YARN.  It would be nice to have ability to 
> specify the volumes to mount.  This can be used in combination to 
> AMBARI-21748 to mount HDFS as data directories to docker containers.



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

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



[jira] [Comment Edited] (YARN-7193) Implement REST API for register Yarnfile in application catalog

2017-09-14 Thread Eric Yang (JIRA)

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

Eric Yang edited comment on YARN-7193 at 9/15/17 5:26 AM:
--

Fixed firebug warnings, author tag, javadoc and check styles warnings.  The 
unit test failures are not related to code changes in this JIRA.


was (Author: eyang):
Fixed firebug warnings, author tag, and check styles warnings.  The unit test 
failures are not related to code changes in this JIRA.

> Implement REST API for register Yarnfile in application catalog
> ---
>
> Key: YARN-7193
> URL: https://issues.apache.org/jira/browse/YARN-7193
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: applications
>Affects Versions: 3.1.0
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7193.yarn-native-services.001.patch, 
> YARN-7193.yarn-native-services.002.patch, 
> YARN-7193.yarn-native-services.003.patch
>
>
> For support ability to register and index Yarnfile, we need a set of REST API 
> to register, search, and recommend applications from application catalog.



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

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



[jira] [Updated] (YARN-7193) Implement REST API for register Yarnfile in application catalog

2017-09-14 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7193?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7193:

Attachment: YARN-7193.yarn-native-services.003.patch

Fixed firebug warnings, author tag, and check styles warnings.  The unit test 
failures are not related to code changes in this JIRA.

> Implement REST API for register Yarnfile in application catalog
> ---
>
> Key: YARN-7193
> URL: https://issues.apache.org/jira/browse/YARN-7193
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: applications
>Affects Versions: 3.1.0
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7193.yarn-native-services.001.patch, 
> YARN-7193.yarn-native-services.002.patch, 
> YARN-7193.yarn-native-services.003.patch
>
>
> For support ability to register and index Yarnfile, we need a set of REST API 
> to register, search, and recommend applications from application catalog.



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

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



[jira] [Updated] (YARN-7193) Implement REST API for register Yarnfile in application catalog

2017-09-15 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7193?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7193:

Attachment: YARN-7193.yarn-native-services.004.patch

Fixed checkstyle, white space and firebugs issues.  The unit test failures are 
test case race conditions with network timeout.  The test failure exists 
independent of this patch.

> Implement REST API for register Yarnfile in application catalog
> ---
>
> Key: YARN-7193
> URL: https://issues.apache.org/jira/browse/YARN-7193
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: applications
>Affects Versions: 3.1.0
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7193.yarn-native-services.001.patch, 
> YARN-7193.yarn-native-services.002.patch, 
> YARN-7193.yarn-native-services.003.patch, 
> YARN-7193.yarn-native-services.004.patch
>
>
> For support ability to register and index Yarnfile, we need a set of REST API 
> to register, search, and recommend applications from application catalog.



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

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



[jira] [Updated] (YARN-6626) Embed REST API service into RM

2017-09-18 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-6626?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-6626:

Attachment: (was: YARN-6626.yarn-native-services.001.patch)

> Embed REST API service into RM
> --
>
> Key: YARN-6626
> URL: https://issues.apache.org/jira/browse/YARN-6626
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Gour Saha
> Fix For: yarn-native-services
>
> Attachments: YARN-6626.yarn-native-services.001.patch
>
>
> As of now the deployment model of the Native Services REST API service is 
> standalone. There are several cross-cutting solutions that can be inherited 
> for free (kerberos, HA, ACLs, trusted proxy support, etc.) by the REST API 
> service if it is embedded into the RM process. In fact we can expose the REST 
> API via the same port as RM UI (8088 default). The URI path 
> /services/v1/applications will distinguish the REST API calls from other RM 
> APIs.



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

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



[jira] [Updated] (YARN-6626) Embed REST API service into RM

2017-09-18 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-6626?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-6626:

Attachment: YARN-6626.yarn-native-services.001.patch

> Embed REST API service into RM
> --
>
> Key: YARN-6626
> URL: https://issues.apache.org/jira/browse/YARN-6626
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Gour Saha
> Fix For: yarn-native-services
>
> Attachments: YARN-6626.yarn-native-services.001.patch
>
>
> As of now the deployment model of the Native Services REST API service is 
> standalone. There are several cross-cutting solutions that can be inherited 
> for free (kerberos, HA, ACLs, trusted proxy support, etc.) by the REST API 
> service if it is embedded into the RM process. In fact we can expose the REST 
> API via the same port as RM UI (8088 default). The URI path 
> /services/v1/applications will distinguish the REST API calls from other RM 
> APIs.



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

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



[jira] [Commented] (YARN-7193) Implement REST API for register Yarnfile in application catalog

2017-09-18 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7193:
-

This modifies dev-support/docker/Dockerfile to include a more recent version of 
nodejs, and apidoc for documenting REST API.  However, JDK 1.7 seems to have 
disappeared from Oracle website.  This broke the pre-commit test for patch 005. 
 Do we need to keep dev-support/docker/Dockerfile and 
patchprocess/yetus-0.4.0-lib/precommit/test-patch-docker/Dockerfile in sync?  
Nodejs required dependencies are not described in yetus version of Dockerfile.

> Implement REST API for register Yarnfile in application catalog
> ---
>
> Key: YARN-7193
> URL: https://issues.apache.org/jira/browse/YARN-7193
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: applications
>Affects Versions: 3.1.0
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7193.yarn-native-services.001.patch, 
> YARN-7193.yarn-native-services.002.patch, 
> YARN-7193.yarn-native-services.003.patch, 
> YARN-7193.yarn-native-services.004.patch, 
> YARN-7193.yarn-native-services.005.patch
>
>
> For support ability to register and index Yarnfile, we need a set of REST API 
> to register, search, and recommend applications from application catalog.



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

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



[jira] [Updated] (YARN-7193) Implement REST API for register Yarnfile in application catalog

2017-09-16 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7193?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7193:

Attachment: YARN-7193.yarn-native-services.005.patch

> Implement REST API for register Yarnfile in application catalog
> ---
>
> Key: YARN-7193
> URL: https://issues.apache.org/jira/browse/YARN-7193
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: applications
>Affects Versions: 3.1.0
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7193.yarn-native-services.001.patch, 
> YARN-7193.yarn-native-services.002.patch, 
> YARN-7193.yarn-native-services.003.patch, 
> YARN-7193.yarn-native-services.004.patch, 
> YARN-7193.yarn-native-services.005.patch
>
>
> For support ability to register and index Yarnfile, we need a set of REST API 
> to register, search, and recommend applications from application catalog.



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

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



[jira] [Updated] (YARN-7201) Add more sophisticated example YARN service

2017-09-18 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7201:

Description: 
We can show case the following capabilities in the YARN service examples:

#  Description of the service
#  Component dependencies
#  How to mount HDFS volume via NFS Gateway
# Enable privileged container
# Quick link to web application
# Queue to submit

  was:
We can show case the following capabilities in the YARN service examples:

#  Description of the service
#  Component dependencies
#  How to mount HDFS volume via NFS Gateway
# Enforce non-privileged container
# Enable privileged container
# Quick link to web application
# Queue to submit


> Add more sophisticated example YARN service
> ---
>
> Key: YARN-7201
> URL: https://issues.apache.org/jira/browse/YARN-7201
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>
> We can show case the following capabilities in the YARN service examples:
> #  Description of the service
> #  Component dependencies
> #  How to mount HDFS volume via NFS Gateway
> # Enable privileged container
> # Quick link to web application
> # Queue to submit



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

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



[jira] [Updated] (YARN-7201) Add more sophisticated example YARN service

2017-09-18 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7201:

Description: 
We can show case the following capabilities in the YARN service examples:

#  Description of the service
#  Component dependencies
#  How to mount HDFS volume via NFS Gateway
# Enable privileged container
# Quick link to web application
# Queue to submit
# Use private docker registry

  was:
We can show case the following capabilities in the YARN service examples:

#  Description of the service
#  Component dependencies
#  How to mount HDFS volume via NFS Gateway
# Enable privileged container
# Quick link to web application
# Queue to submit


> Add more sophisticated example YARN service
> ---
>
> Key: YARN-7201
> URL: https://issues.apache.org/jira/browse/YARN-7201
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>
> We can show case the following capabilities in the YARN service examples:
> #  Description of the service
> #  Component dependencies
> #  How to mount HDFS volume via NFS Gateway
> # Enable privileged container
> # Quick link to web application
> # Queue to submit
> # Use private docker registry



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

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



[jira] [Updated] (YARN-7201) Add more sophisticated example YARN service

2017-09-18 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7201:

Description: 
We can show case the following capabilities in the YARN service examples:

#  Description of the service
#  Component dependencies
#  How to mount HDFS volume via NFS Gateway
# Enforce non-privileged container
# Enable privileged container
# Quick link to web application
# Queue to submit

> Add more sophisticated example YARN service
> ---
>
> Key: YARN-7201
> URL: https://issues.apache.org/jira/browse/YARN-7201
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>
> We can show case the following capabilities in the YARN service examples:
> #  Description of the service
> #  Component dependencies
> #  How to mount HDFS volume via NFS Gateway
> # Enforce non-privileged container
> # Enable privileged container
> # Quick link to web application
> # Queue to submit



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

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



[jira] [Commented] (YARN-6626) Embed REST API service into RM

2017-09-18 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-6626:
-

Base on new finding that ui2 webapp is highly coupled with RMWebServices.java.  
However /ui2 and RMWebServices are initialized are two separate web 
applications.  Java Sessions are not synchronized between both web 
applications.  At this time, ui2 is pure javascript based webapp.  Java session 
is not yet a real problem.  However, it might be best to manage application 
oriented REST end points independent from ui2 webapplication to avoid 
introducing out of sync Java session problems.


> Embed REST API service into RM
> --
>
> Key: YARN-6626
> URL: https://issues.apache.org/jira/browse/YARN-6626
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Gour Saha
> Fix For: yarn-native-services
>
> Attachments: YARN-6626.yarn-native-services.001.patch
>
>
> As of now the deployment model of the Native Services REST API service is 
> standalone. There are several cross-cutting solutions that can be inherited 
> for free (kerberos, HA, ACLs, trusted proxy support, etc.) by the REST API 
> service if it is embedded into the RM process. In fact we can expose the REST 
> API via the same port as RM UI (8088 default). The URI path 
> /services/v1/applications will distinguish the REST API calls from other RM 
> APIs.



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

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



[jira] [Commented] (YARN-5534) Allow whitelisted volume mounts

2017-09-18 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-5534:
-

[~miklos.szeg...@cloudera.com]  I think core-site.xml make most sense to ensure 
both hdfs and yarn can agree on same security setting even though hdfs service 
doesn't require knowledge of this today.  The idea of global white list and job 
specific white lists, have their own attractiveness.

However, I think having global white list in container-executor.cfg might be 
risky.  If the information is leaked and admin did not secure white list mount 
point properly, then the system could be vulnerable to attack.  For white list, 
more eye balls can examine the configuration, would make the system more 
secure.  On the other hand, if a black list is to be implemented, then it might 
have advantage to be in container-executor.cfg and readable by root only.  
Basic security through obscurity can be performed with some level of 
effectiveness.

> Allow whitelisted volume mounts 
> 
>
> Key: YARN-5534
> URL: https://issues.apache.org/jira/browse/YARN-5534
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn
>Reporter: luhuichun
>Assignee: Shane Kumpf
> Attachments: YARN-5534.001.patch, YARN-5534.002.patch, 
> YARN-5534.003.patch
>
>
> Introduction 
> Mounting files or directories from the host is one way of passing 
> configuration and other information into a docker container. 
> We could allow the user to set a list of mounts in the environment of 
> ContainerLaunchContext (e.g. /dir1:/targetdir1,/dir2:/targetdir2). 
> These would be mounted read-only to the specified target locations. This has 
> been resolved in YARN-4595
> 2.Problem Definition
> Bug mounting arbitrary volumes into a Docker container can be a security risk.
> 3.Possible solutions
> one approach to provide safe mounts is to allow the cluster administrator to 
> configure a set of parent directories as white list mounting directories.
>  Add a property named yarn.nodemanager.volume-mounts.white-list, when 
> container executor do mount checking, only the allowed directories or 
> sub-directories can be mounted. 



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

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



[jira] [Updated] (YARN-7201) Add more sophisticated example YARN service

2017-09-18 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7201:

Attachment: YARN-7201.yarn-native-services.001.patch

Example for deploying Apache, MySQL, PHPMyAdmin docker containers.

> Add more sophisticated example YARN service
> ---
>
> Key: YARN-7201
> URL: https://issues.apache.org/jira/browse/YARN-7201
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
> Attachments: YARN-7201.yarn-native-services.001.patch
>
>
> We can show case the following capabilities in the YARN service examples:
> #  Description of the service
> #  Component dependencies
> #  How to mount HDFS volume via NFS Gateway
> # Enable privileged container
> # Quick link to web application
> # Queue to submit
> # Use private docker registry



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

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



[jira] [Commented] (YARN-7215) REST API to list all deployed services by the same user

2017-09-19 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7215:
-

Data stored in ZooKeeper can not exceed 1MB per node.  It is possible for large 
scale application to exceed that limit when the hostnames and config key/value 
pairs are stored in the state or spec file.  Application state maybe fine, but 
I can't recommend to use ZooKeeper as low latency storage for application 
configuration.  Ambari version 0.0 (HMS) had implemented similar use case, and 
it quickly hits z-node size limitation.

> REST API to list all deployed services by the same user
> ---
>
> Key: YARN-7215
> URL: https://issues.apache.org/jira/browse/YARN-7215
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
>
> In Slider, it is possible to list deployed applications from the same user by 
> using:
> {code}
> slider list
> {code}
> This API can help UI to display application and services deployed by the same 
> user.
> Apiserver does not have ability to list all applications/services at this 
> time.  This API requires fast response to list all applications because it is 
> a common UI operation.  ApiServer deployed applications persist configuration 
> in HDFS similar to slider, but using directory listing to display deployed 
> application might cost too much overhead to namenode.  We may want to use 
> alternative storage mechanism to cache deployed application configuration to 
> accelerate the response time of list deployed applications.



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

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



[jira] [Updated] (YARN-7215) REST API to list all deployed services by the same user

2017-09-19 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7215:

Issue Type: Sub-task  (was: Bug)
Parent: YARN-7054

> REST API to list all deployed services by the same user
> ---
>
> Key: YARN-7215
> URL: https://issues.apache.org/jira/browse/YARN-7215
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
>
> In Slider, it is possible to list deployed applications from the same user by 
> using:
> 
> slider list
> 
> This API can help UI to display application and services deployed by the same 
> user.
> Apiserver does not have ability to list all applications/services at this 
> time.  This API requires fast response to list all applications because it is 
> a common UI operation.  ApiServer deployed applications persist configuration 
> in HDFS similar to slider, but using directory listing to display deployed 
> application might cost too much overhead to namenode.  We may want to use 
> alternative storage mechanism to cache deployed application configuration to 
> accelerate the response time of list deployed applications.



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

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



[jira] [Updated] (YARN-7216) Missing ability to list configuration vs status

2017-09-19 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7216:

Description: 
API Server has /ws/v1/services/{service_name}.  This REST end point returns 
Services object which contains both configuration and status.  When status or 
macro based parameters changed in Services object, it can confuse UI code to 
making configuration changes.  The suggestion is to preserve a copy of 
configuration object independent of status object.  This gives UI ability to 
change services configuration and update configuration.

Similar to Ambari, it might provide better information if we have the following 
separated REST end points:

{code}
 /ws/v1/services/[service_name]/config
 /ws/v1/services/[service_name]/status
{code}


  was:
API Server has /ws/v1/services/{service_name}.  This REST end point returns 
Services object which contains both configuration and status.  When status or 
macro based parameters changed in Services object, it can confuse UI code to 
making configuration changes.  The suggestion is to preserve a copy of 
configuration object independent of status object.  This gives UI ability to 
change services configuration and update configuration.

Similar to Ambari, it might provide better information if we have the following 
separated REST end points:

{code}
/ws/v1/services/{service_name}/config
/ws/v1/services/{service_name}/status
{code}



> Missing ability to list configuration vs status
> ---
>
> Key: YARN-7216
> URL: https://issues.apache.org/jira/browse/YARN-7216
> Project: Hadoop YARN
>  Issue Type: Bug
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
>
> API Server has /ws/v1/services/{service_name}.  This REST end point returns 
> Services object which contains both configuration and status.  When status or 
> macro based parameters changed in Services object, it can confuse UI code to 
> making configuration changes.  The suggestion is to preserve a copy of 
> configuration object independent of status object.  This gives UI ability to 
> change services configuration and update configuration.
> Similar to Ambari, it might provide better information if we have the 
> following separated REST end points:
> {code}
>  /ws/v1/services/[service_name]/config
>  /ws/v1/services/[service_name]/status
> {code}



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

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



[jira] [Created] (YARN-7220) Use apidoc for REST API documentation

2017-09-19 Thread Eric Yang (JIRA)
Eric Yang created YARN-7220:
---

 Summary: Use apidoc for REST API documentation
 Key: YARN-7220
 URL: https://issues.apache.org/jira/browse/YARN-7220
 Project: Hadoop YARN
  Issue Type: Improvement
  Components: documentation
Reporter: Eric Yang
Assignee: Eric Yang


There are more REST API being developed in Hadoop, and it would be great to 
standardize on the method of generate REST API document.

There are several method done today:
Swagger YAML
Javadoc
Wiki pages
JIRA comments

The most frequently used method is JIRA comments and Wiki pages.  Both methods 
are prone to data loss through passage of time.  We will need a more effortless 
approach to maintain REST API documentation.  Swagger YAML can also be out of 
sync with reality, if new methods are added to java code directly.  Javadoc 
annotation seems like a good approach to maintain REST API document.  Both 
Jersey and Atlassian community has maven plugin to help generating REST API 
document, but those maven plugins have ceased to function.  After searching 
online for REST API documentation for a bit, [apidoc|http://apidocjs.com/] is 
one library that stand out.  This could be the ideal approach to manage Hadoop 
REST API document.  It supports javadoc like annotations, and generate 
beautiful schema changes documentation.

If this is accepted, I will add apidoc installation to dev-support Dockerfile, 
and pom.xml changes for javadoc plugin to ignore the custom tags.



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

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



[jira] [Commented] (YARN-7217) PUT method for update service for Service API doesn't function correctly

2017-09-19 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7217:
-

[~jianhe] Agree, spec will make this less confusing.

> PUT method for update service for Service API doesn't function correctly
> 
>
> Key: YARN-7217
> URL: https://issues.apache.org/jira/browse/YARN-7217
> Project: Hadoop YARN
>  Issue Type: Task
>  Components: api, applications
>Reporter: Eric Yang
>
> The PUT method for updateService API provides multiple functions:
> # Stopping a service.
> # Start a service.
> # Increase or decrease number of containers.
> The overloading is buggy depending on how the configuration should be applied.
> Scenario 1
> A user retrieves Service object from getService call, and the Service object 
> contains state: STARTED.  The user would like to increase number of 
> containers for the deployed service.  The JSON has been updated to increase 
> container count.  The PUT method does not actually increase container count.
> Scenario 2
> A user retrieves Service object from getService call, and the Service object 
> contains state: STOPPED.  The user would like to make a environment 
> configuration change.  The configuration does not get updated after PUT 
> method.
> This is possible to address by rearranging the logic of START/STOP after 
> configuration update.  However, there are other potential combinations that 
> can break PUT method.  For example, user like to make configuration changes, 
> but not yet restart the service until a later time.
> The alternative is to separate the PUT method into PUT method for 
> configuration vs status.  This increase the number of action that can be 
> performed.  New API could look like:
> {code}
> @PUT
> /ws/v1/services/[service_name]/config
> Request Data:
> {
>   "name":"[service_name]",
>   "number_of_containers": 5
> }
> {code}
> {code}
> @PUT
> /ws/v1/services/[service_name]/state
> Request data:
> {
>   "name": "[service_name]",
>   "state": "STOPPED|STARTED"
> }
> {code}



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

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



[jira] [Commented] (YARN-7215) REST API to list all deployed services by the same user

2017-09-19 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7215:
-

[~jianhe] How does RM handle a service that is in stopped state?  Stopped 
slider application does not have any record in resource manager.  Same slider 
application can have multiple Application ID when the application has been 
restarted.  Slider uses HDFS file to persist the paused application, but having 
resource manager to crawl through lists of HDFS directories to find stopped 
service seems like potential load attack to namenode.  It would be better to 
have the operational record index, and cached by well known mechanism like a 
SOLR collection.  This also reduces having to brew another random read/write, 
low latency, index, cache mechanism in YARN.  Both HBase and SOLR have solved 
random read/write on top of HDFS with some success.  It would be better to we 
use existing libraries that have been baked for several years than inventing 
something new for specialized purpose.

> REST API to list all deployed services by the same user
> ---
>
> Key: YARN-7215
> URL: https://issues.apache.org/jira/browse/YARN-7215
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
>
> In Slider, it is possible to list deployed applications from the same user by 
> using:
> {code}
> slider list
> {code}
> This API can help UI to display application and services deployed by the same 
> user.
> Apiserver does not have ability to list all applications/services at this 
> time.  This API requires fast response to list all applications because it is 
> a common UI operation.  ApiServer deployed applications persist configuration 
> in HDFS similar to slider, but using directory listing to display deployed 
> application might cost too much overhead to namenode.  We may want to use 
> alternative storage mechanism to cache deployed application configuration to 
> accelerate the response time of list deployed applications.



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

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



[jira] [Created] (YARN-7221) Add security check for privileged docker container

2017-09-19 Thread Eric Yang (JIRA)
Eric Yang created YARN-7221:
---

 Summary: Add security check for privileged docker container
 Key: YARN-7221
 URL: https://issues.apache.org/jira/browse/YARN-7221
 Project: Hadoop YARN
  Issue Type: Sub-task
Reporter: Eric Yang


When a docker is running with privileges, majority of the use case is to have 
some program running with root then drop privileges to another user.  i.e. 
httpd to start with privileged and bind to port 80, then drop privileges to www 
user.  

# We should add security check for submitting users, to verify they have "sudo" 
access to run privileged container.  
# We should remove --user=uid:gid for privileged containers.  
 
Docker can be launched with --privileged=true, and --user=uid:gid flag.  With 
this parameter combinations, user will not have access to become root user.  
All docker exec command will be drop to uid:gid user to run instead of granting 
privileges.  User can gain root privileges if container file system contains 
files that give user extra power, but this type of image is considered as 
dangerous.  Non-privileged user can launch container with special bits to 
acquire same level of root power.  Hence, we lose control of which image should 
be run with --privileges, and who have sudo rights to use privileged container 
images.  As the result, we should check for sudo access then decide to 
parameterize --privileged=true OR --user=uid:gid.  This will avoid leading 
developer down the wrong path.



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

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



[jira] [Updated] (YARN-7216) Missing ability to list configuration vs status

2017-09-19 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7216:

Issue Type: Sub-task  (was: Bug)
Parent: YARN-7054

> Missing ability to list configuration vs status
> ---
>
> Key: YARN-7216
> URL: https://issues.apache.org/jira/browse/YARN-7216
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
>
> API Server has /ws/v1/services/{service_name}.  This REST end point returns 
> Services object which contains both configuration and status.  When status or 
> macro based parameters changed in Services object, it can confuse UI code to 
> making configuration changes.  The suggestion is to preserve a copy of 
> configuration object independent of status object.  This gives UI ability to 
> change services configuration and update configuration.
> Similar to Ambari, it might provide better information if we have the 
> following separated REST end points:
> {code}
>  /ws/v1/services/[service_name]/config
>  /ws/v1/services/[service_name]/status
> {code}



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

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



[jira] [Updated] (YARN-7215) REST API to list all deployed services by the same user

2017-09-19 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7215:

Description: 
In Slider, it is possible to list deployed applications from the same user by 
using:

{code}
slider list
{code}

This API can help UI to display application and services deployed by the same 
user.
Apiserver does not have ability to list all applications/services at this time. 
 This API requires fast response to list all applications because it is a 
common UI operation.  ApiServer deployed applications persist configuration in 
HDFS similar to slider, but using directory listing to display deployed 
application might cost too much overhead to namenode.  We may want to use 
alternative storage mechanism to cache deployed application configuration to 
accelerate the response time of list deployed applications.

  was:
In Slider, it is possible to list deployed applications from the same user by 
using:


slider list


This API can help UI to display application and services deployed by the same 
user.
Apiserver does not have ability to list all applications/services at this time. 
 This API requires fast response to list all applications because it is a 
common UI operation.  ApiServer deployed applications persist configuration in 
HDFS similar to slider, but using directory listing to display deployed 
application might cost too much overhead to namenode.  We may want to use 
alternative storage mechanism to cache deployed application configuration to 
accelerate the response time of list deployed applications.


> REST API to list all deployed services by the same user
> ---
>
> Key: YARN-7215
> URL: https://issues.apache.org/jira/browse/YARN-7215
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
>
> In Slider, it is possible to list deployed applications from the same user by 
> using:
> {code}
> slider list
> {code}
> This API can help UI to display application and services deployed by the same 
> user.
> Apiserver does not have ability to list all applications/services at this 
> time.  This API requires fast response to list all applications because it is 
> a common UI operation.  ApiServer deployed applications persist configuration 
> in HDFS similar to slider, but using directory listing to display deployed 
> application might cost too much overhead to namenode.  We may want to use 
> alternative storage mechanism to cache deployed application configuration to 
> accelerate the response time of list deployed applications.



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

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



[jira] [Created] (YARN-7218) ApiServer REST API naming convention /ws/v1 is already used in Hadoop v2

2017-09-19 Thread Eric Yang (JIRA)
Eric Yang created YARN-7218:
---

 Summary: ApiServer REST API naming convention /ws/v1 is already 
used in Hadoop v2
 Key: YARN-7218
 URL: https://issues.apache.org/jira/browse/YARN-7218
 Project: Hadoop YARN
  Issue Type: Sub-task
  Components: api, applications
Reporter: Eric Yang
Assignee: Eric Yang


In YARN-6626, there is a desire to have ability to run ApiServer REST API in 
Resource Manager, this can eliminate the requirement to deploy another daemon 
service for submitting docker applications.  In YARN-5698, a new UI has been 
implemented as a separate web application.  There are some problems in the 
arrangement that can cause conflicts of how Java session are being managed.  
The root context of Resource Manager web application is /ws.  This is hard 
coded in startWebapp method in ResourceManager.java.  This means all the 
session management is applied to Web URL of /ws prefix.  /ui2 is independent of 
/ws context, therefore session management code doesn't apply to /ui2.  This 
could be a session management problem, if servlet based code is going to be 
introduced into /ui2 web application.

ApiServer code base is designed as a separate web application.  There is no 
easy way to inject a separate web application into the same /ws context because 
ResourceManager is already setup to bind to RMWebServices.  Unless ApiServer 
code is moved into RMWebServices, otherwise, they will not share the same 
session management.

The alternate solution is to keep ApiServer prefix URL independent of /ws 
context.  However, this will be a departure from YARN web services naming 
convention.  This can be loaded as a separate web application in Resource 
Manager jetty server.  One possible proposal is /app/v1/services.  This can 
keep ApiServer code modular and independent from Resource Manager.



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

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



[jira] [Created] (YARN-7217) PUT method for update service for Service API doesn't function correctly

2017-09-19 Thread Eric Yang (JIRA)
Eric Yang created YARN-7217:
---

 Summary: PUT method for update service for Service API doesn't 
function correctly
 Key: YARN-7217
 URL: https://issues.apache.org/jira/browse/YARN-7217
 Project: Hadoop YARN
  Issue Type: Task
  Components: api, applications
Reporter: Eric Yang


The PUT method for updateService API provides multiple functions:

# Stopping a service.
# Start a service.
# Increase or decrease number of containers.

The overloading is buggy depending on how the configuration should be applied.

Scenario 1
A user retrieves Service object from getService call, and the Service object 
contains state: STARTED.  The user would like to increase number of containers 
for the deployed service.  The JSON has been updated to increase container 
count.  The PUT method does not actually increase container count.

Scenario 2
A user retrieves Service object from getService call, and the Service object 
contains state: STOPPED.  The user would like to make a environment 
configuration change.  The configuration does not get updated after PUT method.

This is possible to address by rearranging the logic of START/STOP after 
configuration update.  However, there are other potential combinations that can 
break PUT method.  For example, user like to make configuration changes, but 
not yet restart the service until a later time.

The alternative is to separate the PUT method into PUT method for configuration 
vs status.  This increase the number of action that can be performed.  New API 
could look like:

{code}
@PUT
/ws/v1/services/[service_name]/config

Request Data:
{
  "name":"[service_name]",
  "number_of_containers": 5
}
{code}

{code}
@PUT
/ws/v1/services/[service_name]/state

Request data:
{
  "name": "[service_name]",
  "state": "STOPPED|STARTED"
}
{code}



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

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



[jira] [Comment Edited] (YARN-7215) REST API to list all deployed services by the same user

2017-09-19 Thread Eric Yang (JIRA)

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

Eric Yang edited comment on YARN-7215 at 9/19/17 10:19 PM:
---

[~jianhe] How does RM handle a service that is in stopped state?  Stopped 
slider application does not have any record in resource manager.  Same slider 
application can have multiple Application ID when the application has been 
restarted.  Slider uses HDFS file to persist the paused application, but having 
resource manager to crawl through lists of HDFS directories to find stopped 
service seems like potential load attack to namenode.  It would be better to 
have the operational record index, and cached by well known mechanism like a 
SOLR collection.  This also reduces having to brew another random read/write, 
low latency, index, cache mechanism in YARN.  Both HBase and SOLR have solved 
random read/write on top of HDFS with some success.  It would be better to use 
existing libraries that have been baked for several years than inventing 
something new for specialized purpose.


was (Author: eyang):
[~jianhe] How does RM handle a service that is in stopped state?  Stopped 
slider application does not have any record in resource manager.  Same slider 
application can have multiple Application ID when the application has been 
restarted.  Slider uses HDFS file to persist the paused application, but having 
resource manager to crawl through lists of HDFS directories to find stopped 
service seems like potential load attack to namenode.  It would be better to 
have the operational record index, and cached by well known mechanism like a 
SOLR collection.  This also reduces having to brew another random read/write, 
low latency, index, cache mechanism in YARN.  Both HBase and SOLR have solved 
random read/write on top of HDFS with some success.  It would be better to we 
use existing libraries that have been baked for several years than inventing 
something new for specialized purpose.

> REST API to list all deployed services by the same user
> ---
>
> Key: YARN-7215
> URL: https://issues.apache.org/jira/browse/YARN-7215
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
>
> In Slider, it is possible to list deployed applications from the same user by 
> using:
> {code}
> slider list
> {code}
> This API can help UI to display application and services deployed by the same 
> user.
> Apiserver does not have ability to list all applications/services at this 
> time.  This API requires fast response to list all applications because it is 
> a common UI operation.  ApiServer deployed applications persist configuration 
> in HDFS similar to slider, but using directory listing to display deployed 
> application might cost too much overhead to namenode.  We may want to use 
> alternative storage mechanism to cache deployed application configuration to 
> accelerate the response time of list deployed applications.



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

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



[jira] [Commented] (YARN-7215) REST API to list all deployed services by the same user

2017-09-20 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7215:
-

Slider list was not robust.  It take multiple seconds to respond to the query.  
If there are several hundred users using a UI to manage user's own application. 
 The retrieval of information should have low range of millisecond response 
time.  When application data are persisted in the same metastore with index and 
search capability, it will be easier to use the same storage mechanism to build 
application catalog.  Although it is easy to build a view of YARN deployed 
applications base on computing metadata stored on HDFS and ZooKeeper.  However, 
those services are not optimized for serving web application REST API.  Let's 
take one step further on reducing too many small file problem on HDFS and too 
big z-node on ZooKeeper in consideration of the design.  This will help to 
steer developers toward good design pattern.  I am open to suggestion to list 
yarn applications which can survive ResourceManager restart.

> REST API to list all deployed services by the same user
> ---
>
> Key: YARN-7215
> URL: https://issues.apache.org/jira/browse/YARN-7215
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
>
> In Slider, it is possible to list deployed applications from the same user by 
> using:
> {code}
> slider list
> {code}
> This API can help UI to display application and services deployed by the same 
> user.
> Apiserver does not have ability to list all applications/services at this 
> time.  This API requires fast response to list all applications because it is 
> a common UI operation.  ApiServer deployed applications persist configuration 
> in HDFS similar to slider, but using directory listing to display deployed 
> application might cost too much overhead to namenode.  We may want to use 
> alternative storage mechanism to cache deployed application configuration to 
> accelerate the response time of list deployed applications.



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

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



[jira] [Updated] (YARN-6626) Embed REST API service into RM

2017-09-21 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-6626?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-6626:

Attachment: YARN-6626.yarn-native-services.002.patch

Added ability to load ApiServer to RM as a web filter using reflection.  This 
is done to avoid Maven cyclic dependency on hadoop-yarn-services-api module.

> Embed REST API service into RM
> --
>
> Key: YARN-6626
> URL: https://issues.apache.org/jira/browse/YARN-6626
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Gour Saha
> Fix For: yarn-native-services
>
> Attachments: YARN-6626.yarn-native-services.001.patch, 
> YARN-6626.yarn-native-services.002.patch
>
>
> As of now the deployment model of the Native Services REST API service is 
> standalone. There are several cross-cutting solutions that can be inherited 
> for free (kerberos, HA, ACLs, trusted proxy support, etc.) by the REST API 
> service if it is embedded into the RM process. In fact we can expose the REST 
> API via the same port as RM UI (8088 default). The URI path 
> /services/v1/applications will distinguish the REST API calls from other RM 
> APIs.



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

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



[jira] [Commented] (YARN-7201) Add an apache httpd example YARN service

2017-09-21 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7201:
-

+1 for patch 007 to reflect the current state of the code base.

> Add an apache httpd example YARN service
> 
>
> Key: YARN-7201
> URL: https://issues.apache.org/jira/browse/YARN-7201
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
> Attachments: YARN-7201.yarn-native-services.001.patch, 
> YARN-7201.yarn-native-services.002.patch, 
> YARN-7201.yarn-native-services.003.patch, 
> YARN-7201.yarn-native-services.004.patch, 
> YARN-7201.yarn-native-services.005.patch, 
> YARN-7201.yarn-native-services.006.patch, 
> YARN-7201.yarn-native-services.007.patch
>
>
> Add an apache httpd example service



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

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



[jira] [Commented] (YARN-7201) Add an apache httpd example YARN service

2017-09-21 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7201:
-

+1 for patch 008.

> Add an apache httpd example YARN service
> 
>
> Key: YARN-7201
> URL: https://issues.apache.org/jira/browse/YARN-7201
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
> Attachments: YARN-7201.yarn-native-services.001.patch, 
> YARN-7201.yarn-native-services.002.patch, 
> YARN-7201.yarn-native-services.003.patch, 
> YARN-7201.yarn-native-services.004.patch, 
> YARN-7201.yarn-native-services.005.patch, 
> YARN-7201.yarn-native-services.006.patch, 
> YARN-7201.yarn-native-services.007.patch, 
> YARN-7201.yarn-native-services.008.patch
>
>
> Add an apache httpd example service



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

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



[jira] [Updated] (YARN-6626) Embed REST API service into RM

2017-09-22 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-6626?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-6626:

Attachment: YARN-6626.yarn-native-services.004.patch

Added @XmlType annotation to make data structure serializable when Jersey 
validates schema.

> Embed REST API service into RM
> --
>
> Key: YARN-6626
> URL: https://issues.apache.org/jira/browse/YARN-6626
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Gour Saha
> Fix For: yarn-native-services
>
> Attachments: YARN-6626.yarn-native-services.001.patch, 
> YARN-6626.yarn-native-services.002.patch, 
> YARN-6626.yarn-native-services.003.patch, 
> YARN-6626.yarn-native-services.004.patch
>
>
> As of now the deployment model of the Native Services REST API service is 
> standalone. There are several cross-cutting solutions that can be inherited 
> for free (kerberos, HA, ACLs, trusted proxy support, etc.) by the REST API 
> service if it is embedded into the RM process. In fact we can expose the REST 
> API via the same port as RM UI (8088 default). The URI path 
> /services/v1/applications will distinguish the REST API calls from other RM 
> APIs.



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

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



[jira] [Commented] (YARN-7221) Add security check for privileged docker container

2017-09-20 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7221:
-

[~chris.douglas] This is not a duplicate of YARN-6623.  This is extension to 
permit privileged containers, if the launching user has sudo rights to run 
docker or being part of docker group.

> Add security check for privileged docker container
> --
>
> Key: YARN-7221
> URL: https://issues.apache.org/jira/browse/YARN-7221
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Eric Yang
>
> When a docker is running with privileges, majority of the use case is to have 
> some program running with root then drop privileges to another user.  i.e. 
> httpd to start with privileged and bind to port 80, then drop privileges to 
> www user.  
> # We should add security check for submitting users, to verify they have 
> "sudo" access to run privileged container.  
> # We should remove --user=uid:gid for privileged containers.  
>  
> Docker can be launched with --privileged=true, and --user=uid:gid flag.  With 
> this parameter combinations, user will not have access to become root user.  
> All docker exec command will be drop to uid:gid user to run instead of 
> granting privileges.  User can gain root privileges if container file system 
> contains files that give user extra power, but this type of image is 
> considered as dangerous.  Non-privileged user can launch container with 
> special bits to acquire same level of root power.  Hence, we lose control of 
> which image should be run with --privileges, and who have sudo rights to use 
> privileged container images.  As the result, we should check for sudo access 
> then decide to parameterize --privileged=true OR --user=uid:gid.  This will 
> avoid leading developer down the wrong path.



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

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



[jira] [Commented] (YARN-5534) Allow whitelisted volume mounts

2017-09-15 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-5534:
-

Yarn-site.xml and core-site.xml are trusted configuration from Hdoop server 
point of view.  Hadoop Kerberos, and proxy users configuration are defined in 
the *.xml files.  WIthout trusting those configurations, Hadoop security fall 
apart.  There is keyword like final to lock configuration in place therefore an 
overlay of Hadoop configuration can not alter the configuration values.  Volume 
white list in core-site.xml or yarn-site.xml are secured.  There should be very 
little configuration in container-executor.cfg file to govern uid and banned 
user.  The rest of the logic in core-site.xml is preferred to ensure the logic 
is preprocessed in yarn user before handing off to root for execution.


> Allow whitelisted volume mounts 
> 
>
> Key: YARN-5534
> URL: https://issues.apache.org/jira/browse/YARN-5534
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn
>Reporter: luhuichun
>Assignee: Shane Kumpf
> Attachments: YARN-5534.001.patch, YARN-5534.002.patch, 
> YARN-5534.003.patch
>
>
> Introduction 
> Mounting files or directories from the host is one way of passing 
> configuration and other information into a docker container. 
> We could allow the user to set a list of mounts in the environment of 
> ContainerLaunchContext (e.g. /dir1:/targetdir1,/dir2:/targetdir2). 
> These would be mounted read-only to the specified target locations. This has 
> been resolved in YARN-4595
> 2.Problem Definition
> Bug mounting arbitrary volumes into a Docker container can be a security risk.
> 3.Possible solutions
> one approach to provide safe mounts is to allow the cluster administrator to 
> configure a set of parent directories as white list mounting directories.
>  Add a property named yarn.nodemanager.volume-mounts.white-list, when 
> container executor do mount checking, only the allowed directories or 
> sub-directories can be mounted. 



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

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



[jira] [Comment Edited] (YARN-5534) Allow whitelisted volume mounts

2017-09-15 Thread Eric Yang (JIRA)

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

Eric Yang edited comment on YARN-5534 at 9/15/17 9:58 PM:
--

Yarn-site.xml and core-site.xml are trusted configuration from Hdoop server 
point of view.  Hadoop Kerberos, and proxy users configuration are defined in 
the *.xml files.  WIthout trusting those configurations, Hadoop security fall 
apart.  There is keyword like final to lock configuration in place therefore an 
overlay of Hadoop configuration can not alter the configuration values.  Volume 
white list in core-site.xml or yarn-site.xml are secured.  There should be very 
little configuration in container-executor.cfg file to govern uid and banned 
user.  The rest of the logic in core-site.xml is preferred to ensure the logic 
is preprocessed in yarn user before handing off to root for execution.  YARN 
can act as a shielding user in pre-processing to make exploits more difficult.



was (Author: eyang):
Yarn-site.xml and core-site.xml are trusted configuration from Hdoop server 
point of view.  Hadoop Kerberos, and proxy users configuration are defined in 
the *.xml files.  WIthout trusting those configurations, Hadoop security fall 
apart.  There is keyword like final to lock configuration in place therefore an 
overlay of Hadoop configuration can not alter the configuration values.  Volume 
white list in core-site.xml or yarn-site.xml are secured.  There should be very 
little configuration in container-executor.cfg file to govern uid and banned 
user.  The rest of the logic in core-site.xml is preferred to ensure the logic 
is preprocessed in yarn user before handing off to root for execution.


> Allow whitelisted volume mounts 
> 
>
> Key: YARN-5534
> URL: https://issues.apache.org/jira/browse/YARN-5534
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn
>Reporter: luhuichun
>Assignee: Shane Kumpf
> Attachments: YARN-5534.001.patch, YARN-5534.002.patch, 
> YARN-5534.003.patch
>
>
> Introduction 
> Mounting files or directories from the host is one way of passing 
> configuration and other information into a docker container. 
> We could allow the user to set a list of mounts in the environment of 
> ContainerLaunchContext (e.g. /dir1:/targetdir1,/dir2:/targetdir2). 
> These would be mounted read-only to the specified target locations. This has 
> been resolved in YARN-4595
> 2.Problem Definition
> Bug mounting arbitrary volumes into a Docker container can be a security risk.
> 3.Possible solutions
> one approach to provide safe mounts is to allow the cluster administrator to 
> configure a set of parent directories as white list mounting directories.
>  Add a property named yarn.nodemanager.volume-mounts.white-list, when 
> container executor do mount checking, only the allowed directories or 
> sub-directories can be mounted. 



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

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



[jira] [Commented] (YARN-5534) Allow whitelisted volume mounts

2017-09-16 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-5534:
-

[~miklos.szeg...@cloudera.com] It's a cute perspective, but there might be 
usability issues.  Today, it is possible to keep container-executor.cfg read 
only to root and yarn user.  Authorized and banned users are only known to root 
user and yarn user.  This is similar to sudoers file that managers who has 
sudoers rights.  

Other the other hand, file system mount points needs to be known by all users 
who would like to use mount points.  It would be more convenient to give 
everyone read access to file system mount point file, like /etc/fstab.  

If volume white list is mixed with user privileges control, then we lose some 
flexibility to keep banned users a secret or we lose ability to know what mount 
points can be used.  With this reason, I prefer to keep white list volume 
separated from container-executor.cfg for separation of duty from security 
point of view.
However, black list volume maintained in container-executor.cfg, can make 
attack more difficult.

> Allow whitelisted volume mounts 
> 
>
> Key: YARN-5534
> URL: https://issues.apache.org/jira/browse/YARN-5534
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn
>Reporter: luhuichun
>Assignee: Shane Kumpf
> Attachments: YARN-5534.001.patch, YARN-5534.002.patch, 
> YARN-5534.003.patch
>
>
> Introduction 
> Mounting files or directories from the host is one way of passing 
> configuration and other information into a docker container. 
> We could allow the user to set a list of mounts in the environment of 
> ContainerLaunchContext (e.g. /dir1:/targetdir1,/dir2:/targetdir2). 
> These would be mounted read-only to the specified target locations. This has 
> been resolved in YARN-4595
> 2.Problem Definition
> Bug mounting arbitrary volumes into a Docker container can be a security risk.
> 3.Possible solutions
> one approach to provide safe mounts is to allow the cluster administrator to 
> configure a set of parent directories as white list mounting directories.
>  Add a property named yarn.nodemanager.volume-mounts.white-list, when 
> container executor do mount checking, only the allowed directories or 
> sub-directories can be mounted. 



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

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



[jira] [Updated] (YARN-6626) Embed REST API service into RM

2017-09-17 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-6626?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-6626:

Attachment: YARN-6626.yarn-native-services.001.patch

First draft for bundle api service REST API in RM.  This JIRA depends on 
pom.xml file modification in YARN-7193.

The current approach is to bundle the REST API code as a jar file, and allow 
hadoop-yarn-ui project to bundle the REST API jar file, and configure web.xml 
to load REST API classes.

The drawback of this approach is the URI is prefixed with /ui2 instead of 
/ws/v1/.  /ws/v1/ is already taken by resource manager's own REST API.  We 
probably want to label this as /ws/v2/ or /app/v1/ as prefix of REST API to 
avoid confusion between resource manager API vs application REST API.

The alternative method is to move the code from ApiServer.java into 
RMWebApp.java, which makes that file bloated, and can't be separated as another 
standalone server.

> Embed REST API service into RM
> --
>
> Key: YARN-6626
> URL: https://issues.apache.org/jira/browse/YARN-6626
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Gour Saha
> Fix For: yarn-native-services
>
> Attachments: YARN-6626.yarn-native-services.001.patch
>
>
> As of now the deployment model of the Native Services REST API service is 
> standalone. There are several cross-cutting solutions that can be inherited 
> for free (kerberos, HA, ACLs, trusted proxy support, etc.) by the REST API 
> service if it is embedded into the RM process. In fact we can expose the REST 
> API via the same port as RM UI (8088 default). The URI path 
> /services/v1/applications will distinguish the REST API calls from other RM 
> APIs.



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

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



[jira] [Commented] (YARN-7197) Add support for a volume blacklist for docker containers

2017-09-14 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7197:
-

Consider the following scenarios:

# Docker container with --privileged=true flag enabled and run systemd in 
docker container with: /sys/fs/cgroup:/sys/fs/cgroup:ro.  This allows systemd 
to run in docker container, while protecting cgroup control enforced from host 
layer.
# Docker container attempt to mount /run should be forbidden, always 
initialized with tmpfs.
# Allow docker container to access /var/run/docker.socket on the host layer for 
privileged container to interact with host layer docker daemon.

The black list needs to have ability to list all the forbidden mount points, 
such as /sys, and /run.  There are some exception that needs to have ability to 
mount as read only.  The last but not the least, the ability to create special 
mount points for privileged container to access host layer docker daemon.  This 
feature requires to maintain 3 control lists for accuracy.

# A general backlisted mount points
# A read-only mount points
# A exception list that is allowed to mount, if running with privileged mode.

Last one can be covered by white list feature in YARN-5534.  This JIRA only 
needs to cover case 1, and 2.

> Add support for a volume blacklist for docker containers
> 
>
> Key: YARN-7197
> URL: https://issues.apache.org/jira/browse/YARN-7197
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn
>Reporter: Shane Kumpf
>
> Docker supports bind mounting host directories into containers. Work is 
> underway to allow admins to configure a whilelist of volume mounts. While 
> this is a much needed and useful feature, it opens the door for 
> misconfiguration that may lead to users being able to compromise or crash the 
> system. 
> One example would be allowing users to mount /run from a host running 
> systemd, and then running systemd in that container, rendering the host 
> mostly unusable.
> This issue is to add support for a default blacklist. The default blacklist 
> would be where we put files and directories that if mounted into a container, 
> are likely to have negative consequences. Users are encouraged not to remove 
> items from the default blacklist, but may do so if necessary.



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

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



[jira] [Created] (YARN-7193) Implement REST API for register Yarnfile in application catalog

2017-09-13 Thread Eric Yang (JIRA)
Eric Yang created YARN-7193:
---

 Summary: Implement REST API for register Yarnfile in application 
catalog
 Key: YARN-7193
 URL: https://issues.apache.org/jira/browse/YARN-7193
 Project: Hadoop YARN
  Issue Type: Sub-task
  Components: applications
Affects Versions: 3.1.0
Reporter: Eric Yang
Assignee: Eric Yang


For support ability to register and index Yarnfile, we need a set of REST API 
to register, search, and recommend applications from application catalog.



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

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



[jira] [Updated] (YARN-7193) Implement REST API for register Yarnfile in application catalog

2017-09-13 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7193?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7193:

Attachment: YARN-7193.yarn-native-services.002.patch

Missed two license files, update license again.

> Implement REST API for register Yarnfile in application catalog
> ---
>
> Key: YARN-7193
> URL: https://issues.apache.org/jira/browse/YARN-7193
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: applications
>Affects Versions: 3.1.0
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7193.yarn-native-services.001.patch, 
> YARN-7193.yarn-native-services.002.patch
>
>
> For support ability to register and index Yarnfile, we need a set of REST API 
> to register, search, and recommend applications from application catalog.



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

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



[jira] [Updated] (YARN-7193) Implement REST API for register Yarnfile in application catalog

2017-09-13 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7193?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7193:

Attachment: YARN-7193.yarn-native-services.001.patch

Implement REST API for application catalog.

> Implement REST API for register Yarnfile in application catalog
> ---
>
> Key: YARN-7193
> URL: https://issues.apache.org/jira/browse/YARN-7193
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: applications
>Affects Versions: 3.1.0
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7193.yarn-native-services.001.patch
>
>
> For support ability to register and index Yarnfile, we need a set of REST API 
> to register, search, and recommend applications from application catalog.



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

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



[jira] [Commented] (YARN-6626) Embed REST API service into RM

2017-09-14 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-6626:
-

This can be done by specifying hadoop-yarn-service-api as dependency to 
hadoop-yarn-ui project, this will automatically place 
hadoop-yarn-service-api*.jar and dependencies into WEB-INF/lib of 
hadoop-yarn-ui war file.  In web.xml file, specify:

{code}

  YARN UI

  
REST_API

com.sun.jersey.spi.container.servlet.ServletContainer

  com.sun.jersey.config.property.packages
  
org.apache.hadoop.yarn.appcatalog.controller;org.apache.hadoop.yarn.service.webapp


  com.sun.jersey.api.json.POJOMappingFeature
  true

1
  

  
REST_API
/ws/v2/*
  

{code}

> Embed REST API service into RM
> --
>
> Key: YARN-6626
> URL: https://issues.apache.org/jira/browse/YARN-6626
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Gour Saha
> Fix For: yarn-native-services
>
>
> As of now the deployment model of the Native Services REST API service is 
> standalone. There are several cross-cutting solutions that can be inherited 
> for free (kerberos, HA, ACLs, trusted proxy support, etc.) by the REST API 
> service if it is embedded into the RM process. In fact we can expose the REST 
> API via the same port as RM UI (8088 default). The URI path 
> /services/v1/applications will distinguish the REST API calls from other RM 
> APIs.



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

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



[jira] [Comment Edited] (YARN-6626) Embed REST API service into RM

2017-09-14 Thread Eric Yang (JIRA)

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

Eric Yang edited comment on YARN-6626 at 9/14/17 10:47 PM:
---

This can be done by specifying hadoop-yarn-service-api as dependency to 
hadoop-yarn-ui project, this will automatically place 
hadoop-yarn-service-api*.jar and dependencies into WEB-INF/lib of 
hadoop-yarn-ui war file.  In web.xml file, specify:

{code}

  YARN UI

  
REST_API

com.sun.jersey.spi.container.servlet.ServletContainer

  com.sun.jersey.config.property.packages
  
org.apache.hadoop.yarn.appcatalog.controller;org.apache.hadoop.yarn.service.webapp


  com.sun.jersey.api.json.POJOMappingFeature
  true

1
  

  
REST_API
/ws/v2/*
  

{code}

Note that the prefix URL is hard coded in RestApiConstants.  The better 
approach is to ensure the prefix directory is described by configuration like 
in web.xml, or in ApiServerWebApp where addJerseyResourcePackage is the prefix 
path.  Hence the URL have the same prefix between apiserver and resource 
manager.


was (Author: eyang):
This can be done by specifying hadoop-yarn-service-api as dependency to 
hadoop-yarn-ui project, this will automatically place 
hadoop-yarn-service-api*.jar and dependencies into WEB-INF/lib of 
hadoop-yarn-ui war file.  In web.xml file, specify:

{code}

  YARN UI

  
REST_API

com.sun.jersey.spi.container.servlet.ServletContainer

  com.sun.jersey.config.property.packages
  
org.apache.hadoop.yarn.appcatalog.controller;org.apache.hadoop.yarn.service.webapp


  com.sun.jersey.api.json.POJOMappingFeature
  true

1
  

  
REST_API
/ws/v2/*
  

{code}

> Embed REST API service into RM
> --
>
> Key: YARN-6626
> URL: https://issues.apache.org/jira/browse/YARN-6626
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Gour Saha
> Fix For: yarn-native-services
>
>
> As of now the deployment model of the Native Services REST API service is 
> standalone. There are several cross-cutting solutions that can be inherited 
> for free (kerberos, HA, ACLs, trusted proxy support, etc.) by the REST API 
> service if it is embedded into the RM process. In fact we can expose the REST 
> API via the same port as RM UI (8088 default). The URI path 
> /services/v1/applications will distinguish the REST API calls from other RM 
> APIs.



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

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



[jira] [Commented] (YARN-7197) Add support for a volume blacklist for docker containers

2017-09-14 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7197:
-

[~ebadger] This is similar to firewall rules.  We need a way to define ACCEPTED 
and REJECTED rules.  White list could be cumbersome to express an exhaustive 
list of mount points sometimes. If there are a lot of paths intermixed by a lot 
of allow list, and few of black list path.
For example, if a system admin would like to allow mounting of 
/mnt/hdfs/user/${USER} but not /mnt/hdfs/user/yarn using nfs gateway.  White 
list can not express the proper constraints alone.  If white list has some 
smarts to define if condition, black list might not be necessary.


> Add support for a volume blacklist for docker containers
> 
>
> Key: YARN-7197
> URL: https://issues.apache.org/jira/browse/YARN-7197
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn
>Reporter: Shane Kumpf
>
> Docker supports bind mounting host directories into containers. Work is 
> underway to allow admins to configure a whilelist of volume mounts. While 
> this is a much needed and useful feature, it opens the door for 
> misconfiguration that may lead to users being able to compromise or crash the 
> system. 
> One example would be allowing users to mount /run from a host running 
> systemd, and then running systemd in that container, rendering the host 
> mostly unusable.
> This issue is to add support for a default blacklist. The default blacklist 
> would be where we put files and directories that if mounted into a container, 
> are likely to have negative consequences. Users are encouraged not to remove 
> items from the default blacklist, but may do so if necessary.



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

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



[jira] [Comment Edited] (YARN-6626) Embed REST API service into RM

2017-09-22 Thread Eric Yang (JIRA)

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

Eric Yang edited comment on YARN-6626 at 9/22/17 3:59 PM:
--

Fixed findbugs, unit test, and checkstyle issues.


was (Author: eyang):
Fixed findbugs issue.

> Embed REST API service into RM
> --
>
> Key: YARN-6626
> URL: https://issues.apache.org/jira/browse/YARN-6626
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Gour Saha
> Fix For: yarn-native-services
>
> Attachments: YARN-6626.yarn-native-services.001.patch, 
> YARN-6626.yarn-native-services.002.patch, 
> YARN-6626.yarn-native-services.003.patch
>
>
> As of now the deployment model of the Native Services REST API service is 
> standalone. There are several cross-cutting solutions that can be inherited 
> for free (kerberos, HA, ACLs, trusted proxy support, etc.) by the REST API 
> service if it is embedded into the RM process. In fact we can expose the REST 
> API via the same port as RM UI (8088 default). The URI path 
> /services/v1/applications will distinguish the REST API calls from other RM 
> APIs.



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

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



[jira] [Updated] (YARN-6626) Embed REST API service into RM

2017-09-22 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-6626?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-6626:

Attachment: YARN-6626.yarn-native-services.003.patch

Fixed findbugs issue.

> Embed REST API service into RM
> --
>
> Key: YARN-6626
> URL: https://issues.apache.org/jira/browse/YARN-6626
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Gour Saha
> Fix For: yarn-native-services
>
> Attachments: YARN-6626.yarn-native-services.001.patch, 
> YARN-6626.yarn-native-services.002.patch, 
> YARN-6626.yarn-native-services.003.patch
>
>
> As of now the deployment model of the Native Services REST API service is 
> standalone. There are several cross-cutting solutions that can be inherited 
> for free (kerberos, HA, ACLs, trusted proxy support, etc.) by the REST API 
> service if it is embedded into the RM process. In fact we can expose the REST 
> API via the same port as RM UI (8088 default). The URI path 
> /services/v1/applications will distinguish the REST API calls from other RM 
> APIs.



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

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



[jira] [Updated] (YARN-7201) Add more sophisticated example YARN service

2017-09-19 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7201:

Attachment: YARN-7201.yarn-native-services.006.patch

Correction to artifact image name.

> Add more sophisticated example YARN service
> ---
>
> Key: YARN-7201
> URL: https://issues.apache.org/jira/browse/YARN-7201
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
> Attachments: YARN-7201.yarn-native-services.001.patch, 
> YARN-7201.yarn-native-services.002.patch, 
> YARN-7201.yarn-native-services.003.patch, 
> YARN-7201.yarn-native-services.004.patch, 
> YARN-7201.yarn-native-services.005.patch, 
> YARN-7201.yarn-native-services.006.patch
>
>
> We can show case the following capabilities in the YARN service examples:
> #  Description of the service
> #  Component dependencies
> #  How to mount HDFS volume via NFS Gateway
> # Enable privileged container
> # Quick link to web application
> # Queue to submit
> # Use private docker registry



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

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



[jira] [Updated] (YARN-7201) Add more sophisticated example YARN service

2017-09-18 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7201:

Attachment: YARN-7201.yarn-native-services.002.patch

Remove organization, description, icon metadata field to match the current 
state of REST API.

> Add more sophisticated example YARN service
> ---
>
> Key: YARN-7201
> URL: https://issues.apache.org/jira/browse/YARN-7201
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
> Attachments: YARN-7201.yarn-native-services.001.patch, 
> YARN-7201.yarn-native-services.002.patch
>
>
> We can show case the following capabilities in the YARN service examples:
> #  Description of the service
> #  Component dependencies
> #  How to mount HDFS volume via NFS Gateway
> # Enable privileged container
> # Quick link to web application
> # Queue to submit
> # Use private docker registry



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

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



[jira] [Updated] (YARN-7201) Add more sophisticated example YARN service

2017-09-18 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7201:

Attachment: YARN-7201.yarn-native-services.003.patch

Fix typo.

> Add more sophisticated example YARN service
> ---
>
> Key: YARN-7201
> URL: https://issues.apache.org/jira/browse/YARN-7201
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
> Attachments: YARN-7201.yarn-native-services.001.patch, 
> YARN-7201.yarn-native-services.002.patch, 
> YARN-7201.yarn-native-services.003.patch
>
>
> We can show case the following capabilities in the YARN service examples:
> #  Description of the service
> #  Component dependencies
> #  How to mount HDFS volume via NFS Gateway
> # Enable privileged container
> # Quick link to web application
> # Queue to submit
> # Use private docker registry



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

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



[jira] [Updated] (YARN-7201) Add more sophisticated example YARN service

2017-09-18 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7201:

Attachment: YARN-7201.yarn-native-services.004.patch

Remove mounts because YARN-4266 and YARN-7066 are not committed.

> Add more sophisticated example YARN service
> ---
>
> Key: YARN-7201
> URL: https://issues.apache.org/jira/browse/YARN-7201
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
> Attachments: YARN-7201.yarn-native-services.001.patch, 
> YARN-7201.yarn-native-services.002.patch, 
> YARN-7201.yarn-native-services.003.patch, 
> YARN-7201.yarn-native-services.004.patch
>
>
> We can show case the following capabilities in the YARN service examples:
> #  Description of the service
> #  Component dependencies
> #  How to mount HDFS volume via NFS Gateway
> # Enable privileged container
> # Quick link to web application
> # Queue to submit
> # Use private docker registry



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

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



[jira] [Updated] (YARN-7201) Add more sophisticated example YARN service

2017-09-18 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7201:

Attachment: (was: YARN-7201.yarn-native-services.004.patch)

> Add more sophisticated example YARN service
> ---
>
> Key: YARN-7201
> URL: https://issues.apache.org/jira/browse/YARN-7201
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
> Attachments: YARN-7201.yarn-native-services.001.patch, 
> YARN-7201.yarn-native-services.002.patch, 
> YARN-7201.yarn-native-services.003.patch
>
>
> We can show case the following capabilities in the YARN service examples:
> #  Description of the service
> #  Component dependencies
> #  How to mount HDFS volume via NFS Gateway
> # Enable privileged container
> # Quick link to web application
> # Queue to submit
> # Use private docker registry



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

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



[jira] [Updated] (YARN-7201) Add more sophisticated example YARN service

2017-09-18 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7201:

Attachment: YARN-7201.yarn-native-services.004.patch

> Add more sophisticated example YARN service
> ---
>
> Key: YARN-7201
> URL: https://issues.apache.org/jira/browse/YARN-7201
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
> Attachments: YARN-7201.yarn-native-services.001.patch, 
> YARN-7201.yarn-native-services.002.patch, 
> YARN-7201.yarn-native-services.003.patch, 
> YARN-7201.yarn-native-services.004.patch
>
>
> We can show case the following capabilities in the YARN service examples:
> #  Description of the service
> #  Component dependencies
> #  How to mount HDFS volume via NFS Gateway
> # Enable privileged container
> # Quick link to web application
> # Queue to submit
> # Use private docker registry



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

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



[jira] [Updated] (YARN-7201) Add more sophisticated example YARN service

2017-09-18 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7201?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7201:

Attachment: YARN-7201.yarn-native-services.005.patch

Added example document.

> Add more sophisticated example YARN service
> ---
>
> Key: YARN-7201
> URL: https://issues.apache.org/jira/browse/YARN-7201
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
> Attachments: YARN-7201.yarn-native-services.001.patch, 
> YARN-7201.yarn-native-services.002.patch, 
> YARN-7201.yarn-native-services.003.patch, 
> YARN-7201.yarn-native-services.004.patch, 
> YARN-7201.yarn-native-services.005.patch
>
>
> We can show case the following capabilities in the YARN service examples:
> #  Description of the service
> #  Component dependencies
> #  How to mount HDFS volume via NFS Gateway
> # Enable privileged container
> # Quick link to web application
> # Queue to submit
> # Use private docker registry



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

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



[jira] [Created] (YARN-7215) REST API to list all deployed services by the same user

2017-09-19 Thread Eric Yang (JIRA)
Eric Yang created YARN-7215:
---

 Summary: REST API to list all deployed services by the same user
 Key: YARN-7215
 URL: https://issues.apache.org/jira/browse/YARN-7215
 Project: Hadoop YARN
  Issue Type: Bug
  Components: api, applications
Reporter: Eric Yang
Assignee: Eric Yang


In Slider, it is possible to list deployed applications from the same user by 
using:


slider list


This API can help UI to display application and services deployed by the same 
user.
Apiserver does not have ability to list all applications/services at this time. 
 This API requires fast response to list all applications because it is a 
common UI operation.  ApiServer deployed applications persist configuration in 
HDFS similar to slider, but using directory listing to display deployed 
application might cost too much overhead to namenode.  We may want to use 
alternative storage mechanism to cache deployed application configuration to 
accelerate the response time of list deployed applications.



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

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



[jira] [Created] (YARN-7216) Missing ability to list configuration vs status

2017-09-19 Thread Eric Yang (JIRA)
Eric Yang created YARN-7216:
---

 Summary: Missing ability to list configuration vs status
 Key: YARN-7216
 URL: https://issues.apache.org/jira/browse/YARN-7216
 Project: Hadoop YARN
  Issue Type: Bug
  Components: api, applications
Reporter: Eric Yang
Assignee: Eric Yang


API Server has /ws/v1/services/{service_name}.  This REST end point returns 
Services object which contains both configuration and status.  When status or 
macro based parameters changed in Services object, it can confuse UI code to 
making configuration changes.  The suggestion is to preserve a copy of 
configuration object independent of status object.  This gives UI ability to 
change services configuration and update configuration.

Similar to Ambari, it might provide better information if we have the following 
separated REST end points:

{code}
/ws/v1/services/{service_name}/config
/ws/v1/services/{service_name}/status
{code}




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

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



[jira] [Updated] (YARN-7202) End-to-end UT for api-server

2017-10-06 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7202:

Attachment: YARN-7202.yarn-native-services.008.patch

Rebase patch by the changes Jian He made in YARN-6626.

> End-to-end UT for api-server
> 
>
> Key: YARN-7202
> URL: https://issues.apache.org/jira/browse/YARN-7202
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>Assignee: Eric Yang
> Attachments: YARN-7202.yarn-native-services.001.patch, 
> YARN-7202.yarn-native-services.002.patch, 
> YARN-7202.yarn-native-services.003.patch, 
> YARN-7202.yarn-native-services.004.patch, 
> YARN-7202.yarn-native-services.005.patch, 
> YARN-7202.yarn-native-services.006.patch, 
> YARN-7202.yarn-native-services.007.patch, 
> YARN-7202.yarn-native-services.008.patch
>
>




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

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



[jira] [Updated] (YARN-7215) REST API to list all deployed services by the same user

2017-10-06 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7215:

Attachment: YARN-7215.yarn-native-services.002.patch

Rebase the patch based on Jian's last minute changes to YARN-6626 patch.

> REST API to list all deployed services by the same user
> ---
>
> Key: YARN-7215
> URL: https://issues.apache.org/jira/browse/YARN-7215
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7215.yarn-native-services.001.patch, 
> YARN-7215.yarn-native-services.002.patch
>
>
> In Slider, it is possible to list deployed applications from the same user by 
> using:
> {code}
> slider list
> {code}
> This API can help UI to display application and services deployed by the same 
> user.
> Apiserver does not have ability to list all applications/services at this 
> time.  This API requires fast response to list all applications because it is 
> a common UI operation.  ApiServer deployed applications persist configuration 
> in HDFS similar to slider, but using directory listing to display deployed 
> application might cost too much overhead to namenode.  We may want to use 
> alternative storage mechanism to cache deployed application configuration to 
> accelerate the response time of list deployed applications.



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

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



[jira] [Updated] (YARN-7215) REST API to list all deployed services by the same user

2017-10-06 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7215:

Attachment: YARN-7215.yarn-native-services.003.patch

- Ensure solrj client is part of Hadoop distro tarball.

> REST API to list all deployed services by the same user
> ---
>
> Key: YARN-7215
> URL: https://issues.apache.org/jira/browse/YARN-7215
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7215.yarn-native-services.001.patch, 
> YARN-7215.yarn-native-services.002.patch, 
> YARN-7215.yarn-native-services.003.patch
>
>
> In Slider, it is possible to list deployed applications from the same user by 
> using:
> {code}
> slider list
> {code}
> This API can help UI to display application and services deployed by the same 
> user.
> Apiserver does not have ability to list all applications/services at this 
> time.  This API requires fast response to list all applications because it is 
> a common UI operation.  ApiServer deployed applications persist configuration 
> in HDFS similar to slider, but using directory listing to display deployed 
> application might cost too much overhead to namenode.  We may want to use 
> alternative storage mechanism to cache deployed application configuration to 
> accelerate the response time of list deployed applications.



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

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



[jira] [Commented] (YARN-7202) End-to-end UT for api-server

2017-10-02 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7202:
-

TestYarnNativeServices and TestApiServer combination provides end-to-end unit 
tests coverages.  After reviewing HADOOP-9122, it doesn't appear that powermock 
can help in Hadoop unit test.

> End-to-end UT for api-server
> 
>
> Key: YARN-7202
> URL: https://issues.apache.org/jira/browse/YARN-7202
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
> Attachments: YARN-7202.yarn-native-services.001.patch, 
> YARN-7202.yarn-native-services.002.patch
>
>




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

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



[jira] [Updated] (YARN-7202) End-to-end UT for api-server

2017-10-02 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7202:

Attachment: YARN-7202.yarn-native-services.003.patch

Revised negative test to work without powermock.  Unfortunately, the way the 
ServiceClient is initialized, it requires an extra method to override 
ServiceClient for negative tests.

> End-to-end UT for api-server
> 
>
> Key: YARN-7202
> URL: https://issues.apache.org/jira/browse/YARN-7202
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
> Attachments: YARN-7202.yarn-native-services.001.patch, 
> YARN-7202.yarn-native-services.002.patch, 
> YARN-7202.yarn-native-services.003.patch
>
>




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

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



[jira] [Updated] (YARN-7202) End-to-end UT for api-server

2017-10-04 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7202:

Attachment: YARN-7202.yarn-native-services.006.patch

Fixed checkstyle errors.

> End-to-end UT for api-server
> 
>
> Key: YARN-7202
> URL: https://issues.apache.org/jira/browse/YARN-7202
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>Assignee: Eric Yang
> Attachments: YARN-7202.yarn-native-services.001.patch, 
> YARN-7202.yarn-native-services.002.patch, 
> YARN-7202.yarn-native-services.003.patch, 
> YARN-7202.yarn-native-services.004.patch, 
> YARN-7202.yarn-native-services.005.patch, 
> YARN-7202.yarn-native-services.006.patch
>
>




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

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



[jira] [Commented] (YARN-7265) Hadoop Server Log Correlation

2017-10-03 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7265:
-

Chukwa has some degree of success in doing this.  Chukwa 0.8.0 utilize SOLR to 
provide indexing feature.  This allows user to search for unique text (i.e. 
Application ID), and all logs contains unique text are categorized and display 
as results.  This includes user's container logs, hdfs (nn/dn), yarn (rm/nm) , 
and hbase (master/rs) log files.  This exists as proof of concept.  Chukwa 
docker image is available on Docker hub for testing.  There is a lot work to 
productize it, but feel free to experiment with it.

> Hadoop Server Log Correlation  
> ---
>
> Key: YARN-7265
> URL: https://issues.apache.org/jira/browse/YARN-7265
> Project: Hadoop YARN
>  Issue Type: Wish
>  Components: log-aggregation
>Reporter: Tanping Wang
>
> Hadoop has many server logs, yarn tasks logs, node manager logs, HDFS logs..  
>  There are also a lot of different ways can be used to expose the logs, build 
> relationship horizontally to correlate the logs or search the logs by 
> keyword. There is a need for a default and yet convenient  logging analytics 
> mechanism in Hadoop itself that at least covers all the server logs of 
> Hadoop.  This log analytics system can correlate the Hadoop server logs by 
> grouping them by various dimensions including application ID,  task ID, job 
> ID or node ID etc.   The raw logs with correlation can be easily accessed by 
> the application developer or cluster administrator via web page for managing 
> and debugging.



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

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



[jira] [Assigned] (YARN-7202) End-to-end UT for api-server

2017-10-03 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang reassigned YARN-7202:
---

Assignee: Eric Yang

Retrigger precommit test.

> End-to-end UT for api-server
> 
>
> Key: YARN-7202
> URL: https://issues.apache.org/jira/browse/YARN-7202
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>Assignee: Eric Yang
> Attachments: YARN-7202.yarn-native-services.001.patch, 
> YARN-7202.yarn-native-services.002.patch, 
> YARN-7202.yarn-native-services.003.patch, 
> YARN-7202.yarn-native-services.004.patch
>
>




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

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



[jira] [Updated] (YARN-7202) End-to-end UT for api-server

2017-10-03 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7202:

Attachment: YARN-7202.yarn-native-services.005.patch

- Added ApiServer constructor without parameters.  This version of constructor 
is used by Jersey to initialize REST API.  It does not work without the base 
constructor.

> End-to-end UT for api-server
> 
>
> Key: YARN-7202
> URL: https://issues.apache.org/jira/browse/YARN-7202
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>Assignee: Eric Yang
> Attachments: YARN-7202.yarn-native-services.001.patch, 
> YARN-7202.yarn-native-services.002.patch, 
> YARN-7202.yarn-native-services.003.patch, 
> YARN-7202.yarn-native-services.004.patch, 
> YARN-7202.yarn-native-services.005.patch
>
>




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

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



[jira] [Updated] (YARN-7202) End-to-end UT for api-server

2017-10-03 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7202:

Attachment: YARN-7202.yarn-native-services.004.patch

- Added positive test case for REST API, ServiceClient gets exercised with 
create and flex.

> End-to-end UT for api-server
> 
>
> Key: YARN-7202
> URL: https://issues.apache.org/jira/browse/YARN-7202
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
> Attachments: YARN-7202.yarn-native-services.001.patch, 
> YARN-7202.yarn-native-services.002.patch, 
> YARN-7202.yarn-native-services.003.patch, 
> YARN-7202.yarn-native-services.004.patch
>
>




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

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



[jira] [Commented] (YARN-7202) End-to-end UT for api-server

2017-10-10 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7202:
-

[~jianhe] wrote:
{code}
Confused. I'm seeing the opposite. 
Before the patch, it directly returns the status code based on whatever failure 
conditions it is inside the method which is accurate.
After the patch, it only returns INTERNAL_SERVER_ERROR or BAD_REQUEST. e.g. the 
NOT_FOUND status code for stopService method is instead converted to the 
BAD_REQUEST status code. Why is this converstion needed?
{code}

In ServiceClient, YarnException is used for invalid request, i.e. Service Name 
not found, Application already exist, lost contact to AM, or Service definition 
is not found in HDFS.  There are many other exceptions overloaded using 
YarnException and all of them are general error handling.  We end up with web 
response that are inconsistent between Web response code and the root cause, 
such as 404 NOT_FOUND, and application already exist.  This is the reason the 
response code is generalized into BAD_REQUEST to avoid confusion.

> End-to-end UT for api-server
> 
>
> Key: YARN-7202
> URL: https://issues.apache.org/jira/browse/YARN-7202
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>Assignee: Eric Yang
> Attachments: YARN-7202.yarn-native-services.001.patch, 
> YARN-7202.yarn-native-services.002.patch, 
> YARN-7202.yarn-native-services.003.patch, 
> YARN-7202.yarn-native-services.004.patch, 
> YARN-7202.yarn-native-services.005.patch, 
> YARN-7202.yarn-native-services.006.patch, 
> YARN-7202.yarn-native-services.007.patch, 
> YARN-7202.yarn-native-services.008.patch
>
>




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

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



[jira] [Comment Edited] (YARN-7202) End-to-end UT for api-server

2017-10-10 Thread Eric Yang (JIRA)

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

Eric Yang edited comment on YARN-7202 at 10/10/17 5:20 PM:
---

[~jianhe] wrote:
{quote}
Confused. I'm seeing the opposite. 
Before the patch, it directly returns the status code based on whatever failure 
conditions it is inside the method which is accurate.
After the patch, it only returns INTERNAL_SERVER_ERROR or BAD_REQUEST. e.g. the 
NOT_FOUND status code for stopService method is instead converted to the 
BAD_REQUEST status code. Why is this converstion needed?
{quote}

In ServiceClient, YarnException is used for invalid request, i.e. Service Name 
not found, Application already exist, lost contact to AM, or Service definition 
is not found in HDFS.  There are many other exceptions overloaded using 
YarnException and all of them are general error handling.  We end up with web 
response that are inconsistent between Web response code and the root cause, 
such as 404 NOT_FOUND, and application already exist.  This is the reason the 
response code is generalized into BAD_REQUEST to avoid confusion.


was (Author: eyang):
[~jianhe] wrote:
{code}
Confused. I'm seeing the opposite. 
Before the patch, it directly returns the status code based on whatever failure 
conditions it is inside the method which is accurate.
After the patch, it only returns INTERNAL_SERVER_ERROR or BAD_REQUEST. e.g. the 
NOT_FOUND status code for stopService method is instead converted to the 
BAD_REQUEST status code. Why is this converstion needed?
{code}

In ServiceClient, YarnException is used for invalid request, i.e. Service Name 
not found, Application already exist, lost contact to AM, or Service definition 
is not found in HDFS.  There are many other exceptions overloaded using 
YarnException and all of them are general error handling.  We end up with web 
response that are inconsistent between Web response code and the root cause, 
such as 404 NOT_FOUND, and application already exist.  This is the reason the 
response code is generalized into BAD_REQUEST to avoid confusion.

> End-to-end UT for api-server
> 
>
> Key: YARN-7202
> URL: https://issues.apache.org/jira/browse/YARN-7202
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>Assignee: Eric Yang
> Attachments: YARN-7202.yarn-native-services.001.patch, 
> YARN-7202.yarn-native-services.002.patch, 
> YARN-7202.yarn-native-services.003.patch, 
> YARN-7202.yarn-native-services.004.patch, 
> YARN-7202.yarn-native-services.005.patch, 
> YARN-7202.yarn-native-services.006.patch, 
> YARN-7202.yarn-native-services.007.patch, 
> YARN-7202.yarn-native-services.008.patch
>
>




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

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



[jira] [Commented] (YARN-7202) End-to-end UT for api-server

2017-10-10 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7202:
-

[~jianhe] I took another look at the code from patch 08, and I have answers for 
this question:

{quote}
confused, isn't this code not part of this patch ? I did clean before build.
Can you try compile only this patch with the dependency removed?
{quote}

I refactored TestYarnNativeServices to move the configuration initializer code 
to ServiceTestUtils java class and move ServiceTestUtils java class to 
org/apache/hadoop/yarn/service/client/ServiceTestUtils.  This was done to 
enhance the ability to reuse the utility class for YARN service setup for test 
cases.  TestApiService extends ServiceTestUtils for mini yarn cluster setup.  
This is the reason that MiniHDFSCluster and MiniYARNCluster are both required 
dependencies for the test to run.  The scope of the dependencies is set to 
"test".  This is the reason that you were able to compile without the 
dependencies expressed, they are used during test phase.  Hence, both exception 
throwing, and dependency expression are non-issues.  Could you take another 
look at patch 08?  I deleted patch 09 and 10 because the decision that we made 
are not correct in yesterday's meeting.

> End-to-end UT for api-server
> 
>
> Key: YARN-7202
> URL: https://issues.apache.org/jira/browse/YARN-7202
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>Assignee: Eric Yang
> Attachments: YARN-7202.yarn-native-services.001.patch, 
> YARN-7202.yarn-native-services.002.patch, 
> YARN-7202.yarn-native-services.003.patch, 
> YARN-7202.yarn-native-services.004.patch, 
> YARN-7202.yarn-native-services.005.patch, 
> YARN-7202.yarn-native-services.006.patch, 
> YARN-7202.yarn-native-services.007.patch, 
> YARN-7202.yarn-native-services.008.patch, 
> YARN-7202.yarn-native-services.009.patch, 
> YARN-7202.yarn-native-services.010.patch
>
>




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

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



[jira] [Updated] (YARN-7202) End-to-end UT for api-server

2017-10-10 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7202:

Attachment: (was: YARN-7202.yarn-native-services.009.patch)

> End-to-end UT for api-server
> 
>
> Key: YARN-7202
> URL: https://issues.apache.org/jira/browse/YARN-7202
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>Assignee: Eric Yang
> Attachments: YARN-7202.yarn-native-services.001.patch, 
> YARN-7202.yarn-native-services.002.patch, 
> YARN-7202.yarn-native-services.003.patch, 
> YARN-7202.yarn-native-services.004.patch, 
> YARN-7202.yarn-native-services.005.patch, 
> YARN-7202.yarn-native-services.006.patch, 
> YARN-7202.yarn-native-services.007.patch, 
> YARN-7202.yarn-native-services.008.patch
>
>




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

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



[jira] [Updated] (YARN-7202) End-to-end UT for api-server

2017-10-10 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7202?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7202:

Attachment: (was: YARN-7202.yarn-native-services.010.patch)

> End-to-end UT for api-server
> 
>
> Key: YARN-7202
> URL: https://issues.apache.org/jira/browse/YARN-7202
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>Assignee: Eric Yang
> Attachments: YARN-7202.yarn-native-services.001.patch, 
> YARN-7202.yarn-native-services.002.patch, 
> YARN-7202.yarn-native-services.003.patch, 
> YARN-7202.yarn-native-services.004.patch, 
> YARN-7202.yarn-native-services.005.patch, 
> YARN-7202.yarn-native-services.006.patch, 
> YARN-7202.yarn-native-services.007.patch, 
> YARN-7202.yarn-native-services.008.patch
>
>




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

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



[jira] [Commented] (YARN-7066) Add ability to specify volumes to mount for DockerContainerRuntime

2017-10-14 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7066:
-

[~shaneku...@gmail.com] Sorry, I did not know YARN-5534 already includes user 
defined mount.  I probably should have read the patch before this was opened.  
We can close this as a dupe.  Thanks

> Add ability to specify volumes to mount for DockerContainerRuntime
> --
>
> Key: YARN-7066
> URL: https://issues.apache.org/jira/browse/YARN-7066
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn-native-services
>Affects Versions: 3.0.0-beta1
>Reporter: Eric Yang
> Attachments: YARN-7066.001.patch, YARN-7066.002.patch
>
>
> Yarnfile describes environment, docker image, and configuration template for 
> launching docker containers in YARN.  It would be nice to have ability to 
> specify the volumes to mount.  This can be used in combination to 
> AMBARI-21748 to mount HDFS as data directories to docker containers.



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

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



[jira] [Assigned] (YARN-7066) Add ability to specify volumes to mount for DockerContainerRuntime

2017-10-14 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7066?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang reassigned YARN-7066:
---

Resolution: Duplicate
  Assignee: Eric Yang

> Add ability to specify volumes to mount for DockerContainerRuntime
> --
>
> Key: YARN-7066
> URL: https://issues.apache.org/jira/browse/YARN-7066
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn-native-services
>Affects Versions: 3.0.0-beta1
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7066.001.patch, YARN-7066.002.patch
>
>
> Yarnfile describes environment, docker image, and configuration template for 
> launching docker containers in YARN.  It would be nice to have ability to 
> specify the volumes to mount.  This can be used in combination to 
> AMBARI-21748 to mount HDFS as data directories to docker containers.



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

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



[jira] [Updated] (YARN-7216) Missing ability to list configuration vs status

2017-10-05 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7216:

Attachment: (was: YARN-7216.yarn-native-services.001.patch)

> Missing ability to list configuration vs status
> ---
>
> Key: YARN-7216
> URL: https://issues.apache.org/jira/browse/YARN-7216
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7216.yarn-native-services.001.patch
>
>
> API Server has /ws/v1/services/{service_name}.  This REST end point returns 
> Services object which contains both configuration and status.  When status or 
> macro based parameters changed in Services object, it can confuse UI code to 
> making configuration changes.  The suggestion is to preserve a copy of 
> configuration object independent of status object.  This gives UI ability to 
> change services configuration and update configuration.
> Similar to Ambari, it might provide better information if we have the 
> following separated REST end points:
> {code}
>  /ws/v1/services/[service_name]/spec
>  /ws/v1/services/[service_name]/status
> {code}



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

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



[jira] [Commented] (YARN-6623) Add support to turn off launching privileged containers in the container-executor

2017-10-05 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-6623:
-

[~ebadger] In some secure environment, I have seen that container-executor.cfg 
is set to non-world readable because the administrator doesn't want people to 
know about the allowed and bannded users on the cluster.  Another possibility 
is the default umask are set to 027, when admin generates 
container-executor.cfg via Ambari.  it is often set to world non-readable for 
secure environment.

> Add support to turn off launching privileged containers in the 
> container-executor
> -
>
> Key: YARN-6623
> URL: https://issues.apache.org/jira/browse/YARN-6623
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: nodemanager
>Reporter: Varun Vasudev
>Assignee: Varun Vasudev
>Priority: Blocker
> Fix For: 3.0.0
>
> Attachments: YARN-6623.001.patch, YARN-6623.002.patch, 
> YARN-6623.003.patch, YARN-6623.004.patch, YARN-6623.005.patch, 
> YARN-6623.006.patch, YARN-6623.007.patch, YARN-6623.008.patch, 
> YARN-6623.009.patch, YARN-6623.010.patch, YARN-6623.011.patch, 
> YARN-6623.012.patch, YARN-6623.013.patch
>
>
> Currently, launching privileged containers is controlled by the NM. We should 
> add a flag to the container-executor.cfg allowing admins to disable launching 
> privileged containers at the container-executor level.



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

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



[jira] [Updated] (YARN-7216) Missing ability to list configuration vs status

2017-10-05 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7216?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7216:

Attachment: YARN-7216.yarn-native-services.001.patch

> Missing ability to list configuration vs status
> ---
>
> Key: YARN-7216
> URL: https://issues.apache.org/jira/browse/YARN-7216
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7216.yarn-native-services.001.patch
>
>
> API Server has /ws/v1/services/{service_name}.  This REST end point returns 
> Services object which contains both configuration and status.  When status or 
> macro based parameters changed in Services object, it can confuse UI code to 
> making configuration changes.  The suggestion is to preserve a copy of 
> configuration object independent of status object.  This gives UI ability to 
> change services configuration and update configuration.
> Similar to Ambari, it might provide better information if we have the 
> following separated REST end points:
> {code}
>  /ws/v1/services/[service_name]/spec
>  /ws/v1/services/[service_name]/status
> {code}



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

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



[jira] [Updated] (YARN-7215) REST API to list all deployed services by the same user

2017-10-05 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7215?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7215:

Attachment: YARN-7215.yarn-native-services.001.patch

- Implemented ability to list services deployed by the same user.
- This patch depends on patch from YARN-7216.


> REST API to list all deployed services by the same user
> ---
>
> Key: YARN-7215
> URL: https://issues.apache.org/jira/browse/YARN-7215
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7215.yarn-native-services.001.patch
>
>
> In Slider, it is possible to list deployed applications from the same user by 
> using:
> {code}
> slider list
> {code}
> This API can help UI to display application and services deployed by the same 
> user.
> Apiserver does not have ability to list all applications/services at this 
> time.  This API requires fast response to list all applications because it is 
> a common UI operation.  ApiServer deployed applications persist configuration 
> in HDFS similar to slider, but using directory listing to display deployed 
> application might cost too much overhead to namenode.  We may want to use 
> alternative storage mechanism to cache deployed application configuration to 
> accelerate the response time of list deployed applications.



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

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



[jira] [Commented] (YARN-7217) PUT method for update service for Service API doesn't function correctly

2017-10-16 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7217:
-

The unit tests failure are not related to this patch.  It looks like the recent 
commit or rebase yarn-native-services branch broked yarn-native-services branch.

> PUT method for update service for Service API doesn't function correctly
> 
>
> Key: YARN-7217
> URL: https://issues.apache.org/jira/browse/YARN-7217
> Project: Hadoop YARN
>  Issue Type: Task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7217.yarn-native-services.001.patch
>
>
> The PUT method for updateService API provides multiple functions:
> # Stopping a service.
> # Start a service.
> # Increase or decrease number of containers.
> The overloading is buggy depending on how the configuration should be applied.
> Scenario 1
> A user retrieves Service object from getService call, and the Service object 
> contains state: STARTED.  The user would like to increase number of 
> containers for the deployed service.  The JSON has been updated to increase 
> container count.  The PUT method does not actually increase container count.
> Scenario 2
> A user retrieves Service object from getService call, and the Service object 
> contains state: STOPPED.  The user would like to make a environment 
> configuration change.  The configuration does not get updated after PUT 
> method.
> This is possible to address by rearranging the logic of START/STOP after 
> configuration update.  However, there are other potential combinations that 
> can break PUT method.  For example, user like to make configuration changes, 
> but not yet restart the service until a later time.
> The alternative is to separate the PUT method into PUT method for 
> configuration vs status.  This increase the number of action that can be 
> performed.  New API could look like:
> {code}
> @PUT
> /ws/v1/services/[service_name]/config
> Request Data:
> {
>   "name":"[service_name]",
>   "number_of_containers": 5
> }
> {code}
> {code}
> @PUT
> /ws/v1/services/[service_name]/state
> Request data:
> {
>   "name": "[service_name]",
>   "state": "STOPPED|STARTED"
> }
> {code}



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

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



[jira] [Comment Edited] (YARN-7217) PUT method for update service for Service API doesn't function correctly

2017-10-16 Thread Eric Yang (JIRA)

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

Eric Yang edited comment on YARN-7217 at 10/16/17 4:59 PM:
---

The recent yarn-native-services branch rebased to trunk, and this patch needs 
to rebase to the current code on yarn-native-services branch.


was (Author: eyang):
The unit tests failure are not related to this patch.  It looks like the recent 
commit or rebase yarn-native-services branch broked yarn-native-services branch.

> PUT method for update service for Service API doesn't function correctly
> 
>
> Key: YARN-7217
> URL: https://issues.apache.org/jira/browse/YARN-7217
> Project: Hadoop YARN
>  Issue Type: Task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7217.yarn-native-services.001.patch
>
>
> The PUT method for updateService API provides multiple functions:
> # Stopping a service.
> # Start a service.
> # Increase or decrease number of containers.
> The overloading is buggy depending on how the configuration should be applied.
> Scenario 1
> A user retrieves Service object from getService call, and the Service object 
> contains state: STARTED.  The user would like to increase number of 
> containers for the deployed service.  The JSON has been updated to increase 
> container count.  The PUT method does not actually increase container count.
> Scenario 2
> A user retrieves Service object from getService call, and the Service object 
> contains state: STOPPED.  The user would like to make a environment 
> configuration change.  The configuration does not get updated after PUT 
> method.
> This is possible to address by rearranging the logic of START/STOP after 
> configuration update.  However, there are other potential combinations that 
> can break PUT method.  For example, user like to make configuration changes, 
> but not yet restart the service until a later time.
> The alternative is to separate the PUT method into PUT method for 
> configuration vs status.  This increase the number of action that can be 
> performed.  New API could look like:
> {code}
> @PUT
> /ws/v1/services/[service_name]/config
> Request Data:
> {
>   "name":"[service_name]",
>   "number_of_containers": 5
> }
> {code}
> {code}
> @PUT
> /ws/v1/services/[service_name]/state
> Request data:
> {
>   "name": "[service_name]",
>   "state": "STOPPED|STARTED"
> }
> {code}



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

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



[jira] [Commented] (YARN-7338) Support same origin policy for cross site scripting prevention.

2017-10-17 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7338:
-

Hi [~sunilg],

If the new UI has ability to view container execution log, then it is possible 
that javascript output in the log cause browser to execute unauthorized cross 
site scripts.

There are two requirements to secure javascript.

# Set document.domain property in javascript
# Set Access-Control-Allow-Origin: http://[hostname]/ws/v1/

The first javascript property is to make sure the javascript only evaluates 
ajax call to the same origin.  The second header is respond by server to ensure 
that access control can only be coming from the same origin.  It is likely that 
Access-Control-Allow-Origin needs to be set to a narrow list of /ws/v1/ prefix 
to be secured.

> Support same origin policy for cross site scripting prevention.
> ---
>
> Key: YARN-7338
> URL: https://issues.apache.org/jira/browse/YARN-7338
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn-ui-v2
>Reporter: Vrushali C
>
> Opening jira as suggested b [~eyang] on the thread for merging YARN-3368 (new 
> web UI) to branch2  
> http://mail-archives.apache.org/mod_mbox/hadoop-yarn-dev/201610.mbox/%3ccad++ecmvvqnzqz9ynkvkcxaczdkg50yiofxktgk3mmms9sh...@mail.gmail.com%3E
> --
> Ui2 does not seem to support same origin policy for cross site scripting 
> prevention.
> The following parameters has no effect for /ui2:
> hadoop.http.cross-origin.enabled = true
> yarn.resourcemanager.webapp.cross-origin.enabled = true
> This is because ui2 is designed as a separate web application.  WebFilters 
> setup for existing resource manager doesn’t apply to the new web application.
> Please open JIRA to track the security issue and resolve the problem prior to 
> backporting this to branch-2.
> This would minimize the risk to open up security hole in branch-2.
> --



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

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



[jira] [Created] (YARN-7344) Unit test for white list mount fails on CentOS 7

2017-10-17 Thread Eric Yang (JIRA)
Eric Yang created YARN-7344:
---

 Summary: Unit test for white list mount fails on CentOS 7
 Key: YARN-7344
 URL: https://issues.apache.org/jira/browse/YARN-7344
 Project: Hadoop YARN
  Issue Type: Bug
  Components: nodemanager
Affects Versions: 3.0.0-beta1
 Environment: CentOS Linux release 7.4.1708 (Core)
cmake3-3.6.3-1.el7.x86_64
openjdk version "1.8.0_144"
OpenJDK Runtime Environment (build 1.8.0_144-b01)
OpenJDK 64-Bit Server VM (build 25.144-b01, mixed mode)
Apache Maven 3.5.0 (ff8f5e7444045639af65f6095c62210b5713f426; 
2017-04-03T15:39:06-04:00)
libprotoc 2.5.0
Reporter: Eric Yang


YARN-6623 introduced ability to turn off docker support for container executor. 
 When running C++ unit tests, the newly introduced tests failed.

{code}
[  FAILED  ] 3 tests, listed below:
[  FAILED  ] TestDockerUtil.test_check_mount_permitted
[  FAILED  ] TestDockerUtil.test_normalize_mounts
[  FAILED  ] TestDockerUtil.test_add_rw_mounts
{code}





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

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



[jira] [Updated] (YARN-7323) Data structure update in service REST API

2017-10-13 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7323?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7323:

Description: 
Unix terminology implies daemon process, such as httpd as a service.  In Hadoop 
terminology, hdfs is a file system service, and hdfs has various components 
such as namenode, journal nodes, and datanodes.  YARN service data model was 
more closely describing daemon process as a service.  This JIRA propose to 
remap the YARN service data model to align with Hadoop terminology.  Service is 
composed of a collection of components.  Component is either a unix process or 
docker container.
  
Data structure for Yarnfile organized launched_command and state at Service 
level, but the grouping definition was following Hadoop terminology.  For 
clarity, we will change data structure to match Hadoop terminology.  State and 
launch commands are moved to component level.

  was:Data structure for Yarnfile organized state at service level.  


> Data structure update in service REST API
> -
>
> Key: YARN-7323
> URL: https://issues.apache.org/jira/browse/YARN-7323
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>Assignee: Jian He
> Attachments: YARN-7323.yarn-native-services.01.patch, 
> YARN-7323.yarn-native-services.02.patch
>
>
> Unix terminology implies daemon process, such as httpd as a service.  In 
> Hadoop terminology, hdfs is a file system service, and hdfs has various 
> components such as namenode, journal nodes, and datanodes.  YARN service data 
> model was more closely describing daemon process as a service.  This JIRA 
> propose to remap the YARN service data model to align with Hadoop 
> terminology.  Service is composed of a collection of components.  Component 
> is either a unix process or docker container.
>   
> Data structure for Yarnfile organized launched_command and state at Service 
> level, but the grouping definition was following Hadoop terminology.  For 
> clarity, we will change data structure to match Hadoop terminology.  State 
> and launch commands are moved to component level.



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

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



[jira] [Commented] (YARN-7326) Some issues in RegistryDNS

2017-10-13 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7326:
-

Sounds like dns java is misconfigured to use itself as the upstream dns server. 
 Hence, query runs into a infinite loop.  When setting up DNS, the code 
probably can look at /etc/resolv.conf and filter out its own IP address, then 
use the rest of the servers as upstream dns servers.

> Some issues in RegistryDNS
> --
>
> Key: YARN-7326
> URL: https://issues.apache.org/jira/browse/YARN-7326
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>Assignee: Jian He
>
> [~aw] helped to identify these issues: 
> Now some general bad news, not related to this patch:
> Ran a few queries, but this one is a bit concerning:
> {code}
> root@ubuntu:/hadoop/logs# dig @localhost -p 54 .
> ;; Warning: query response not set
> ; <<>> DiG 9.10.3-P4-Ubuntu <<>> @localhost -p 54 .
> ; (2 servers found)
> ;; global options: +cmd
> ;; Got answer:
> ;; ->>HEADER<<- opcode: QUERY, status: NOTAUTH, id: 47794
> ;; flags: rd ad; QUERY: 0, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
> ;; WARNING: recursion requested but not available
> ;; Query time: 0 msec
> ;; SERVER: 127.0.0.1#54(127.0.0.1)
> ;; WHEN: Thu Oct 12 16:04:54 PDT 2017
> ;; MSG SIZE  rcvd: 12
> root@ubuntu:/hadoop/logs# dig @localhost -p 54 axfr .
> ;; Connection to ::1#54(::1) for . failed: connection refused.
> ;; communications error to 127.0.0.1#54: end of file
> root@ubuntu:/hadoop/logs# 
> {code}
> It looks like it effectively fails when asked about a root zone, which is bad.
> It's also kind of interesting in what it does and doesn't log. Probably 
> should be configured to rotate logs based on size not date.
> The real showstopper though: RegistryDNS basically eats a core. It is running 
> with 100% cpu utilization with and without jsvc. On my laptop, this is 
> triggering my fan.



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

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



[jira] [Updated] (YARN-7217) PUT method for update service for Service API doesn't function correctly

2017-10-13 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7217?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7217:

Attachment: YARN-7217.yarn-native-services.001.patch

This patch modifies the PUT method to have /ws/v1/services/[service_name]/spec 
and /ws/v1/services/[service_name]/status.

This patch contains work for YARN-7215 and YARN-7216.  For changing number of 
containers with in a service, the api call must invoke:

# Update service configuration
# Stop existing service
# Start service


> PUT method for update service for Service API doesn't function correctly
> 
>
> Key: YARN-7217
> URL: https://issues.apache.org/jira/browse/YARN-7217
> Project: Hadoop YARN
>  Issue Type: Task
>  Components: api, applications
>Reporter: Eric Yang
> Attachments: YARN-7217.yarn-native-services.001.patch
>
>
> The PUT method for updateService API provides multiple functions:
> # Stopping a service.
> # Start a service.
> # Increase or decrease number of containers.
> The overloading is buggy depending on how the configuration should be applied.
> Scenario 1
> A user retrieves Service object from getService call, and the Service object 
> contains state: STARTED.  The user would like to increase number of 
> containers for the deployed service.  The JSON has been updated to increase 
> container count.  The PUT method does not actually increase container count.
> Scenario 2
> A user retrieves Service object from getService call, and the Service object 
> contains state: STOPPED.  The user would like to make a environment 
> configuration change.  The configuration does not get updated after PUT 
> method.
> This is possible to address by rearranging the logic of START/STOP after 
> configuration update.  However, there are other potential combinations that 
> can break PUT method.  For example, user like to make configuration changes, 
> but not yet restart the service until a later time.
> The alternative is to separate the PUT method into PUT method for 
> configuration vs status.  This increase the number of action that can be 
> performed.  New API could look like:
> {code}
> @PUT
> /ws/v1/services/[service_name]/config
> Request Data:
> {
>   "name":"[service_name]",
>   "number_of_containers": 5
> }
> {code}
> {code}
> @PUT
> /ws/v1/services/[service_name]/state
> Request data:
> {
>   "name": "[service_name]",
>   "state": "STOPPED|STARTED"
> }
> {code}



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

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



[jira] [Assigned] (YARN-7217) PUT method for update service for Service API doesn't function correctly

2017-10-13 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7217?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang reassigned YARN-7217:
---

Assignee: Eric Yang

> PUT method for update service for Service API doesn't function correctly
> 
>
> Key: YARN-7217
> URL: https://issues.apache.org/jira/browse/YARN-7217
> Project: Hadoop YARN
>  Issue Type: Task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7217.yarn-native-services.001.patch
>
>
> The PUT method for updateService API provides multiple functions:
> # Stopping a service.
> # Start a service.
> # Increase or decrease number of containers.
> The overloading is buggy depending on how the configuration should be applied.
> Scenario 1
> A user retrieves Service object from getService call, and the Service object 
> contains state: STARTED.  The user would like to increase number of 
> containers for the deployed service.  The JSON has been updated to increase 
> container count.  The PUT method does not actually increase container count.
> Scenario 2
> A user retrieves Service object from getService call, and the Service object 
> contains state: STOPPED.  The user would like to make a environment 
> configuration change.  The configuration does not get updated after PUT 
> method.
> This is possible to address by rearranging the logic of START/STOP after 
> configuration update.  However, there are other potential combinations that 
> can break PUT method.  For example, user like to make configuration changes, 
> but not yet restart the service until a later time.
> The alternative is to separate the PUT method into PUT method for 
> configuration vs status.  This increase the number of action that can be 
> performed.  New API could look like:
> {code}
> @PUT
> /ws/v1/services/[service_name]/config
> Request Data:
> {
>   "name":"[service_name]",
>   "number_of_containers": 5
> }
> {code}
> {code}
> @PUT
> /ws/v1/services/[service_name]/state
> Request data:
> {
>   "name": "[service_name]",
>   "state": "STOPPED|STARTED"
> }
> {code}



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

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



[jira] [Commented] (YARN-7066) Add ability to specify volumes to mount for DockerContainerRuntime

2017-10-13 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7066:
-

[~ebadger] Security restriction will be enforced by:

# Check for sudo privileges for launching privileged container (YARN-7221)
# Enforced effective uid:gid (YARN-4266)
# Black listed volume (YARN-7197)
# Allowed white list volume (YARN-5534)

For privileged users, there is minimum restrictions.  For unprivileged user, 
they can express path to mount, but they will be blocked to unauthorized area 
or by their own uid:gid privileges to file system ACL.

When the listed security defects are solved, this feature will be as good as 
accessing local file system ACL.

> Add ability to specify volumes to mount for DockerContainerRuntime
> --
>
> Key: YARN-7066
> URL: https://issues.apache.org/jira/browse/YARN-7066
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn-native-services
>Affects Versions: 3.0.0-beta1
>Reporter: Eric Yang
> Attachments: YARN-7066.001.patch, YARN-7066.002.patch
>
>
> Yarnfile describes environment, docker image, and configuration template for 
> launching docker containers in YARN.  It would be nice to have ability to 
> specify the volumes to mount.  This can be used in combination to 
> AMBARI-21748 to mount HDFS as data directories to docker containers.



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

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



[jira] [Commented] (YARN-7327) CapacityScheduler: Allocate containers asynchronously by default

2017-10-13 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7327:
-

The purpose of the artificial synchronous delay was to ensure all nodes have 
the same opportunity to talk to Jobtracker or Application Master.  This ensures 
there is somewhat evenly distribution of workload on all nodes instead of 
faster node end up with majority of data.  With faster network, and lower 
latency, it might be reasonable to shorten the heartbeat frequency to improve 
container allocation response time.  Asynchronous allocation will guarantee 
that fastest node end up with most data.  I don't have preference in the 
default, but large scale cluster is likely to use synchronous delay to prevent 
large skew of data in cluster.

> CapacityScheduler: Allocate containers asynchronously by default
> 
>
> Key: YARN-7327
> URL: https://issues.apache.org/jira/browse/YARN-7327
> Project: Hadoop YARN
>  Issue Type: Improvement
>Reporter: Craig Ingram
>Priority: Trivial
> Attachments: yarn-async-scheduling.png
>
>
> I was recently doing some research into Spark on YARN's startup time and 
> observed slow, synchronous allocation of containers/executors. I am testing 
> on a 4 node bare metal cluster w/48 cores and 128GB memory per node. YARN was 
> only allocating about 3 containers per second. Moreover when starting 3 Spark 
> applications at the same time with each requesting 44 containers, the first 
> application would get all 44 requested containers and then the next 
> application would start getting containers and so on.
>  
> From looking at the code, it appears this is by design. There is an 
> undocumented configuration variable that will enable asynchronous allocation 
> of containers. I'm sure I'm missing something, but why is this not the 
> default? Is there a bug or race condition in this code path? I've done some 
> testing with it and it's been working and is significantly faster.
>  
> Here's the config:
> `yarn.scheduler.capacity.schedule-asynchronously.enable`
>  
> Any help understanding this would be appreciated.
>  
> Thanks,
> Craig
>  
> If you're curious about the performance difference with this setting, here 
> are the results:
>  
> The following tool was used for the benchmarks:
> https://github.com/SparkTC/spark-bench
> h2. async scheduler research
> The goal of this test is to determine if running Spark on YARN with async 
> scheduling of containers reduces the amount of time required for an 
> application to receive all of its requested resources. This setting should 
> also reduce the overall runtime of short-lived applications/stages or 
> notebook paragraphs. This setting could prove crucial to achieving optimal 
> performance when sharing resources on a cluster with dynalloc enabled.
> h3. Test Setup
> Must update /etc/hadoop/conf/capacity-scheduler.xml (or through Ambari) 
> between runs.  
> `yarn.scheduler.capacity.schedule-asynchronously.enable=true|false`
> conf files request executors counts of:  
> * 2
> * 20
> * 50
> * 100
> The apps are being submitted to the default queue on each cluster which caps 
> at 48 cores on dynalloc and 72 cores on baremetal. The default queue was 
> expanded for the last two tests on baremetal so it could potentially take 
> advantage of all 144 cores.
> h3. Test Environments
> h4. dynalloc
> 4 VMs in Fyre (1 master, 3 workers)
> 8 CPUs/16 GB per node
> model name: QEMU Virtual CPU version 2.5+  
> h4. baremetal
> 4 baremetal instances in Fyre (1 master, 3 workers)
> 48 CPUs/128GB per node
> model name: Intel(R) Xeon(R) CPU E5-2680 v3 @ 2.50GHz  
> h3. Using spark-bench with timedsleep workload sync
> h4. dynalloc
> || requested containers | avg | stdev||
> |2 | 23.814900 | 1.110725|
> |20 | 29.770250 | 0.830528|
> |50 | 44.486600 | 0.593516|
> |100 | 44.337700 | 0.490139|
> h4. baremetal - 2 queues splitting cluster 72 cores each
> || requested containers | avg | stdev||
> |2 | 14.827000 | 0.292290|
> |20 | 19.613150 | 0.155421|
> |50 | 30.768400 | 0.083400|
> |100 | 40.931850 | 0.092160|
> h4. baremetal - 1 queue to rule them all - 144 cores
> || requested containers | avg | stdev||
> |2 | 14.833050 | 0.334061|
> |20 | 19.575000 | 0.212836|
> |50 | 30.765350 | 0.111035|
> |100 | 41.763300 | 0.182700|
> h3. Using spark-bench with timedsleep workload async
> h4. dynalloc
> || requested containers | avg | stdev||
> |2 | 22.575150 | 0.574296|
> |20 | 26.904150 | 1.244602|
> |50 | 44.721800 | 0.655388|
> |100 | 44.57 | 0.514540|
> h5. 2nd run  
> || requested containers | avg | stdev||
> |2 | 22.441200 | 0.715875|
> |20 | 26.683400 | 0.583762|
> |50 | 44.227250 | 0.512568|
> |100 | 44.238750 | 0.329712|
> h4. baremetal - 2 queues splitting cluster 72 

[jira] [Commented] (YARN-7217) PUT method for update service for Service API doesn't function correctly

2017-10-13 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-7217:
-

[~gsaha] 

{quote}
What do you mean by it does not increase the count? Are you saying there is a 
bug in the code, or are you saying that it should not increase container count?
{quote}

There is a bug in the code.

{quote}
Modifying service config for a service in STOPPED state is not supported via 
the REST API. It is supported in classic Slider though. Are you saying you want 
to support this in REST API?
{quote}

Yes, pause application should be supported in the REST API.  It is a valid use 
case to allow pause of the application by running slider stop, and resume the 
application later with a different YARN application ID,andt brand new set of 
containers.

{quote}
Do you intend to support GET for /ws/v1/services/[service_name]/spec as well? 
If yes, then for a STARTED app, what will GET return - the spec corresponding 
to the current snapshot of the running app OR the saved spec which might be 
more recent and has not been reflected to the running state yet? For STOPPED 
app this is not a problem.
{quote}

Yes, GET is also implemented in the current patch.  I incorporated patch for 
YARN-7216 in this patch to reduce logistic work.

{quote}
Also, the patch contains solr specific changes and cannot be reviewed in its 
current state.
{quote}

The patch allows the configuration to be stored in Solr for faster search and 
retrieval time.  There is a on/off flag to use Slor as backend.  When solr 
storage backend is disabled (default), it will look for spec in HDFS.

> PUT method for update service for Service API doesn't function correctly
> 
>
> Key: YARN-7217
> URL: https://issues.apache.org/jira/browse/YARN-7217
> Project: Hadoop YARN
>  Issue Type: Task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7217.yarn-native-services.001.patch
>
>
> The PUT method for updateService API provides multiple functions:
> # Stopping a service.
> # Start a service.
> # Increase or decrease number of containers.
> The overloading is buggy depending on how the configuration should be applied.
> Scenario 1
> A user retrieves Service object from getService call, and the Service object 
> contains state: STARTED.  The user would like to increase number of 
> containers for the deployed service.  The JSON has been updated to increase 
> container count.  The PUT method does not actually increase container count.
> Scenario 2
> A user retrieves Service object from getService call, and the Service object 
> contains state: STOPPED.  The user would like to make a environment 
> configuration change.  The configuration does not get updated after PUT 
> method.
> This is possible to address by rearranging the logic of START/STOP after 
> configuration update.  However, there are other potential combinations that 
> can break PUT method.  For example, user like to make configuration changes, 
> but not yet restart the service until a later time.
> The alternative is to separate the PUT method into PUT method for 
> configuration vs status.  This increase the number of action that can be 
> performed.  New API could look like:
> {code}
> @PUT
> /ws/v1/services/[service_name]/config
> Request Data:
> {
>   "name":"[service_name]",
>   "number_of_containers": 5
> }
> {code}
> {code}
> @PUT
> /ws/v1/services/[service_name]/state
> Request data:
> {
>   "name": "[service_name]",
>   "state": "STOPPED|STARTED"
> }
> {code}



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

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



[jira] [Updated] (YARN-7323) Data structure update in service REST API

2017-10-13 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7323?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7323:

Description: Data structure for Yarnfile organized state at service level.  

> Data structure update in service REST API
> -
>
> Key: YARN-7323
> URL: https://issues.apache.org/jira/browse/YARN-7323
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>Assignee: Jian He
> Attachments: YARN-7323.yarn-native-services.01.patch, 
> YARN-7323.yarn-native-services.02.patch
>
>
> Data structure for Yarnfile organized state at service level.  



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

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



[jira] [Updated] (YARN-7323) Data structure update in service REST API

2017-10-13 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7323?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7323:

Summary: Data structure update in service REST API  (was: Some changes in 
service REST API)

> Data structure update in service REST API
> -
>
> Key: YARN-7323
> URL: https://issues.apache.org/jira/browse/YARN-7323
> Project: Hadoop YARN
>  Issue Type: Sub-task
>Reporter: Jian He
>Assignee: Jian He
> Attachments: YARN-7323.yarn-native-services.01.patch, 
> YARN-7323.yarn-native-services.02.patch
>
>




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

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



[jira] [Comment Edited] (YARN-7066) Add ability to specify volumes to mount for DockerContainerRuntime

2017-10-13 Thread Eric Yang (JIRA)

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

Eric Yang edited comment on YARN-7066 at 10/13/17 11:08 PM:


[~ebadger] Security restriction will be enforced by:

# Check for sudo privileges for launching privileged container (YARN-7221)
# Enforced effective uid:gid (YARN-4266)
# Black listed volume (YARN-7197)
# Allowed white list volume (YARN-5534)

For privileged users, there is minimum restrictions.  For unprivileged users, 
they can express path to mount, but they will be blocked to unauthorized area 
or by their own uid:gid privileges to file system ACL.

When the listed security defects are solved, this feature will be as good as 
accessing local file system ACL.


was (Author: eyang):
[~ebadger] Security restriction will be enforced by:

# Check for sudo privileges for launching privileged container (YARN-7221)
# Enforced effective uid:gid (YARN-4266)
# Black listed volume (YARN-7197)
# Allowed white list volume (YARN-5534)

For privileged users, there is minimum restrictions.  For unprivileged user, 
they can express path to mount, but they will be blocked to unauthorized area 
or by their own uid:gid privileges to file system ACL.

When the listed security defects are solved, this feature will be as good as 
accessing local file system ACL.

> Add ability to specify volumes to mount for DockerContainerRuntime
> --
>
> Key: YARN-7066
> URL: https://issues.apache.org/jira/browse/YARN-7066
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn-native-services
>Affects Versions: 3.0.0-beta1
>Reporter: Eric Yang
> Attachments: YARN-7066.001.patch, YARN-7066.002.patch
>
>
> Yarnfile describes environment, docker image, and configuration template for 
> launching docker containers in YARN.  It would be nice to have ability to 
> specify the volumes to mount.  This can be used in combination to 
> AMBARI-21748 to mount HDFS as data directories to docker containers.



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

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



[jira] [Updated] (YARN-7066) Add ability to specify volumes to mount for DockerContainerRuntime

2017-10-13 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7066?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7066:

Attachment: YARN-7066.002.patch

Rebase patch on trunk code.

> Add ability to specify volumes to mount for DockerContainerRuntime
> --
>
> Key: YARN-7066
> URL: https://issues.apache.org/jira/browse/YARN-7066
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn-native-services
>Affects Versions: 3.0.0-beta1
>Reporter: Eric Yang
> Attachments: YARN-7066.001.patch, YARN-7066.002.patch
>
>
> Yarnfile describes environment, docker image, and configuration template for 
> launching docker containers in YARN.  It would be nice to have ability to 
> specify the volumes to mount.  This can be used in combination to 
> AMBARI-21748 to mount HDFS as data directories to docker containers.



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

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



[jira] [Commented] (YARN-6623) Add support to turn off launching privileged containers in the container-executor

2017-10-16 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-6623:
-

[~vvasudev] How is the C++ test case getting triggered?  mvn clean test 
-Pnative doesn't trigger test_docker_util.cc to run.

> Add support to turn off launching privileged containers in the 
> container-executor
> -
>
> Key: YARN-6623
> URL: https://issues.apache.org/jira/browse/YARN-6623
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: nodemanager
>Reporter: Varun Vasudev
>Assignee: Varun Vasudev
>Priority: Blocker
> Fix For: 3.0.0
>
> Attachments: YARN-6623-branch-2.013.patch, 
> YARN-6623-branch-2.014.patch, YARN-6623-branch-2.015.patch, 
> YARN-6623.001.patch, YARN-6623.002.patch, YARN-6623.003.patch, 
> YARN-6623.004.patch, YARN-6623.005.patch, YARN-6623.006.patch, 
> YARN-6623.007.patch, YARN-6623.008.patch, YARN-6623.009.patch, 
> YARN-6623.010.patch, YARN-6623.011.patch, YARN-6623.012.patch, 
> YARN-6623.013.patch
>
>
> Currently, launching privileged containers is controlled by the NM. We should 
> add a flag to the container-executor.cfg allowing admins to disable launching 
> privileged containers at the container-executor level.



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

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



[jira] [Updated] (YARN-6623) Add support to turn off launching privileged containers in the container-executor

2017-10-16 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-6623?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-6623:

Attachment: cetest.stderr
cetest.stdout

[~vvasudev] Here are the output of the failed test.  Any idea why the tests 
fail?

> Add support to turn off launching privileged containers in the 
> container-executor
> -
>
> Key: YARN-6623
> URL: https://issues.apache.org/jira/browse/YARN-6623
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: nodemanager
>Reporter: Varun Vasudev
>Assignee: Varun Vasudev
>Priority: Blocker
> Fix For: 3.0.0
>
> Attachments: YARN-6623-branch-2.013.patch, 
> YARN-6623-branch-2.014.patch, YARN-6623-branch-2.015.patch, 
> YARN-6623.001.patch, YARN-6623.002.patch, YARN-6623.003.patch, 
> YARN-6623.004.patch, YARN-6623.005.patch, YARN-6623.006.patch, 
> YARN-6623.007.patch, YARN-6623.008.patch, YARN-6623.009.patch, 
> YARN-6623.010.patch, YARN-6623.011.patch, YARN-6623.012.patch, 
> YARN-6623.013.patch, cetest.stderr, cetest.stdout
>
>
> Currently, launching privileged containers is controlled by the NM. We should 
> add a flag to the container-executor.cfg allowing admins to disable launching 
> privileged containers at the container-executor level.



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

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



[jira] [Commented] (YARN-6623) Add support to turn off launching privileged containers in the container-executor

2017-10-16 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-6623:
-

Talked to [~wangda] and he said the test can be triggered using:

{code}
-Dtest=cetest,test-container-executor -Pnative
{code}

To the maven command.  It would be nice if it is covered by default test 
without passing in test case name.

> Add support to turn off launching privileged containers in the 
> container-executor
> -
>
> Key: YARN-6623
> URL: https://issues.apache.org/jira/browse/YARN-6623
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: nodemanager
>Reporter: Varun Vasudev
>Assignee: Varun Vasudev
>Priority: Blocker
> Fix For: 3.0.0
>
> Attachments: YARN-6623-branch-2.013.patch, 
> YARN-6623-branch-2.014.patch, YARN-6623-branch-2.015.patch, 
> YARN-6623.001.patch, YARN-6623.002.patch, YARN-6623.003.patch, 
> YARN-6623.004.patch, YARN-6623.005.patch, YARN-6623.006.patch, 
> YARN-6623.007.patch, YARN-6623.008.patch, YARN-6623.009.patch, 
> YARN-6623.010.patch, YARN-6623.011.patch, YARN-6623.012.patch, 
> YARN-6623.013.patch
>
>
> Currently, launching privileged containers is controlled by the NM. We should 
> add a flag to the container-executor.cfg allowing admins to disable launching 
> privileged containers at the container-executor level.



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

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



[jira] [Commented] (YARN-6623) Add support to turn off launching privileged containers in the container-executor

2017-10-16 Thread Eric Yang (JIRA)

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

Eric Yang commented on YARN-6623:
-

The current trunk seems to fail on these test cases:

{code}
[  FAILED  ] 3 tests, listed below:
[  FAILED  ] TestDockerUtil.test_check_mount_permitted
[  FAILED  ] TestDockerUtil.test_normalize_mounts
[  FAILED  ] TestDockerUtil.test_add_rw_mounts
{code}


> Add support to turn off launching privileged containers in the 
> container-executor
> -
>
> Key: YARN-6623
> URL: https://issues.apache.org/jira/browse/YARN-6623
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: nodemanager
>Reporter: Varun Vasudev
>Assignee: Varun Vasudev
>Priority: Blocker
> Fix For: 3.0.0
>
> Attachments: YARN-6623-branch-2.013.patch, 
> YARN-6623-branch-2.014.patch, YARN-6623-branch-2.015.patch, 
> YARN-6623.001.patch, YARN-6623.002.patch, YARN-6623.003.patch, 
> YARN-6623.004.patch, YARN-6623.005.patch, YARN-6623.006.patch, 
> YARN-6623.007.patch, YARN-6623.008.patch, YARN-6623.009.patch, 
> YARN-6623.010.patch, YARN-6623.011.patch, YARN-6623.012.patch, 
> YARN-6623.013.patch
>
>
> Currently, launching privileged containers is controlled by the NM. We should 
> add a flag to the container-executor.cfg allowing admins to disable launching 
> privileged containers at the container-executor level.



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

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



[jira] [Updated] (YARN-7217) PUT method for update service for Service API doesn't function correctly

2017-10-16 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7217?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7217:

Attachment: YARN-7217.yarn-native-services.002.patch

- Rebase patch on current HEAD of yarn-native-services branch.

> PUT method for update service for Service API doesn't function correctly
> 
>
> Key: YARN-7217
> URL: https://issues.apache.org/jira/browse/YARN-7217
> Project: Hadoop YARN
>  Issue Type: Task
>  Components: api, applications
>Reporter: Eric Yang
>Assignee: Eric Yang
> Attachments: YARN-7217.yarn-native-services.001.patch, 
> YARN-7217.yarn-native-services.002.patch
>
>
> The PUT method for updateService API provides multiple functions:
> # Stopping a service.
> # Start a service.
> # Increase or decrease number of containers.
> The overloading is buggy depending on how the configuration should be applied.
> Scenario 1
> A user retrieves Service object from getService call, and the Service object 
> contains state: STARTED.  The user would like to increase number of 
> containers for the deployed service.  The JSON has been updated to increase 
> container count.  The PUT method does not actually increase container count.
> Scenario 2
> A user retrieves Service object from getService call, and the Service object 
> contains state: STOPPED.  The user would like to make a environment 
> configuration change.  The configuration does not get updated after PUT 
> method.
> This is possible to address by rearranging the logic of START/STOP after 
> configuration update.  However, there are other potential combinations that 
> can break PUT method.  For example, user like to make configuration changes, 
> but not yet restart the service until a later time.
> The alternative is to separate the PUT method into PUT method for 
> configuration vs status.  This increase the number of action that can be 
> performed.  New API could look like:
> {code}
> @PUT
> /ws/v1/services/[service_name]/config
> Request Data:
> {
>   "name":"[service_name]",
>   "number_of_containers": 5
> }
> {code}
> {code}
> @PUT
> /ws/v1/services/[service_name]/state
> Request data:
> {
>   "name": "[service_name]",
>   "state": "STOPPED|STARTED"
> }
> {code}



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

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



[jira] [Updated] (YARN-7197) Add support for a volume blacklist for docker containers

2017-10-16 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7197?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang updated YARN-7197:

Attachment: YARN-7197.001.patch

Basic check for black list requires exact match of path to ban.  The evaluation 
order is white list first, then black list.  This is assuming majority of the 
volumes can be mounted, and there are only a few system protected area, which 
can not be mounted.

> Add support for a volume blacklist for docker containers
> 
>
> Key: YARN-7197
> URL: https://issues.apache.org/jira/browse/YARN-7197
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn
>Reporter: Shane Kumpf
> Attachments: YARN-7197.001.patch
>
>
> Docker supports bind mounting host directories into containers. Work is 
> underway to allow admins to configure a whilelist of volume mounts. While 
> this is a much needed and useful feature, it opens the door for 
> misconfiguration that may lead to users being able to compromise or crash the 
> system. 
> One example would be allowing users to mount /run from a host running 
> systemd, and then running systemd in that container, rendering the host 
> mostly unusable.
> This issue is to add support for a default blacklist. The default blacklist 
> would be where we put files and directories that if mounted into a container, 
> are likely to have negative consequences. Users are encouraged not to remove 
> items from the default blacklist, but may do so if necessary.



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

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



[jira] [Assigned] (YARN-7197) Add support for a volume blacklist for docker containers

2017-10-16 Thread Eric Yang (JIRA)

 [ 
https://issues.apache.org/jira/browse/YARN-7197?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Yang reassigned YARN-7197:
---

Assignee: Eric Yang

> Add support for a volume blacklist for docker containers
> 
>
> Key: YARN-7197
> URL: https://issues.apache.org/jira/browse/YARN-7197
> Project: Hadoop YARN
>  Issue Type: Sub-task
>  Components: yarn
>Reporter: Shane Kumpf
>Assignee: Eric Yang
> Attachments: YARN-7197.001.patch
>
>
> Docker supports bind mounting host directories into containers. Work is 
> underway to allow admins to configure a whilelist of volume mounts. While 
> this is a much needed and useful feature, it opens the door for 
> misconfiguration that may lead to users being able to compromise or crash the 
> system. 
> One example would be allowing users to mount /run from a host running 
> systemd, and then running systemd in that container, rendering the host 
> mostly unusable.
> This issue is to add support for a default blacklist. The default blacklist 
> would be where we put files and directories that if mounted into a container, 
> are likely to have negative consequences. Users are encouraged not to remove 
> items from the default blacklist, but may do so if necessary.



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

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



  1   2   3   4   5   6   7   8   9   10   >