Quickly changing netplan configuration sometimes causes systemd-networkd to fail
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
MAAS |
Fix Released
|
High
|
Lee Trager | ||
Netplan |
New
|
Undecided
|
Unassigned |
Bug Description
MAAS 2.7 adds support for testing network configuration. The network configuration is only applied when a connectivity test is being run, otherwise the default network configuration(DHCP) is used. If multiple connectivity tests are being run the configuration is reapplied each time.
For example if the smartctl-validate, internet-
1. Machine boots into the MAAS ephemeral environment
2. Networking is automatically configured to DHCP on the boot device as the default
3. smartctl-validate test runs
4. netplan apply custom networking
5. internet-
6. netplan apply default networking
7. netplan apply custom networking
8. gateway-
9. netplan apply custom networkingd
10. netplan apply custom networking
11. rack-controller
12. netplan apply custom networking
When one of the connectivity tests runs quickly enough it causes systemd-networkd to fail with
systemd-
systemd-
systemd-
This results in the system having no networking which causes all remaining tests to timeout and the machine goes into a failed testing state. If I access the machine through the console and run systemctl restart systemd-networkd networking comes back up.
Related branches
- Blake Rouse (community): Approve
- MAAS Lander: Approve
-
Diff: 239 lines (+164/-0)3 files modifiedsrc/metadataserver/user_data/templates/snippets/maas_run_remote_scripts.py (+71/-0)
src/metadataserver/user_data/templates/snippets/tests/test_maas_run_remote_scripts.py (+92/-0)
utilities/check-imports (+1/-0)
Changed in maas: | |
status: | In Progress → Fix Committed |
Changed in maas: | |
status: | Fix Committed → Fix Released |
You may want to add a drop-in systemd- networkd. service config file that disables the rate-limit checking during your testing.
% mkdir -p /etc/systemd/ system/ systemd- networkd. service. d \nStartLimitInt erval=0" > /etc/systemd/ system/ systemd- networkd. service. d/10-extra. conf
% echo -e "[Service]
% systemctl daemon-reload