<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#ffffff" text="#000000">
    Hi <br>
    <br>
    Going back through the list, I couldn't find whether this has been
    resolved.<br>
    <br>
    I had a similar problem today with a little over 40 containers:<br>
    <br>
    # lxc-start -n gary<br>
    lxc-start: Too many open files - failed to inotify_init<br>
    lxc-start: failed to add utmp handler to mainloop<br>
    lxc-start: mainloop exited with an error<br>
    lxc-start: Device or resource busy - failed to remove cgroup
    '/cgroup/gary'<br>
    <br>
    (On Ubuntu 10.10 (EC2), LXC 0.7.2. Installed with this recipe:
    <a class="moz-txt-link-freetext" href="http://www.phenona.com/blog/using-lxc-linux-containers-in-amazon-ec2/">http://www.phenona.com/blog/using-lxc-linux-containers-in-amazon-ec2/</a>
    )<br>
    <br>
    Appreciate your thoughts.<br>
    <br>
    Cheers,<br>
    <br>
    Gary<br>
    <br>
    <blockquote type="cite">
      <pre>On 03/02/2011 02:46 PM, Andre Nathan wrote:
> On Wed, 2011-03-02 at 14:24 +0100, Daniel Lezcano wrote:
>>> I could paste my configuration files if you think it'd help you
>>> reproducing the issue.
>> Yes, please :)
> Ok. The test host has a br0 interface which is not attached to any
> physical interface:
>
>    auto br0
>    iface br0 inet static
>      address 192.168.0.1
>      netmask 255.255.0.0
>      broadcast 192.168.255.255
>      bridge_stp off
>      bridge_maxwait 5
>      pre-up /usr/sbin/brctl addbr br0
>      post-up /usr/sbin/brctl setfd br0 0
>      post-down /usr/sbin/brctl delbr br0
>
> I use NAT for container access, translating to the host's eth0 address.
> There is also a MARK rule that I use for bandwidth limiting. These
> commands are run on the host startup:
>
> iptables -t mangle -A PREROUTING -i br0 -j MARK --set-mark 2
> iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source $ETH0_IP
> iptables -P FORWARD DROP
> iptables -A FORWARD -i br0 -o eth0 -j ACCEPT
> iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
> tc qdisc add dev eth0 root handle 1: htb
>
> I'm using a custom container creation script based on the ubuntu
> templace that you can find here:
>
>    <a rel="nofollow" href="http://andre.people.digirati.com.br/lxc-create.sh" target="_top">http://andre.people.digirati.com.br/lxc-create.sh</a>
>
> It sets up the bandwidth limit for each container and populates the
> container's rootfs (there is a usage message :). It creates
> configuration files like this:
>
>    lxc.utsname = c2
>
>    lxc.network.type = veth
>    lxc.network.link = br0
>    lxc.network.flags = up
>    lxc.network.ipv4 = 192.168.0.2/16 192.168.255.255
>    lxc.network.name = eth0
>    lxc.network.veth.pair = veth0.2
>
>    lxc.tty = 4
>    lxc.pts = 1024
>    lxc.rootfs = /var/lib/lxc/c2/rootfs
>    lxc.mount  = /var/lib/lxc/c2/fstab
>
>    lxc.cgroup.devices.deny = a
>    # /dev/null and zero
>    lxc.cgroup.devices.allow = c 1:3 rwm
>    lxc.cgroup.devices.allow = c 1:5 rwm
>    # consoles
>    lxc.cgroup.devices.allow = c 5:1 rwm
>    lxc.cgroup.devices.allow = c 5:0 rwm
>    #lxc.cgroup.devices.allow = c 4:0 rwm
>    #lxc.cgroup.devices.allow = c 4:1 rwm
>    # <i>/dev/</i>{,u}random
>    lxc.cgroup.devices.allow = c 1:9 rwm
>    lxc.cgroup.devices.allow = c 1:8 rwm
>    lxc.cgroup.devices.allow = c 136:* rwm
>    lxc.cgroup.devices.allow = c 5:2 rwm
>    # rtc
>    lxc.cgroup.devices.allow = c 254:0 rwm
>
>    # capabilities
>    lxc.cap.drop = audit_control audit_write fsetid kill ipc_lock
> ipc_owner lease linux_immutable mac_admin mac_override net_bind_service
> mknod setfcap setpcap sys_admin sys_boot sys_module sys_nice sys_pacct
> sys_ptrace sys_rawio sys_resource sys_time sys_tty_config
>
> and fstab like this:
>
>    /bin /var/lib/lxc/c2/rootfs/bin ext4 bind,ro 0 0
>    /lib /var/lib/lxc/c2/rootfs/lib ext4 bind,ro 0 0
>    /lib64 /var/lib/lxc/c2/rootfs/lib64 ext4 bind,ro 0 0
>    /sbin /var/lib/lxc/c2/rootfs/sbin ext4 bind,ro 0 0
>    /usr /var/lib/lxc/c2/rootfs/usr ext4 bind,ro 0 0
>    /etc/environment /var/lib/lxc/c2/rootfs/etc/environment none bind,ro 0
> 0
>    /etc/resolv.conf /var/lib/lxc/c2/rootfs/etc/resolv.conf none bind,ro 0
> 0
>    /etc/localtime /var/lib/lxc/c2/rootfs/etc/localtime none bind,ro 0 0
>    /etc/network/if-down.d /var/lib/lxc/c2/rootfs/etc/network/if-down.d
> none bind,ro 0 0
>    /etc/network/if-post-down.d /var/lib/lxc/c2/rootfs/etc/network/if-post-down.d none bind,ro 0 0
>    /etc/network/if-pre-up.d /var/lib/lxc/c2/rootfs/etc/network/if-pre-up.d none bind,ro 0 0
>    /etc/network/if-up.d /var/lib/lxc/c2/rootfs/etc/network/if-up.d none
> bind,ro 0 0
>    /etc/login.defs /var/lib/lxc/c2/rootfs/etc/login.defs none bind,ro 0 0
>    /etc/securetty /var/lib/lxc/c2/rootfs/etc/securetty none bind,ro 0 0
>    /etc/pam.conf /var/lib/lxc/c2/rootfs/etc/pam.conf none bind,ro 0 0
>    /etc/pam.d /var/lib/lxc/c2/rootfs/etc/pam.d none bind,ro 0 0
>    /etc/security /var/lib/lxc/c2/rootfs/etc/security none bind,ro 0 0
>    /etc/alternatives /var/lib/lxc/c2/rootfs/etc/alternatives none bind,ro
> 0 0
>    proc /var/lib/lxc/c2/rootfs/proc proc ro,nodev,noexec,nosuid 0 0
>    devpts /var/lib/lxc/c2/rootfs/dev/pts devpts defaults 0 0
>    sysfs /var/lib/lxc/c2/rootfs/sys sysfs defaults 0 0
>
>
> I think that's all. If you need any more info feel free to ask :)

Thanks Andre !</pre>
    </blockquote>
    <br>
  </body>
</html>