You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@mesos.apache.org by "Ian Downes (JIRA)" <ji...@apache.org> on 2014/03/13 18:12:02 UTC

[jira] [Commented] (MESOS-1094) Introduce pid namespace abstraction to stout

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

Ian Downes commented on MESOS-1094:
-----------------------------------

We're working on a branch where the Launcher used by the MesosContainerizer uses clone() for creating PID and other namespaces.

I was under the impression that stout/fork was mostly used in tests?

Perhaps a better place would be in Subprocess.
- Async-signal safety could be enforced.
- We could support clone() for new namespaces and also setns to enter existing namespaces.

> Introduce pid namespace abstraction to stout
> --------------------------------------------
>
>                 Key: MESOS-1094
>                 URL: https://issues.apache.org/jira/browse/MESOS-1094
>             Project: Mesos
>          Issue Type: Improvement
>            Reporter: Niklas Quarfot Nielsen
>            Assignee: Niklas Quarfot Nielsen
>
> Introducing PID namespacing could simplify signal escalation and process control in for example the command executor and pluggable containerizer.
> Along the lines of the Fork Exec abstraction in stout, I suggest that we add an abstraction for Linux namespaces.
> LinuxNamespace(PID /* | IPC | mount | ...*/, Fork(Exec("sleep 10"))
> It would be guarded or add convenience methods to ensure system support, for example bool LinuxNamespace::supports(PID /* | IPC | ... */) or simply let the namespace fall back to regular fork/exec.
> I have a proof-of-concept version of the command executor which use PID namespaces (in combination with delay/escalation), and it feels like details around stack allocation and management could be captured in a new abstraction and make it a neat and nice subsystem to use.



--
This message was sent by Atlassian JIRA
(v6.2#6252)