DC upgrade - Subcloud upgrade failed to populate /etc/network/
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
StarlingX |
Fix Released
|
Medium
|
Andre Kantek |
Bug Description
Brief Description
DC upgrade - Subcloud upgrade failed to populate /etc/network/
Error:
TASK [optimized-
Wednesday 15 November 2023 16:31:28 +0000 (0:00:00.481) 0:14:59.746 ****
fatal: [subcloud2]: FAILED! => changed=true
cmd: puppet-
delta: '0:00:21.676148'
end: '2023-11-15 16:31:38.128618'
msg: non-zero return code
rc: 1
start: '2023-11-15 16:31:16.452470'
stderr: ''
stderr_lines: <omitted>
stdout: |-
Applying puppet runtime manifest...
[WARNING]
Warnings found. See /var/log/
/var/log/
stdout_lines: <omitted>
Severity
<Critical: System/Feature is not usable after the defect>
Steps to Reproduce
Deploy systemcontroller with stx8.0
Import inactive load (stx6.0)
deploy subcloud with inactive load
manage subcloud
backup and prestage subcloud
upgrade subcloud
Expected Behavior
The subcloud should be upgraded successfully
Actual Behavior
The subcloud upgrade failed to populate network config at /etc/network
Reproducibility
seen once
System Configuration
DC
Alarms
no alarms available
Test Activity
Regression Testing
Workaround
no workarounds
Changed in starlingx: | |
assignee: | nobody → Andre Kantek (akantek) |
Changed in starlingx: | |
status: | New → In Progress |
tags: | added: stx.9.0 stx.networking stx.update |
Changed in starlingx: | |
importance: | Undecided → Medium |
Changed in starlingx: | |
status: | Fix Released → In Progress |
Reviewed: https:/ /review. opendev. org/c/starlingx /stx-puppet/ +/901207 /opendev. org/starlingx/ stx-puppet/ commit/ 39f1517bc12f6e5 1c9733b71e4bf1d 46e9040822
Committed: https:/
Submitter: "Zuul (22348)"
Branch: master
commit 39f1517bc12f6e5 1c9733b71e4bf1d 46e9040822
Author: Andre Kantek <email address hidden>
Date: Thu Nov 16 17:45:13 2023 -0300
Do not set floating address as deprecated during upgrade bootstrap
During upgrade all floating addresses in /etc/hosts are configured /opendev. org/starlingx/ ansible- playbooks/ src/branch/ master/ playbookconfig/ src/playbooks/ roles/optimized -restore/ restore- configuration/ tasks/restore- networking. yml
in the loopback in the step "Bring up temporary addresses", located
in
https:/
Later the network will be restored at the step /opendev. org/starlingx/ ansible- playbooks/ src/branch/ master/ playbookconfig/ src/playbooks/ roles/optimized -restore/ restore- data/tasks/ upgrade- networking. yml
https:/
It will call the class "platform: :network: :runtime" and inside :network: :network_ address. This class marks the
execute platform:
floating addresses as deprecated to not be selected as the source
address in the definitive interfaces. Since it uses "ip addr replace"
it adds the address even if it is not configured.
Under certain conditions the presence of the same address in the
loopback and network interface may result in a dadfailed address
creating a failed test in puppet, preventing the upgrade to go
further.
But during the AIO-SX upgrade the floating addresses just need to be
configured for internal comms. It can stay in the loopback, after
the 1st unlock post upgrade all addressing will be corrected to the
definitive interfaces.
This change uses the flag /var/run/ .network_ upgrade_ bootstrap, created
the upgrade bootstrap to control the network configuration to avoid
execution of this step.
Test Plan
execution will pass the playbook execution.
[PASS] Upgrade an AIO-SX and validate that the network runtime puppet
[PASS] lock/unlock AIO-SX to execute puppet network class outside the
upgrade execution
Closes-Bug: 2044020
Change-Id: I4735d4bcb13091 8fad7ebb716ad5b e2ba5b7e8fe
Signed-off-by: Andre Kantek <email address hidden>