[2.5a2] juju machine allocation with KVM pod networking and constraints behaves improperly
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MAAS |
Fix Released
|
Critical
|
Mike Pontillo |
Bug Description
This bug was seen when bootstrapping a controller with Juju, using MAAS 2.5 alpha 2, with spaces defined. There are three different types of problems that need to be addressed:
(1) Bootstrapping causes "no address family in common with the server" error.
# juju bootstrap --constraints "spaces=
Creating Juju controller "juju" on maas
Looking for packaged Juju agent version 2.4.2 for amd64
Launching controller instance(s) on maas...
ERROR failed to bootstrap model: cannot start bootstrap instance: unexpected: ServerError: 400 Bad Request ({"network": ["Node has no address family in common with the server"]})
(2) Bootstrapping with only a private network constraint (which would create a machine that would be unable to PXE boot) causes an error. MAAS should automatically include a PXE bootable network in this circumstance.
# juju bootstrap --constraints "spaces=private" maas juju
Creating Juju controller "juju" on maas
Looking for packaged Juju agent version 2.4.2 for amd64
Launching controller instance(s) on maas...
ERROR failed to bootstrap model: cannot start bootstrap instance in availability zone "default": failed to acquire node: No available machine matches constraints: [('agent_name', ['6f6d07d0-
(3) Due to the way Juju uses numeric labels when identifying interface constraints, the interfaces which are created based on a request from Juju will have strange, numeric-only names. MAAS should add "eth" to the beginning of each interface, so that the interface names are unambiguous (they could be confused with interface indexes; plus, numeric-only interface names are just plain strange, unless you're talking about switch ports.)
Related branches
- Newell Jensen (community): Approve
-
Diff: 188 lines (+64/-10)4 files modifiedsrc/maasserver/models/bmc.py (+16/-6)
src/maasserver/models/tests/test_bmc.py (+26/-4)
src/provisioningserver/utils/constraints.py (+5/-0)
src/provisioningserver/utils/tests/test_constraints.py (+17/-0)
tags: | added: pod track |
tags: |
added: pods removed: pod |
Changed in maas: | |
status: | Triaged → In Progress |
Changed in maas: | |
status: | In Progress → Fix Committed |
Changed in maas: | |
status: | Fix Committed → Fix Released |