[
https://issues.apache.org/jira/browse/MESOS-4697?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
haosdent updated MESOS-4697:
----------------------------
Description:
Linux introduce the unified cgroup hierarchy since 3.16
[https://lwn.net/Articles/601840/|The unified control group hierarchy in 3.16]
[https://github.com/torvalds/linux/blob/master/Documentation/cgroup-v2.txt|cgroup-v2]
There are two motivations for this:
1) It's very verbose to add a new isolator. For cgroup isolators (e.g., cpu,
mem, net_cls, etc.), many of the logics are the same. We are currently
duplicating a lot of the code.
2) Initially, we decided to use a separate isolator for each cgroup subsystem
is because we want each subsystem to be mounted under a different hierarchy.
This gradually become not true with unified cgroup hierarchy introduced in
kernel 3.16. Also, on some popular linux distributions, some subsystems are
co-mounted within the same hierarchy (e.g., net_cls and net_prio, cpu and
cpuacct). It becomes very hard to co-manage a hierarchy by two isolators.
We can still introduce subsystem specific code under the unified cgroup
isolator (e.g., introduce a Subsystem abstraction?).
was:
There are two motivations for this:
1) It's very verbose to add a new isolator. For cgroup isolators (e.g., cpu,
mem, net_cls, etc.), many of the logics are the same. We are currently
duplicating a lot of the code.
2) Initially, we decided to use a separate isolator for each cgroup subsystem
is because we want each subsystem to be mounted under a different hierarchy.
This gradually become not true with unified cgroup hierarchy introduced in
kernel 3.16. Also, on some popular linux distributions, some subsystems are
co-mounted within the same hierarchy (e.g., net_cls and net_prio, cpu and
cpuacct). It becomes very hard to co-manage a hierarchy by two isolators.
We can still introduce subsystem specific code under the unified cgroup
isolator (e.g., introduce a Subsystem abstraction?).
> Consolidate cgroup isolators into one single isolator.
> ------------------------------------------------------
>
> Key: MESOS-4697
> URL: https://issues.apache.org/jira/browse/MESOS-4697
> Project: Mesos
> Issue Type: Epic
> Reporter: Jie Yu
> Assignee: haosdent
> Attachments: cgroup_v2.pdf
>
>
> Linux introduce the unified cgroup hierarchy since 3.16
> [https://lwn.net/Articles/601840/|The unified control group hierarchy in
> 3.16]
> [https://github.com/torvalds/linux/blob/master/Documentation/cgroup-v2.txt|cgroup-v2]
> There are two motivations for this:
> 1) It's very verbose to add a new isolator. For cgroup isolators (e.g., cpu,
> mem, net_cls, etc.), many of the logics are the same. We are currently
> duplicating a lot of the code.
> 2) Initially, we decided to use a separate isolator for each cgroup subsystem
> is because we want each subsystem to be mounted under a different hierarchy.
> This gradually become not true with unified cgroup hierarchy introduced in
> kernel 3.16. Also, on some popular linux distributions, some subsystems are
> co-mounted within the same hierarchy (e.g., net_cls and net_prio, cpu and
> cpuacct). It becomes very hard to co-manage a hierarchy by two isolators.
> We can still introduce subsystem specific code under the unified cgroup
> isolator (e.g., introduce a Subsystem abstraction?).
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)