All of lore.kernel.org
 help / color / mirror / Atom feed
From: KAMEZAWA Hiroyuki <kamezawa.hiroyu-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
To: Andrew Martin <andrew.s.martin-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: Cannot set memory.memsw.limit_in_bytes for a particular cgroup
Date: Wed, 25 Apr 2012 09:41:26 +0900	[thread overview]
Message-ID: <4F974836.1090000@jp.fujitsu.com> (raw)
In-Reply-To: <CAE+0DR6yyRHGKYiR-svQAdaV2ZqgaTgPvDMwFFmVs6rJG6w0JA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

(2012/04/25 7:47), Andrew Martin wrote:

> Hello,
> 
> 
> I am running a VM with Ubuntu Server 10.04 amd64. I have installed and
> configured cgroups to limit the resources available to samba, nfs, and
> apache. My configuration is as follows:
> /etc/cgconfig.conf
> group nfs {
>         memory {
>                 memory.limit_in_bytes = 500M;
>                 memory.memsw.limit_in_bytes = 1000M;
>         }
>         cpu {
>                 cpu.shares = 10;
>         }
> }
> 
> group smb {
>         memory {
>                 memory.limit_in_bytes = 1500M;
>                 memory.memsw.limit_in_bytes = 2000M;
>         }
>         cpu {
>                 cpu.shares = 13;
>         }
> }
> 
> group apache {
>         memory {
>                 memory.limit_in_bytes = 6G;
>                 memory.memsw.limit_in_bytes = 6G;
>                 memory.swappiness = 5;
>         }
>         cpu {
>                 cpu.shares = 100;
>         }
> }
> 
> 
> mount {
>         cpu = /mnt/cgroups/cpu;
>         cpuacct = /mnt/cgroups/cpuacct;
>         memory = /mnt/cgroups/memory;
>         cpuset = /mnt/cgroups/cpuset;
> }
> 
> /etc/cgrules.conf
> ## Samba Server
> root:/usr/sbin/smbd             cpu,memory      smb/
> root:/usr/sbin/nmbd             cpu,memory      smb/
> 
> ## NFS Server
> root:/usr/sbin/exportfs         cpu,memory      nfs/
> root:/usr/sbin/rpc.mountd       cpu,memory      nfs/
> root:/usr/sbin/rpc.nfsd         cpu,memory      nfs/
> root:/usr/sbin/rpc.svcgssd      cpu,memory      nfs/
> root:nfsd                       cpu,memory      nfs/
> root:nfsd4                      cpu,memory      nfs/
> 
> ## Apache Webserver
> root:apache2                    cpu,memory      apache/
> www-data                        cpu,memory      apache/
> 
> Both memory.limit_in_bytes and memory.memsw.limit_in_bytes seem to
> work fine for the smb cgroup, but no matter what values I use for the
> apache cgroup I cannot set memory.memsw.limit_in_bytes. My goal is to
> disable apache's ability to swap by setting memory.limit_in_bytes and
> memory.memsw.limit_in_bytes to the same value. After running "service
> cgconfig restart" to restart the cgconfig service, I check the value
> of memory.limit_in_bytes and memory.memsw.limit_in_bytes for the
> apache group:
> # cat /mnt/cgroups/memory/apache/memory.limit_in_bytes
> 6442450944
> # cat /mnt/cgroups/memory/apache/memory.memsw.limit_in_bytes
> 9223372036854775807
> 
> The value for memory.memsw.limit_in_bytes is not being initialized. I
> cannot find any related errors in /var/log. I have tried a number of
> different values for memory.memsw.limit_in_bytes, however it will not
> initialize properly. The only error I can see occurs when I restart
> the cgroups service:
> Stopping cgconfig service: rmdir: failed to remove `./smb': Device or
> resource busy
> sed: couldn't flush stdout: No such process
> rmdir: failed to remove `./sysdefault': Device or resource busy
> sed: couldn't flush stdout: No such process
> rmdir: failed to remove `./sysdefault': Device or resource busy
> sed: couldn't flush stdout: Invalid argument
> rmdir: failed to remove `./sysdefault': Device or resource busy
>  *
> Starting cgconfig service:
> 
> What else can I try in order to properly initialize
> memory.memsw.limit_in_bytes? I can temporarily echo a value to it, but
> would prefer a permanent solution.
> 


Then, Does "echo > ...apache/memory.memsw.limit_in_bytes" works fine ?
If so, kernel works fine.

I'm sorry I'm not libcgroup specialist..but..What happens when you write
>         memory {
>                 memory.limit_in_bytes = 6000M;
>                 memory.memsw.limit_in_bytes = 6000M;
>                 memory.swappiness = 5;
>         }

?

Thanks,
-kame

  parent reply	other threads:[~2012-04-25  0:41 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-04-24 22:47 Cannot set memory.memsw.limit_in_bytes for a particular cgroup Andrew Martin
     [not found] ` <CAE+0DR6yyRHGKYiR-svQAdaV2ZqgaTgPvDMwFFmVs6rJG6w0JA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-04-25  0:41   ` KAMEZAWA Hiroyuki [this message]
     [not found]     ` <4F974836.1090000-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2012-04-25  1:00       ` Andrew Martin
     [not found]         ` <D5FAE552-76FE-43DB-B803-FD6F595C1518-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2012-04-25  1:27           ` KAMEZAWA Hiroyuki
     [not found]             ` <4F9752ED.9050800-+CUm20s59erQFUHtdCDX3A@public.gmane.org>
2012-04-25  1:46               ` Andrew Martin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F974836.1090000@jp.fujitsu.com \
    --to=kamezawa.hiroyu-+cum20s59erqfuhtdcdx3a@public.gmane.org \
    --cc=andrew.s.martin-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
    --cc=cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.