← Back to team overview

maas-devel team mailing list archive

Re: no default route for lxc containers deployed with juju/maas 2.0

 

I'm trying to repro this but one other bug to be aware of is this:

  https://bugs.launchpad.net/juju-core/+bug/1566801

And another useful bit of debug info would be:

  $ lxc config show <container-name>

executed on the node hosting the containers.

On 7 June 2016 at 20:51, Matt Rae <matt.rae@xxxxxxxxxxxxx> wrote:

> Thanks Andrew, I think the issue of the default route not being added is
> appearing starting in juju 2.0 beta 8. When I downgraded to beta 7, I see
> the default route is added.
>
> Below are the interfaces files for the container and host when using beta
> 8 and beta 7. Beta 7 interfaces includes the default route, while beta 8
> doesn't.
>
> container with beta 8
>
> $ cat /etc/network/interfaces
>
> auto lo
> iface lo inet loopback
>
> auto eth0
> iface eth0 inet manual
>   pre-up ip address add 172.27.72.13/26 dev eth0 || true
>   up ip route replace 172.27.72.0/26 dev eth0 || true
>   down ip route del 172.27.72.0/26 dev eth0 || true
>   post-down address del 172.27.72.13/26 dev eth0 || true
>
> auto eth1
> iface eth1 inet manual
>   pre-up ip address add 172.27.72.77/26 dev eth1 || true
>   up ip route replace 172.27.72.64/26 dev eth1 || true
>   down ip route del 172.27.72.64/26 dev eth1 || true
>   post-down address del 172.27.72.77/26 dev eth1 || true
>
> auto eth2
> iface eth2 inet manual
>   dns-nameservers 10.189.69.5 8.8.8.8
>   pre-up ip address add 10.189.69.27/25 dev eth2 || true
>   up ip route replace 10.189.69.0/25 dev eth2 || true
>   down ip route del 10.189.69.0/25 dev eth2 || true
>   post-down address del 10.189.69.27/25 dev eth2 || true
>
> host with beta 8
>
> $ cat /etc/network/interfaces
> auto lo
> iface lo inet loopback
>     dns-nameservers 10.189.69.5
>     dns-search maas
>
> iface eno1 inet manual
>
> auto br-eno1
> iface br-eno1 inet static
>     gateway 10.189.69.1
>     address 10.189.69.8/25
>     mtu 1500
>     bridge_ports eno1
>     dns-nameservers 10.189.69.5 8.8.8.8
>
> auto eno2
> iface eno2 inet manual
>     mtu 1500
>
> auto enp2s0f0
> iface enp2s0f0 inet manual
>     bond-mode 802.3ad
>     mtu 1500
>     bond-miimon 100
>     bond-xmit_hash_policy encap3+4
>     bond-lacp_rate fast
>     bond-master bond0
>
> auto enp2s0f1
> iface enp2s0f1 inet manual
>     bond-mode 802.3ad
>     mtu 1500
>     bond-miimon 100
>     bond-xmit_hash_policy encap3+4
>     bond-lacp_rate fast
>     bond-master bond0
>
> auto enp2s0f2
> iface enp2s0f2 inet manual
>     bond-mode 802.3ad
>     mtu 1500
>     bond-miimon 100
>     bond-xmit_hash_policy encap3+4
>     bond-lacp_rate fast
>     bond-master bond1
>
> auto enp2s0f3
> iface enp2s0f3 inet manual
>     bond-mode 802.3ad
>     mtu 1500
>     bond-miimon 100
>     bond-xmit_hash_policy encap3+4
>     bond-lacp_rate fast
>     bond-master bond1
>
> auto ens7f0
> iface ens7f0 inet manual
>     bond-mode 802.3ad
>     mtu 1500
>     bond-miimon 100
>     bond-xmit_hash_policy encap3+4
>     bond-lacp_rate fast
>     bond-master bond2
>
> auto ens7f1
> iface ens7f1 inet manual
>     bond-mode 802.3ad
>     mtu 1500
>     bond-miimon 100
>     bond-xmit_hash_policy encap3+4
>     bond-lacp_rate fast
>     bond-master bond2
>
> auto bond0
> iface bond0 inet manual
>     address 172.27.72.3/26
>     bond-mode 802.3ad
>     bond-xmit_hash_policy encap3+4
>     bond-miimon 100
>     hwaddress 0c:c4:7a:8e:ec:e0
>     mtu 1500
>     bond-lacp_rate fast
>     bond-slaves none
>
> auto br-bond0
> iface br-bond0 inet static
>     address 172.27.72.3/26
>     hwaddress 0c:c4:7a:8e:ec:e0
>     mtu 1500
>     bridge_ports bond0
>
> auto bond0:1
> iface bond0:1 inet6 static
>     address fde9:8f83:4a81:1:0:1:0:2/64
>     bond-mode 802.3ad
>     bond-xmit_hash_policy encap3+4
>     bond-miimon 100
>     hwaddress 0c:c4:7a:8e:ec:e0
>     mtu 1500
>     bond-lacp_rate fast
>     bond-slaves none
>
> auto bond1
> iface bond1 inet manual
>     address 172.27.72.67/26
>     bond-mode 802.3ad
>     bond-xmit_hash_policy encap3+4
>     bond-miimon 100
>     hwaddress 0c:c4:7a:8e:ec:e2
>     mtu 1500
>     bond-lacp_rate fast
>     bond-slaves none
>
> auto br-bond1
> iface br-bond1 inet static
>     address 172.27.72.67/26
>     hwaddress 0c:c4:7a:8e:ec:e2
>     mtu 1500
>     bridge_ports bond1
>
> auto bond1:1
> iface bond1:1 inet6 static
>     address fde9:8f83:4a81::1:0:2/64
>     bond-mode 802.3ad
>     bond-xmit_hash_policy encap3+4
>     bond-miimon 100
>     hwaddress 0c:c4:7a:8e:ec:e2
>     mtu 1500
>     bond-lacp_rate fast
>     bond-slaves none
>
> auto bond2
> iface bond2 inet6 manual
>     address fd0d:ffe0:5771::1:0:0/64
>     bond-mode 802.3ad
>     bond-xmit_hash_policy encap3+4
>     bond-miimon 100
>     hwaddress 0c:c4:7a:b7:32:a0
>     mtu 1500
>     bond-lacp_rate fast
>     bond-slaves none
>
> auto br-bond2
> iface br-bond2 inet6 static
>     address fd0d:ffe0:5771::1:0:0/64
>     hwaddress 0c:c4:7a:b7:32:a0
>     mtu 1500
>     bridge_ports bond2
>
> source /etc/network/interfaces.d/*.cfg
>
>
> container with beta 7
>
> root@juju-machine-2-lxc-2:~# cat /etc/network/interfaces
>
> auto lo
> iface lo inet loopback
>
> auto eth0
> iface eth0 inet manual
>   dns-nameservers 10.189.69.5 8.8.8.8
>   pre-up ip address add 10.189.69.24/25 dev eth0 || true
>   up ip route replace 10.189.69.0/25 dev eth0 || true
>   down ip route del 10.189.69.0/25 dev eth0 || true
>   post-down address del 10.189.69.24/25 dev eth0 || true
>   up ip route replace default via 10.189.69.1 || true
>   down ip route del default via 10.189.69.1 || true
>
> auto eth1
> iface eth1 inet manual
>   pre-up ip address add 172.27.72.10/26 dev eth1 || true
>   up ip route replace 172.27.72.0/26 dev eth1 || true
>   down ip route del 172.27.72.0/26 dev eth1 || true
>   post-down address del 172.27.72.10/26 dev eth1 || true
>
> auto eth2
> iface eth2 inet manual
>   pre-up ip address add 172.27.72.74/26 dev eth2 || true
>   up ip route replace 172.27.72.64/26 dev eth2 || true
>   down ip route del 172.27.72.64/26 dev eth2 || true
>   post-down address del 172.27.72.74/26 dev eth2 || true
>
> Host with beta 7:
>
> root@barmiest-jesica:~# cat /etc/network/interfaces
> auto lo
> iface lo inet loopback
>     dns-nameservers 10.189.69.5
>     dns-search maas
>
> iface eno1 inet manual
>
> auto br-eno1
> iface br-eno1 inet static
>     address 10.189.69.10/25
>     gateway 10.189.69.1
>     mtu 1500
>     bridge_ports eno1
>     dns-nameservers 10.189.69.5 8.8.8.8
>
> auto eno2
> iface eno2 inet manual
>     mtu 1500
>
> auto enp2s0f0
> iface enp2s0f0 inet manual
>     bond-master bond0
>     bond-xmit_hash_policy encap3+4
>     mtu 1500
>     bond-lacp_rate fast
>     bond-miimon 100
>     bond-mode 802.3ad
>
> auto enp2s0f1
> iface enp2s0f1 inet manual
>     bond-master bond0
>     bond-xmit_hash_policy encap3+4
>     mtu 1500
>     bond-lacp_rate fast
>     bond-miimon 100
>     bond-mode 802.3ad
>
> auto enp2s0f2
> iface enp2s0f2 inet manual
>     bond-master bond1
>     bond-xmit_hash_policy encap3+4
>     mtu 1500
>     bond-lacp_rate fast
>     bond-miimon 100
>     bond-mode 802.3ad
>
> auto enp2s0f3
> iface enp2s0f3 inet manual
>     bond-master bond1
>     bond-xmit_hash_policy encap3+4
>     mtu 1500
>     bond-lacp_rate fast
>     bond-miimon 100
>     bond-mode 802.3ad
>
> auto ens7f0
> iface ens7f0 inet manual
>     bond-master bond2
>     bond-xmit_hash_policy encap3+4
>     mtu 1500
>     bond-lacp_rate fast
>     bond-miimon 100
>     bond-mode 802.3ad
>
> auto ens7f1
> iface ens7f1 inet manual
>     bond-master bond2
>     bond-xmit_hash_policy encap3+4
>     mtu 1500
>     bond-lacp_rate fast
>     bond-miimon 100
>     bond-mode 802.3ad
>
> auto bond0
> iface bond0 inet manual
>     address 172.27.72.5/26
>     bond-lacp_rate fast
>     bond-xmit_hash_policy encap3+4
>     mtu 1500
>     bond-mode 802.3ad
>     hwaddress 0c:c4:7a:8e:ed:30
>     bond-slaves none
>     bond-miimon 100
>
> auto br-bond0
> iface br-bond0 inet static
>     address 172.27.72.5/26
>     mtu 1500
>     hwaddress 0c:c4:7a:8e:ed:30
>     bridge_ports bond0
>
> auto bond0:1
> iface bond0:1 inet6 static
>     address fde9:8f83:4a81:1:0:1:0:4/64
>     bond-lacp_rate fast
>     bond-xmit_hash_policy encap3+4
>     mtu 1500
>     bond-mode 802.3ad
>     hwaddress 0c:c4:7a:8e:ed:30
>     bond-slaves none
>     bond-miimon 100
>
> auto bond1
> iface bond1 inet manual
>     address 172.27.72.69/26
>     bond-lacp_rate fast
>     bond-xmit_hash_policy encap3+4
>     mtu 1500
>     bond-mode 802.3ad
>     hwaddress 0c:c4:7a:8e:ed:32
>     bond-slaves none
>     bond-miimon 100
>
> auto br-bond1
> iface br-bond1 inet static
>     address 172.27.72.69/26
>     mtu 1500
>     hwaddress 0c:c4:7a:8e:ed:32
>     bridge_ports bond1
>
> auto bond1:1
> iface bond1:1 inet6 static
>     address fde9:8f83:4a81::1:0:4/64
>     bond-lacp_rate fast
>     bond-xmit_hash_policy encap3+4
>     mtu 1500
>     bond-mode 802.3ad
>     hwaddress 0c:c4:7a:8e:ed:32
>     bond-slaves none
>     bond-miimon 100
>
> auto bond2
> iface bond2 inet6 manual
>     address fd0d:ffe0:5771::1:0:2/64
>     bond-lacp_rate fast
>     bond-xmit_hash_policy encap3+4
>     mtu 1500
>     bond-mode 802.3ad
>     hwaddress 0c:c4:7a:b7:2d:96
>     bond-slaves none
>     bond-miimon 100
>
> auto br-bond2
> iface br-bond2 inet6 static
>     address fd0d:ffe0:5771::1:0:2/64
>     mtu 1500
>     hwaddress 0c:c4:7a:b7:2d:96
>     bridge_ports bond2
>
> source /etc/network/interfaces.d/*.cfg
>
>
> On Tue, Jun 7, 2016 at 10:20 AM, Andrew McDermott <
> andrew.mcdermott@xxxxxxxxxxxxx> wrote:
>
>> Hi Matt,
>>
>> If you still have the setup running please could you attach
>> /etc/network/interfaces from the container and the host. Thanks.
>>
>> On 7 June 2016 at 07:08, Matt Rae <matt.rae@xxxxxxxxxxxxx> wrote:
>>
>>> Hi, I'm deploying services into lxc containers using Juju 2.0 beta8 and
>>> MAAS 2.0 beta6.
>>>
>>> The containers are being created with 3 interfaces with separate subnets
>>> which are bridged to the interfaces on the node hosting the container. I'm
>>> noticing that the containers don't have a default route which is should be
>>> gateway_ip 10.189.69.1.
>>>
>>> The node hosting the container has the default route. I'm not sure why
>>> the default route isn't also in the container.
>>>
>>> On the host there is default route with gateway 10.189.69.1
>>>
>>> $ route -n
>>> Kernel IP routing table
>>> Destination     Gateway         Genmask         Flags Metric Ref    Use
>>> Iface
>>> 0.0.0.0         10.189.69.1     0.0.0.0         UG    0      0        0
>>> br-eno1
>>> 10.0.3.0        0.0.0.0         255.255.255.0   U     0      0        0
>>> lxcbr0
>>> 10.189.69.0     0.0.0.0         255.255.255.128 U     0      0        0
>>> br-eno1
>>> 172.27.72.0     0.0.0.0         255.255.255.192 U     0      0        0
>>> br-bond0
>>> 172.27.72.64    0.0.0.0         255.255.255.192 U     0      0        0
>>> br-bond1
>>> 192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0
>>> virbr0
>>>
>>> In the container there is no default route getting added:
>>>
>>> $ route -n
>>> Kernel IP routing table
>>> Destination     Gateway         Genmask         Flags Metric Ref    Use
>>> Iface
>>> 10.189.69.0     0.0.0.0         255.255.255.128 U     0      0        0
>>> eth2
>>> 172.27.72.0     0.0.0.0         255.255.255.192 U     0      0        0
>>> eth0
>>> 172.27.72.64    0.0.0.0         255.255.255.192 U     0      0        0
>>> eth1
>>>
>>> $ ping 8.8.8.8
>>> connect: Network is unreachable
>>>
>>> Adding the default route manually solves the problem.
>>>
>>> $ sudo route add default gw 10.189.69.1 eth2
>>> $ ping 8.8.8.8
>>> PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
>>> 64 bytes from 8.8.8.8: icmp_seq=2 ttl=55 time=2.78 ms
>>>
>>> Is there an additional setting needed to add a default route to lxc
>>> containers?
>>>
>>> My subnets are below:
>>>
>>> $ maas maas subnets read
>>> Success.
>>> Machine-readable output follows:
>>> [
>>>     {
>>>         "vlan": {
>>>             "external_dhcp": null,
>>>             "resource_uri": "/MAAS/api/2.0/vlans/5001/",
>>>             "id": 5001,
>>>             "vid": 0,
>>>             "primary_rack": null,
>>>             "mtu": 1500,
>>>             "fabric": "fabric-0",
>>>             "name": "untagged",
>>>             "dhcp_on": false,
>>>             "secondary_rack": null
>>>         },
>>>         "resource_uri": "/MAAS/api/2.0/subnets/5/",
>>>         "allow_proxy": true,
>>>         "id": 5,
>>>         "gateway_ip": null,
>>>         "cidr": "172.27.72.0/26",
>>>         "dns_servers": [],
>>>         "rdns_mode": 2,
>>>         "name": "172.27.72.0/26",
>>>         "space": "space-0"
>>>     },
>>>     {
>>>         "vlan": {
>>>             "external_dhcp": null,
>>>             "resource_uri": "/MAAS/api/2.0/vlans/5002/",
>>>             "id": 5002,
>>>             "vid": 0,
>>>             "primary_rack": null,
>>>             "mtu": 1500,
>>>             "fabric": "fabric-1",
>>>             "name": "untagged",
>>>             "dhcp_on": false,
>>>             "secondary_rack": null
>>>         },
>>>         "resource_uri": "/MAAS/api/2.0/subnets/6/",
>>>         "allow_proxy": true,
>>>         "id": 6,
>>>         "gateway_ip": null,
>>>         "cidr": "172.27.72.64/26",
>>>         "dns_servers": [],
>>>         "rdns_mode": 2,
>>>         "name": "172.27.72.64/26",
>>>         "space": "space-0"
>>>     },
>>>     {
>>>         "vlan": {
>>>             "external_dhcp": null,
>>>             "resource_uri": "/MAAS/api/2.0/vlans/5010/",
>>>             "id": 5010,
>>>             "vid": 0,
>>>             "primary_rack": null,
>>>             "mtu": 1500,
>>>             "fabric": "fabric-9",
>>>             "name": "untagged",
>>>             "dhcp_on": false,
>>>             "secondary_rack": null
>>>         },
>>>         "resource_uri": "/MAAS/api/2.0/subnets/9/",
>>>         "allow_proxy": true,
>>>         "id": 9,
>>>         "gateway_ip": null,
>>>         "cidr": "fd0d:ffe0:5771::/64",
>>>         "dns_servers": null,
>>>         "rdns_mode": 2,
>>>         "name": "fd0d:ffe0:5771::/64",
>>>         "space": "space-0"
>>>     },
>>>     {
>>>         "vlan": {
>>>             "external_dhcp": null,
>>>             "resource_uri": "/MAAS/api/2.0/vlans/5002/",
>>>             "id": 5002,
>>>             "vid": 0,
>>>             "primary_rack": null,
>>>             "mtu": 1500,
>>>             "fabric": "fabric-1",
>>>             "name": "untagged",
>>>             "dhcp_on": false,
>>>             "secondary_rack": null
>>>         },
>>>         "resource_uri": "/MAAS/api/2.0/subnets/10/",
>>>         "allow_proxy": true,
>>>         "id": 10,
>>>         "gateway_ip": null,
>>>         "cidr": "fde9:8f83:4a81::/64",
>>>         "dns_servers": null,
>>>         "rdns_mode": 2,
>>>         "name": "fde9:8f83:4a81::/64",
>>>         "space": "space-0"
>>>     },
>>>     {
>>>         "vlan": {
>>>             "external_dhcp": null,
>>>             "resource_uri": "/MAAS/api/2.0/vlans/5001/",
>>>             "id": 5001,
>>>             "vid": 0,
>>>             "primary_rack": null,
>>>             "mtu": 1500,
>>>             "fabric": "fabric-0",
>>>             "name": "untagged",
>>>             "dhcp_on": false,
>>>             "secondary_rack": null
>>>         },
>>>         "resource_uri": "/MAAS/api/2.0/subnets/11/",
>>>         "allow_proxy": true,
>>>         "id": 11,
>>>         "gateway_ip": null,
>>>         "cidr": "fde9:8f83:4a81:1::/64",
>>>         "dns_servers": null,
>>>         "rdns_mode": 2,
>>>         "name": "fde9:8f83:4a81:1::/64",
>>>         "space": "space-0"
>>>     },
>>>     {
>>>         "vlan": {
>>>             "external_dhcp": null,
>>>             "resource_uri": "/MAAS/api/2.0/vlans/5011/",
>>>             "id": 5011,
>>>             "vid": 0,
>>>             "primary_rack": null,
>>>             "mtu": 1500,
>>>             "fabric": "fabric-10",
>>>             "name": "untagged",
>>>             "dhcp_on": false,
>>>             "secondary_rack": null
>>>         },
>>>         "resource_uri": "/MAAS/api/2.0/subnets/12/",
>>>         "allow_proxy": true,
>>>         "id": 12,
>>>         "gateway_ip": null,
>>>         "cidr": "fd0d:ffe0:5771:1::/64",
>>>         "dns_servers": null,
>>>         "rdns_mode": 2,
>>>         "name": "fd0d:ffe0:5771:1::/64",
>>>         "space": "space-0"
>>>     },
>>>     {
>>>         "vlan": {
>>>             "external_dhcp": null,
>>>             "resource_uri": "/MAAS/api/2.0/vlans/5004/",
>>>             "id": 5004,
>>>             "vid": 0,
>>>             "primary_rack": "4y3h7p",
>>>             "mtu": 1500,
>>>             "fabric": "fabric-3",
>>>             "name": "untagged",
>>>             "dhcp_on": true,
>>>             "secondary_rack": null
>>>         },
>>>         "resource_uri": "/MAAS/api/2.0/subnets/2/",
>>>         "allow_proxy": true,
>>>         "id": 2,
>>>         "gateway_ip": "10.189.69.1",
>>>         "cidr": "10.189.69.0/25",
>>>         "dns_servers": [
>>>             "10.189.69.5",
>>>             "8.8.8.8"
>>>         ],
>>>         "rdns_mode": 2,
>>>         "name": "10.189.69.0/25",
>>>         "space": "space-0"
>>>     }
>>> ]
>>>
>>> Matt
>>>
>>>
>>> --
>>> Mailing list: https://launchpad.net/~maas-devel
>>> Post to     : maas-devel@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~maas-devel
>>> More help   : https://help.launchpad.net/ListHelp
>>>
>>>
>>
>>
>> --
>> Andrew McDermott <andrew.mcdermott@xxxxxxxxxxxxx>
>> Juju Core Sapphire team <http://juju.ubuntu.com>
>>
>
>


-- 
Andrew McDermott <andrew.mcdermott@xxxxxxxxxxxxx>
Juju Core Sapphire team <http://juju.ubuntu.com>

References