On Wed, Dec 14, 2011 at 4:30 AM, Jan Safranek <jsafr...@redhat.com> wrote:

> New documentation file is added. It should describe how systemd and
> libcgroup should work together and how to configure a system to have
> control groups created by libcgroup's cgconfig service.
>
> I'm going to install this README into /usr/share/doc/libcgroup-*/.
>
> I know I am not Shakespeare and also English is not my mother language,
> feel
> free to comment also the style and grammar. Missing/wrong articles is my
> speciality :).
>
> Signed-off-by: Jan Safranek <jsafr...@redhat.com>
> ---
>
>  README_systemd |   68
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++
>  1 files changed, 68 insertions(+), 0 deletions(-)
>  create mode 100644 README_systemd
>
> diff --git a/README_systemd b/README_systemd
> new file mode 100644
> index 0000000..3bb2f6b
> --- /dev/null
> +++ b/README_systemd
> @@ -0,0 +1,68 @@
> +Integration with systemd
> +========================
> +
> +systemd is a system and service manager for Linux, compatible with SysV
> +and LSB init scripts. systemd heavily uses control groups to manage and
> control
> +services.
> +
> +Most of the libcgroup tools and APIs can be safely used on systems with
> systemd
> +without any problems. This document tries to describe how to configure
> systemd
> +and libcgroup so they can safely live together and mutually benefit from
> each
> +other.
> +
> +References
> +==========
> +[1] http://www.freedesktop.org/wiki/Software/systemd
> +Systemd home page.
> +
> +[2] http://www.freedesktop.org/wiki/Software/systemd/PaxControlGroups
> +This is the most usefult document describing systemd expectations on
> applications
> +(incl. libcgroup tools).
> +
> +
> +Compilation
> +===========
> +As stated in [2], libcgroup should not touch "name=systemd" hierarchy.
> Compile
> +libcgroup with --enable-opaque-hierarchy configure option to do so:
> +
> +./configure --enable-opaque-hierarchy=name=systemd
> +
> +Libcgroup and all its tools won't then see the "name=systemd" hierarchy
> at all.
> +For example, lsgcroup won't show it's content and cgclear won't remove it.
> +
> +
> +Startup and services
> +====================
> +
> +Systemd automatically mounts all available controllers on system boot
> ("cpu"
> +and "cpuacct" together in one hierarchy by default) and can automatically
> put
> +service processes into control groups with configured parameters - by
> default,
> +each service is automatically put into "cpu,cpuacct:/system/$service_name"
> +control group. System admin has full control on parameters of each group
> and

+also which controllers are used. Consult systemd documentation, mainly
>

 The System Administrator has full control of parameters in each group and
of which controllers are used

+systemd.conf(5) and systemd.exec(5), for details.
> +
> +In vast majority of use cases, this should be enough and libcgroup does
> not need
> +to be used.
>

In *the* vast majority of use cases


> +
> +For specific use cases, e.g. when different tree of control groups is
> needed,
>

when *a* different tree of control


> +libcgroup provides cgconfig service. This service can create arbitrary
> control
> +group hierarchies. In this case, follow these steps:
> +
> +1. Set 'DefaultControllers=' in /etc/systemd/system.conf so systemd does
> not
> +create control groups for services automatically.
> +
> +2. Prepare /etc/cgconfig.conf and enable cgconfig service. The service
> will
> +parse /etc/cgconfig.conf file during machine boot and create all control
> +groups which are defined in it. The service automatically sets '+t'
> ("sticky")
> +bit on tasks file as recommended in [2].
> +
> +3. For each service that should start in specific control group, add
> following
> +lines into it's unit file:
>

add *the* following lines into *its* unit file


> +       After=cgconfig.service
> +       ControlGroup=<name of the control group(s)>
> +
> +This ensures the service is started only after cgconfig creates necessary
> +hierarchy for it and also tells systemd into which control group should
> be the

+service started.
>

creates *the* necessary hierarchy for it.  It also tells systemd which
control group it should use to start the service.

-kevin


> +
>
>
>
> ------------------------------------------------------------------------------
> Cloud Computing - Latest Buzzword or a Glimpse of the Future?
> This paper surveys cloud computing today: What are the benefits?
> Why are businesses embracing it? What are its payoffs and pitfalls?
> http://www.accelacomm.com/jaw/sdnl/114/51425149/
> _______________________________________________
> Libcg-devel mailing list
> Libcg-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/libcg-devel
>
------------------------------------------------------------------------------
Cloud Computing - Latest Buzzword or a Glimpse of the Future?
This paper surveys cloud computing today: What are the benefits? 
Why are businesses embracing it? What are its payoffs and pitfalls?
http://www.accelacomm.com/jaw/sdnl/114/51425149/
_______________________________________________
Libcg-devel mailing list
Libcg-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libcg-devel

Reply via email to