On a system that's showing the problem, I see that the wrong NIC is being used for juju-br0. This is the reason that the container's NIC is not getting a DHCP IP. On the host, only eth0 is connected. This from config for one of the containers and the /etc/network/interfaces file on the host:
lxc.mount = /var/lib/lxc/juju-machine-1-lxc-0/fstab
lxc.mount.entry = proc proc proc nodev,noexec,nosuid 0 0
lxc.mount.entry = sysfs sys sysfs defaults 0 0
lxc.mount.entry = /sys/fs/fuse/connections sys/fs/fuse/connections none bind,optional 0 0
lxc.mount.entry = /sys/kernel/debug sys/kernel/debug none bind,optional 0 0
lxc.mount.entry = /sys/kernel/security sys/kernel/security none bind,optional 0 0
lxc.mount.entry = /sys/fs/pstore sys/fs/pstore none bind,optional 0 0
lxc.tty = 4
lxc.pts = 1024
lxc.devttydir = lxc
lxc.arch = x86_64
lxc.seccomp = /usr/share/lxc/config/common.seccomp
lxc.cgroup.devices.deny = a
lxc.cgroup.devices.allow = c *:* m
lxc.cgroup.devices.allow = b *:* m
lxc.cgroup.devices.allow = c 1:3 rwm
lxc.cgroup.devices.allow = c 1:5 rwm
lxc.cgroup.devices.allow = c 5:0 rwm
lxc.cgroup.devices.allow = c 5:1 rwm
lxc.cgroup.devices.allow = c 1:8 rwm
lxc.cgroup.devices.allow = c 1:9 rwm
lxc.cgroup.devices.allow = c 5:2 rwm
lxc.cgroup.devices.allow = c 136:* rwm
lxc.cgroup.devices.allow = c 254:0 rm
lxc.cgroup.devices.allow = c 10:229 rwm
lxc.cgroup.devices.allow = c 10:200 rwm
lxc.cgroup.devices.allow = c 1:7 rwm
lxc.cgroup.devices.allow = c 10:228 rwm
lxc.cgroup.devices.allow = c 10:232 rwm
lxc.utsname = juju-machine-1-lxc-0
lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = juju-br0
lxc.network.hwaddr = 00:16:3e:8d:49:0b
lxc.cap.drop = sys_module
lxc.cap.drop = mac_admin
lxc.cap.drop = mac_override
lxc.cap.drop = sys_time
lxc.hook.clone = /usr/share/lxc/hooks/ubuntu-cloud-prep
lxc.rootfs = /var/lib/lxc/juju-machine-1-lxc-0/rootfs
lxc.pivotdir = lxc_putold
lxc.start.auto = 1
lxc.mount.entry=/var/log/juju var/log/juju none defaults,bind 0 0
auto lo
iface eth3 inet dhcp
iface eth4 inet dhcp
iface eth5 inet dhcp
auto eth0
iface eth0 inet dhcp
iface eth1 inet dhcp
iface eth2 inet manual
auto juju-br0
iface juju-br0 inet dhcp
bridge_ports eth2
On a system that's showing the problem, I see that the wrong NIC is being used for juju-br0. This is the reason that the container's NIC is not getting a DHCP IP. On the host, only eth0 is connected. This from config for one of the containers and the /etc/network/ interfaces file on the host:
lxc.mount = /var/lib/ lxc/juju- machine- 1-lxc-0/ fstab fuse/connection s sys/fs/ fuse/connection s none bind,optional 0 0 security sys/kernel/security none bind,optional 0 0 lxc/config/ common. seccomp devices. deny = a devices. allow = c *:* m devices. allow = b *:* m devices. allow = c 1:3 rwm devices. allow = c 1:5 rwm devices. allow = c 5:0 rwm devices. allow = c 5:1 rwm devices. allow = c 1:8 rwm devices. allow = c 1:9 rwm devices. allow = c 5:2 rwm devices. allow = c 136:* rwm devices. allow = c 254:0 rm devices. allow = c 10:229 rwm devices. allow = c 10:200 rwm devices. allow = c 1:7 rwm devices. allow = c 10:228 rwm devices. allow = c 10:232 rwm 1-lxc-0 lxc/hooks/ ubuntu- cloud-prep lxc/juju- machine- 1-lxc-0/ rootfs entry=/ var/log/ juju var/log/juju none defaults,bind 0 0
lxc.mount.entry = proc proc proc nodev,noexec,nosuid 0 0
lxc.mount.entry = sysfs sys sysfs defaults 0 0
lxc.mount.entry = /sys/fs/
lxc.mount.entry = /sys/kernel/debug sys/kernel/debug none bind,optional 0 0
lxc.mount.entry = /sys/kernel/
lxc.mount.entry = /sys/fs/pstore sys/fs/pstore none bind,optional 0 0
lxc.tty = 4
lxc.pts = 1024
lxc.devttydir = lxc
lxc.arch = x86_64
lxc.seccomp = /usr/share/
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.cgroup.
lxc.utsname = juju-machine-
lxc.network.type = veth
lxc.network.flags = up
lxc.network.link = juju-br0
lxc.network.hwaddr = 00:16:3e:8d:49:0b
lxc.cap.drop = sys_module
lxc.cap.drop = mac_admin
lxc.cap.drop = mac_override
lxc.cap.drop = sys_time
lxc.hook.clone = /usr/share/
lxc.rootfs = /var/lib/
lxc.pivotdir = lxc_putold
lxc.start.auto = 1
lxc.mount.
auto lo
iface eth3 inet dhcp
iface eth4 inet dhcp
iface eth5 inet dhcp
auto eth0
iface eth0 inet dhcp
iface eth1 inet dhcp
iface eth2 inet manual
auto juju-br0
iface juju-br0 inet dhcp
bridge_ports eth2