https://blueprints.launchpad.net/fuel/+spec/upgrade-fuel-admin-node
Performing back up and then restore on the re-installed Fuel Master node is a way how to deliver latest version of Fuel installer and OpenStack to users without breaking their existing environments.
This spec covers changes in the current approach to make it useful to upgrade a Fuel Master node from 8.0 to 9.x releases.
In contrast with previous releases when services were containerized, in the 9.x release services run on the host system level. Due to the fact that all Fuel services where moved from containers to the host system level it is impossible to perform upgrade of a Fuel Master node using standard tools.
The octane tool provides an approach how to upgrade a Fuel Master node from the 7.0 to 8.0 version through the re-installation from 8.0 ISO. This approach was developed in an assumption that services on both source and destination Fuel Master nodes are run in containers. This means that it can not be applied for upgrades from 9.x as is.
Current approach assumes that all services ran in Docker containers, they are managed by dockerctl and docker toolsets. Also, new versions of services can be delivered through destroy and build processes of respective containers. This can be achieved by a sequence of commands dockerctl destroy and dockerctl build.
The new approach shall modify current handlers that are used in commands octane fuel-backup and octane fuel-restore to perform all manipulations on the host system level instead of container level and and shall conform the requirements:
- services are managed by Puppet tasks located on a Fuel Master node in /etc/puppet/modules/fuel/examples/
- services are controlled by the systemctl command as other ordinary services on the host system
- /var/lib/cobbler/config/systems.d is placed in the host filesystem and contains configuration of already deployment nodes
This minimal set of modifications shall not change a format and a content of an upgrade tarball. It means that the data set is compatible with the upgrade approach that was developed earlier.
None.
None.
After the upgrade all installed plugins will have the same version they had before the upgrade, so Fuel Operator will have to install the compatible version onto the Fuel Admin node after the restore is done.
None.
None.
This proposal covers modifications of technical aspects of the upgrade workflow. Backup/restore now work for non-containerized services and the restore part re-uses puppet tasks to reconfigure and manage services in a consistent way.
None.
None.
None.
None.
The requirements enforced by the previous back up/restore upgrade approach remain. The new Fuel Master node must have the same IP addresses and administrative credentials as the old one.
This proposal doesn’t impact the deployment of new OpenStack environments.
None.
None.
None.