[SRU] maas-cluster-controller doesn't have images for provisioning
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MAAS |
Fix Released
|
Critical
|
Julian Edwards | ||
1.2 |
Fix Released
|
Critical
|
Julian Edwards | ||
maas (Ubuntu) |
Fix Released
|
High
|
Unassigned | ||
Quantal |
Fix Released
|
Undecided
|
Unassigned | ||
Raring |
Fix Released
|
High
|
Unassigned | ||
python-tx-tftp (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Quantal |
Fix Released
|
High
|
Unassigned | ||
Raring |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Context is the QA lab
In one VM I have the region-controller (RC) where:
10.98.0.90 is the api/webui
192.168.21.5 is the RC's provisioning server
On another VM I have a cluster-controller (CC) where
192.168.20.5 is the CC's provisioning server
10.98.0.91 is the interface connected to the RC network
The 21.x and 20.x networks don't have access to each other.
When I install the CC, I set up the API to http://
When the CC is registered to the RC and and dhcpd.conf file is written, I get this:
subnet 192.168.20.0 netmask 255.255.255.0 {
next-server 192.168.21.5;
filename "pxelinux.0";
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.20.255;
option domain-name-servers 192.168.21.5;
option routers 192.168.20.1;
range dynamic-bootp 192.168.20.10 192.168.20.20;
}
When the nodes in the 20.x network are booted, they can reach the DHCP server but can't reach the provisioning server.
If I change the next-server value to 192.168.20.5, the nodes can't find the images.
Looks like when the CC is registered, the images in the RC should be sent to the CC, so it can serve them to the nodes in its network.
= python-tx-tftp =
[Impact]
Enables the backend to know from what address the request came in on. This is an important fix related to MAAS, as it requires from what IP address the request came from in order to provide tftp correctly.
[Test Case]
1. Install MAAS region in 1 machine.(Make sure iscsi is not running)
2. Install MAAS cluster in a second machine. (ISCSI will be running managed by MAAS)
3. Boot a client machine.
If the enlistment failed it is because the machine tried to access the region controller instead of the cluster controller. If the machine enlists successful we can be confident that the bug is resolved.
[Regression Potential]
Minimal. This simply passes a new argument and does not affect the code. This has been tested wwith MAAS and the MAAS team is committed to fix any issues for this package from this point forward.
Related branches
- Gavin Panella (community): Approve
-
Diff: 61 lines (+25/-0)2 files modifiedsrc/provisioningserver/tasks.py (+14/-0)
src/provisioningserver/tests/test_tasks.py (+11/-0)
- Julian Edwards (community): Approve
-
Diff: 111 lines (+30/-10)4 files modifiedsrc/maasserver/forms.py (+6/-0)
src/maasserver/models/config.py (+1/-0)
src/maasserver/tests/test_config.py (+14/-6)
src/maasserver/tests/test_views_settings.py (+9/-4)
- Gavin Panella (community): Approve
-
Diff: 70 lines (+27/-5)2 files modifiedsrc/provisioningserver/tasks.py (+7/-2)
src/provisioningserver/tests/test_tasks.py (+20/-3)
- Jeroen T. Vermeulen (community): Approve
-
Diff: 110 lines (+50/-7)3 files modifiedsrc/maasserver/api.py (+16/-6)
src/maasserver/components.py (+3/-1)
src/maasserver/tests/test_api.py (+31/-0)
- Julian Edwards (community): Approve
- Gavin Panella (community): Approve
-
Diff: 356 lines (+85/-52)11 files modifiedsrc/maasserver/api.py (+4/-1)
src/maasserver/models/bootimage.py (+15/-10)
src/maasserver/preseed.py (+1/-1)
src/maasserver/testing/factory.py (+4/-1)
src/maasserver/tests/test_api.py (+27/-19)
src/maasserver/tests/test_bootimage.py (+20/-9)
src/maasserver/tests/test_preseed.py (+2/-2)
src/maasserver/tests/test_start_up.py (+1/-1)
src/provisioningserver/boot_images.py (+2/-1)
src/provisioningserver/testing/boot_images.py (+2/-4)
src/provisioningserver/tests/test_boot_images.py (+7/-3)
- Raphaël Badin (community): Approve
-
Diff: 254 lines (+224/-1)2 files modifiedsrc/maasserver/migrations/0039_add_nodegroup_to_bootimage.py (+217/-0)
src/maasserver/models/bootimage.py (+7/-1)
- Julian Edwards (community): Approve
-
Diff: 313 lines (+142/-14)6 files modifiedcontrib/python-tx-tftp/tftp/protocol.py (+14/-2)
contrib/python-tx-tftp/tftp/test/test_protocol.py (+73/-2)
src/maasserver/api.py (+4/-1)
src/maasserver/tests/test_api.py (+25/-7)
src/provisioningserver/tests/test_tftp.py (+20/-2)
src/provisioningserver/tftp.py (+6/-0)
- Gavin Panella (community): Approve
-
Diff: 1273 lines (+600/-95)23 files modifiedcontrib/python-tx-tftp/tftp/protocol.py (+14/-2)
contrib/python-tx-tftp/tftp/test/test_protocol.py (+73/-2)
src/maasserver/api.py (+24/-8)
src/maasserver/components.py (+3/-1)
src/maasserver/forms.py (+6/-0)
src/maasserver/migrations/0039_add_nodegroup_to_bootimage.py (+217/-0)
src/maasserver/models/bootimage.py (+22/-11)
src/maasserver/models/config.py (+1/-0)
src/maasserver/preseed.py (+1/-1)
src/maasserver/testing/factory.py (+4/-1)
src/maasserver/tests/test_api.py (+102/-36)
src/maasserver/tests/test_bootimage.py (+20/-9)
src/maasserver/tests/test_config.py (+14/-6)
src/maasserver/tests/test_preseed.py (+2/-2)
src/maasserver/tests/test_start_up.py (+1/-1)
src/maasserver/tests/test_views_settings.py (+9/-4)
src/provisioningserver/boot_images.py (+2/-1)
src/provisioningserver/tasks.py (+19/-0)
src/provisioningserver/testing/boot_images.py (+2/-4)
src/provisioningserver/tests/test_boot_images.py (+7/-3)
src/provisioningserver/tests/test_tasks.py (+31/-1)
src/provisioningserver/tests/test_tftp.py (+20/-2)
src/provisioningserver/tftp.py (+6/-0)
- Gavin Panella (community): Approve
-
Diff: 82 lines (+6/-17)5 files modifiedetc/celeryconfig.py (+0/-10)
etc/celeryconfig_cluster.py (+5/-0)
etc/celeryconfig_common.py (+0/-1)
src/provisioningserver/tasks.py (+1/-1)
src/provisioningserver/tests/test_tasks.py (+0/-5)
- Julian Edwards (community): Approve
-
Diff: 82 lines (+6/-17)5 files modifiedetc/celeryconfig.py (+0/-10)
etc/celeryconfig_cluster.py (+5/-0)
etc/celeryconfig_common.py (+0/-1)
src/provisioningserver/tasks.py (+1/-1)
src/provisioningserver/tests/test_tasks.py (+0/-5)
- John A Meinel (community): Approve
- Julian Edwards (community): Approve
-
Diff: 233 lines (+131/-14)4 files modifiedsrc/provisioningserver/plugin.py (+12/-4)
src/provisioningserver/tests/test_plugin.py (+49/-10)
src/provisioningserver/tests/test_utils.py (+59/-0)
src/provisioningserver/utils.py (+11/-0)
- Gavin Panella (community): Approve
-
Diff: 233 lines (+131/-14)4 files modifiedsrc/provisioningserver/plugin.py (+12/-4)
src/provisioningserver/tests/test_plugin.py (+49/-10)
src/provisioningserver/tests/test_utils.py (+59/-0)
src/provisioningserver/utils.py (+11/-0)
- Andres Rodriguez (community): Approve
-
Diff: 31 lines (+23/-1)1 file modifieddebian/changelog (+23/-1)
Changed in maas: | |
importance: | High → Critical |
Changed in maas: | |
milestone: | none → 12.10-stabilization |
Changed in maas: | |
status: | Triaged → In Progress |
assignee: | nobody → Julian Edwards (julian-edwards) |
Changed in maas (Ubuntu): | |
status: | New → Triaged |
importance: | Undecided → High |
Changed in maas: | |
milestone: | 12.10-stabilization → none |
status: | In Progress → Fix Released |
Changed in maas: | |
status: | Fix Released → In Progress |
Changed in maas: | |
status: | In Progress → Fix Released |
Changed in python-tx-tftp (Ubuntu Quantal): | |
importance: | Undecided → High |
description: | updated |
summary: |
- maas-cluster-controller doesn't have images for provisioning + [SRU] maas-cluster-controller doesn't have images for provisioning |
tags: |
added: verification-done removed: verification-needed |
We knew about this but there was no bug until now, so thanks :)
See also bug 1067961 which is the same problem but with iSCSI