juju2 with maas 2.1.1 LXD containers get wrong ip addresses
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical Juju |
Invalid
|
Undecided
|
Unassigned | ||
MAAS |
Fix Released
|
Critical
|
Mike Pontillo | ||
1.9 |
Won't Fix
|
Undecided
|
Unassigned | ||
2.0 |
Won't Fix
|
Undecided
|
Unassigned | ||
2.1 |
Fix Released
|
Critical
|
Mike Pontillo |
Bug Description
Juju containers in a MAAS deployment are not getting externally routed IP addresses, something is wrong in the communication between juju 2.x and maas 2.1.1. This was not observed with maas 2.0.x.
juju status snippit:
Machine State DNS Inst id Series AZ
0 started 10.96.13.224 node-32fdcb12-
0/lxd/0 started 10.0.0.65 juju-3bd45f-0-lxd-0 xenial
0/lxd/1 started 10.0.0.56 juju-3bd45f-0-lxd-1 xenial
0/lxd/2 started 10.0.0.205 juju-3bd45f-0-lxd-2 xenial
0/lxd/3 started 10.0.0.113 juju-3bd45f-0-lxd-3 xenial
Notice the 10.0.0.x addresses are not routable on this 10.96.0.0/17 network.
Versions:
juju: 2.0.0
maas: 2.1.1
The POST seems to get a 500 followed by an attempted removal:
From maas.log:
maas:
2016-11-18 20:17:32 -: [info] ::ffff:127.0.0.1 - - [18/Nov/
2016-11-18 20:17:32 -: [info] ::ffff:127.0.0.1 - - [18/Nov/
2016-11-18 20:17:32 -: [info] ::ffff:127.0.0.1 - - [18/Nov/
2016-11-18 20:17:32 maasserver: [error] #######
2016-11-18 20:17:32 maasserver: [error] Traceback (most recent call last):
File "/usr/lib/
value = self.queryset.
File "/usr/lib/
self.
maasserver.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/
return super(Specifier
File "/usr/lib/
raise ValidationError
django.
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/
response = wrapped_
File "/usr/lib/
return view_atomic(*args, **kwargs)
File "/usr/lib/
return func(*args, **kwds)
File "/usr/lib/
response = upcall(request, *args, **kwargs)
File "/usr/lib/
response = func(*args, **kwargs)
File "/usr/lib/
result = self.error_
File "/usr/lib/
result = meth(request, *args, **kwargs)
File "/usr/lib/
return function(self, request, *args, **kwargs)
File "/usr/lib/
if form.is_valid():
File "/usr/lib/
return self.is_bound and not self.errors
File "/usr/lib/
self.
File "/usr/lib/
self.
File "/usr/lib/
value = field.clean(value)
File "/usr/lib/
value = self.to_
File "/usr/lib/
return self.queryset.
File "/usr/lib/
self.
maasserver.
2016-11-18 20:17:32 -: [info] ::ffff:127.0.0.1 - - [18/Nov/
2016-11-18 20:17:33 -: [info] ::ffff:127.0.0.1 - - [18/Nov/
From Juju host system:
2016-11-18 20:15:38 DEBUG juju.network network.go:389 addresses after filtering: [local-
2016-11-18 20:15:38 INFO juju.worker.
2016-11-18 20:15:38 DEBUG juju.worker.logger logger.go:50 reconfiguring logging from "<root>=DEBUG" to "<root>
2016-11-18 20:16:22 WARNING juju.provisioner lxd-broker.go:62 failed to prepare container "0/lxd/0" network config: linking device interface "eth0" to subnet "10.96.0.0/17" failed: unexpected: ServerError: 500 INTERNAL SERVER ERROR (Subnet matching query does not exist.)
2016-11-18 20:16:22 WARNING juju.provisioner broker.go:97 incomplete DNS config found, discovering host's DNS config
2016-11-18 20:17:08 WARNING juju.provisioner lxd-broker.go:62 failed to prepare container "0/lxd/1" network config: linking device interface "eth0" to subnet "10.96.0.0/17" failed: unexpected: ServerError: 500 INTERNAL SERVER ERROR (Subnet matching query does not exist.)
2016-11-18 20:17:08 WARNING juju.provisioner broker.go:97 incomplete DNS config found, discovering host's DNS config
2016-11-18 20:17:20 WARNING juju.provisioner lxd-broker.go:62 failed to prepare container "0/lxd/2" network config: linking device interface "eth0" to subnet "10.96.0.0/17" failed: unexpected: ServerError: 500 INTERNAL SERVER ERROR (Subnet matching query does not exist.)
2016-11-18 20:17:20 WARNING juju.provisioner broker.go:97 incomplete DNS config found, discovering host's DNS config
2016-11-18 20:17:33 WARNING juju.provisioner lxd-broker.go:62 failed to prepare container "0/lxd/3" network config: linking device interface "eth0" to subnet "10.96.0.0/17" failed: unexpected: ServerError: 500 INTERNAL SERVER ERROR (Subnet matching query does not exist.)
2016-11-18 20:17:33 WARNING juju.provisioner broker.go:97 incomplete DNS config found, discovering host's DNS config
Related branches
- Blake Rouse (community): Approve
-
Diff: 96 lines (+27/-7)4 files modifiedsrc/maasserver/forms_interface_link.py (+1/-1)
src/maasserver/models/interface.py (+11/-4)
src/maasserver/models/tests/test_interface.py (+11/-0)
src/maasserver/tests/test_forms_interface_link.py (+4/-2)
tags: | removed: kanban-cross-team |
tags: | added: cdo-qa-blocker |
Changed in maas: | |
status: | In Progress → Fix Committed |
Changed in maas: | |
milestone: | 2.2.0 → none |
status: | Fix Committed → Fix Released |
subnets read