You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Vinod Kone (JIRA)" <ji...@apache.org> on 2015/04/06 21:04:12 UTC
[jira] [Resolved] (MESOS-458) Current cgroups layout does not
ensure the slave gets a fair share of the CPU resources.
[ https://issues.apache.org/jira/browse/MESOS-458?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Vinod Kone resolved MESOS-458.
------------------------------
Resolution: Duplicate
Assignee: Ian Downes
> Current cgroups layout does not ensure the slave gets a fair share of the CPU resources.
> ----------------------------------------------------------------------------------------
>
> Key: MESOS-458
> URL: https://issues.apache.org/jira/browse/MESOS-458
> Project: Mesos
> Issue Type: Improvement
> Components: isolation
> Reporter: Benjamin Mahler
> Assignee: Ian Downes
>
> We currently have the following layout when there is no system cgroup present on a machine:
> /cgroup: (system processes, including the mesos-slave) 1024 shares
> /cgroup/mesos: (no processes) 1024 shares
> /cgroup/mesos/executor1: X shares
> ...
> /cgroup/mesos/executorN: X shares
> This does not ensure the slave gets a fair share of the cpu, especially when there is load inside the root cgroup. This is because the slave is contending with other processes inside the root cgroup. If the administrators set up a system cgroup, the layout looks as follows:
> /cgroup: (no processes)
> /cgroup/system: (system processes, including the mesos-slave) 1024 shares
> /cgroup/mesos: (no processes) 1024 shares
> /cgroup/mesos/executor1: X shares
> ...
> /cgroup/mesos/executorN: X shares
> This still does not ensure the slave gets a fair share for the same reasons.
> However, if we create a cgroup to hold only the slave:
> /cgroup: (no processes)
> /cgroup/system: (system processes) 1024 shares
> /cgroup/mesos-slave: (mesos-slave process) 1024 shares
> /cgroup/mesos: (no processes) 1024 shares
> /cgroup/mesos/executor1: X shares
> ...
> /cgroup/mesos/executorN: X shares
> With the above configuration, the slave will get 1024 / (1024 + 1024 + 1024) = 1/3 of the CPUs, system processes will similarly get 1/3 of the CPUs, and the executors will get 1/3 as well in total.
> See the following link for sharing behavior in the root cgroup: https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/6/html/Resource_Management_Guide/process_behavior.html
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)