[arch-dev-public] Fwd: [systemd-devel] [HEADSUP] systemd cgroup changes
d at falconindy.com
Mon Jun 17 09:03:58 EDT 2013
FYI, for those not subscribed to systemd-devel. Doesn't seem like this
will affect too much, unless you've been heavily tweaking your services.
----- Forwarded message from Lennart Poettering <lennart at poettering.net> -----
> Date: Mon, 17 Jun 2013 14:49:55 +0200
> From: Lennart Poettering <lennart at poettering.net>
> To: systemd Mailing List <systemd-devel at lists.freedesktop.org>
> Cc: Tejun Heo <tj at kernel.org>
> Subject: [systemd-devel] [HEADSUP] systemd cgroup changes
> in the past weeks we have been sitting down with the cgroup maintainer
> in the kernel, Tejun Heo, at a number of conferences. During these
> discussions it became very clear to us that the way systemd currently
> exposes cgroups exposes too much of the guts of it, and is incompatible
> with how the kernel cgroup subsystem will be cleaned up in the near-term
> Hence I'd like to let everybody in the systemd community know that the
> cgroup settings, commands and APIs in systemd will change soon. Please
> be aware of this when you make use of advanced cgroup functionality.
> - The functionality to define orthogonal cgroup trees for the various
> controllers will be removed. In fact we'll likely remove the entire
> API for setting abritrary per-controller paths for each unit. Instead
> we will introduce a new concept of "Slices" which will allow you to
> partition system resources in a tree and move units, users, and
> machines to arbitrary places in it. There will only be a single cgroup
> tree, but the various controllers may be enabled/disabled separately
> for each group, so that individual controllers might only see a
> subtree of the full tree, but not orthogonal trees anymore. The
> ConrolGroup= unit setting will go away, and be replaced by Slice= plus
> EnableControllers= or so.
> - ControlGroupPersistent= will likely go away, systemd will be the only
> component of the OS that sets up the cgroup tree.
> - ControlGroupAttribute= will most likely go away entirely. Instead we
> will introduce more high level controls like the existing CPUShares=,
> MemoryLimit= and so on. (BTW, if there's a specific attribute we currently don't
> cover but which you really need let us know and we will see if we can
> add a high-level control for it.)
> - CPUShares=, MemoryLimit= and so on will continue to exist as before.
> - "systemctl set-cgroup" will go away, and be replaced by systemctl
> "set-slice" or something similar.
> - "systemctl set-cgroup-attr" will go away, and be replaced by
> "systemctl set-attr" or so, which only can set the high level
> - The (currently undocumented) bus APIs for cgroup controls will be
> Sorry for this disruption. Thankfully we have not documented these APIs
> yet and we haven't made the funcionality too widely known. We hate to
> make incompatible changes like this, but in this case it's probably
> better to clean this up early when it is not often used instead of late
> when everybody already uses this.
> This will remove a few bits of functionality but all in all give you a
> lot more back. For example, the "slice" functionality will provide you
> with a powerful and naturally built-in way to partition your resources
> in arbitrary ways, and can be used to not only assign resource limits to
> systemd units but also login users and machines.
> We haven't hashed out all the details yet, but expect this to land very
> soon in git.
> Lennart Poettering - Red Hat, Inc.
> systemd-devel mailing list
> systemd-devel at lists.freedesktop.org
----- End forwarded message -----
More information about the arch-dev-public