
In this commit, dcmanager api and manager are updated to support the restore of a Redfish capable subcloud from backup data. Unit tests will be added in a separate commit. Tests: - Restore request without install (not yet supported) - Restore request for a subcloud that is currently in 'managed' state - Load is not in dc-vault - Mandatory restore value (backup_filename) is not present - Specified backup file cannot be found - Subcloud restore with backup data on the target (i.e. backup tarball is under /opt/platform-backup) - Subcloud restore with backup data on the system controller (i.e. on_box_data = false) - Simulate install failure - Simulate check target failure - Batch subcloud restore - Subcloud restore retry - Subcloud restore with patches Task: 41725 Story: 2008573 Depends-On: https://review.opendev.org/c/starlingx/ansible-playbooks/+/777046 Change-Id: I8134c535e39231837727811475b0f01b2ccddb63 Signed-off-by: Tee Ngo <tee.ngo@windriver.com>
Service
- DC Manager Service has responsibility for:
-
Main subcloud state machine as well as all operations on subclouds including creation, deletion and update.
- service.py:
-
run DC Manager service in multi-worker mode, and establish RPC server
- subcloud_manager.py:
-
Manages all subcloud related activities such as creation, deletion, availability status, management state
- audit_manager.py:
-
A Periodic audit to contact each subcloud and ensure that at least one of each service group is up and active, which is a pre-requisite for declaring a subcloud as online.
- scheduler.py:
-
Thread group manager, also responsible for periodic timer tasks - ie. audit.