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

Manoj Samel commented on SLIDER-1114:
-------------------------------------

Capturing d-list discussion for this topic here for future reference

There was a suggestion on running each component as a separate application. 
I.e. rather than running a single application and launching a component per 
user; run one application per end user. 

Though this will address the security requirement (each application can be 
started as the required end user); this creates scalability & manageability 
issue when user population is taken into account. There will be hundreds or 
thousands of users. This means there will be thousands of application instances 
and thousands of slider AM instances running on the cluster; each managing just 
one component

1. Running large number of AMs (each managing just one component) will burden 
resources
2. The application life cycle (stop/start/upgrade/monitor) will be hard to 
manage with large number of application instances. 

The advantage of single application (with multiple components) is that the 
application code base is single, just the runtime security is changed per user; 
thus the life cycle is easier to manage.

> Provide option to run components as different user(s)
> -----------------------------------------------------
>
>                 Key: SLIDER-1114
>                 URL: https://issues.apache.org/jira/browse/SLIDER-1114
>             Project: Slider
>          Issue Type: New Feature
>    Affects Versions: Slider 0.80
>            Reporter: Manoj Samel
>
> Environment is slider .80 on Hadoop 2.6 secured cluster
> A component is launched for each distinct user of the service (via upgrade). 
> E.g. when user A accesses service, do a "upgrade" and create a component for 
> user A. When user B comes, create another component for user B etc.
> At present, all of these components are launched & run as single linux user - 
> this is the user who launches slider AM.
> Security needs may demand that each component be run as its own linux user. 
> This ask is similar to how secured Hadoop cluster launches MR jobs for user 
> using user's login
> Expected ask is as follows ...
> Launch slider AM as user "admin"
> Run component for user A as user A's uid and gid
> Run component for user B as user B's uid and gid
> It seems this was thought about and then commented out in some version
> In version .80; resource_management/core/resources/system.py, I noticed that 
> class Execute can take a parameter "user". Its not clear if and how this 
> could be used. In core/shell.py, the logic around "user" is commented out 
> with comment " Do not su to the supplied user" 



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

Reply via email to