...
- This documents expects that your cloud is deployed with a recent victoria tag of the ntnuopenstack repository.
- You have a recent mysql backup in case things go south.
- If you want to do a rolling upgrade, the following key should be set in hiera long enough in advance that all hosts have had an puppet-run to apply it:
nova::upgrade_level_compute: 'victoria5.12'
- When the upgrade is finished - set this key to 'wallaby'6.0'
- These version-numbers can be correlated to release-name in the file /usr/lib/python3/dist-packages/nova/compute/rpcapi.py
The recommended order to upgrade the services are listed below:
...
- Pick the first node, and run puppet with the wallaby modules/tags, Run
apt apt-get autoremove && apt-get dist-upgrade && apt-get autoremove
- Run
neutron-db-manage upgrade --expand
- Restart neutron-server.service and rerun puppet
- Upgrade the rest of the API-nodes (repeating step 1, and 3)
- Stop all neutron-server processes for a moment, and run:
neutron-db-manage upgrade --contract
- Re-start the neutron-server processes
...
- Install the first node; either by resintaling it with the wallaby modules/tags, or follow this list:
- Run puppet with wallaby modules/tags
Run systemctl stop puppet apache2
- Run
apt-get purge placement-api placement-common python3-placement && apt-get autoremove && apt-get dist-upgrade
- Run puppet again
- Run
placement-manage db sync; placement-manage db
online_data_migrations
on the new node. - upgrade the rest of the nodes, skipping step 2.
...
- Stop all barbican-services by adding the following keys to node-specific hiera, and then make sure to run puppet on the barbican hosts:
barbican::worker::enabled: false
apache::service_ensure: 'stopped'
Run puppet with the wallaby modules/tags
Run
apt dist-upgrade && apt-get autoremove
Run
barbican-db-manage upgrade
- Remove
barbican::api::max_allowed_secret_in_bytes: 20000
andbarbican::api::max_allowed_request_size_in_bytes: 25000
from hiera. The defaults in W is OK, and this is no longer needed. Re-start barbican services by removing the keys added in step 1 and re-run puppet.
...
- Run puppet with the wallaby modules/tags
- run
dnf upgrade
- Yes this is weird: Login to all memcached servers, and run
systemctl restart memcached
- This is only necessary when upgrading the first horizon server
- Run puppet again
- restart httpd
Compute-nodes
When all APIs etc. are upgraded, it is time to do the same on the compute-nodes. Compute nodes are simple to upgrade:
- Do one of:
- Reinstall the node with wallaby modules/tags
- Run puppet with the wallaby modules/tags, Run
apt dist-upgrade && apt-get autoremove
- Reboot the compute-node
- When it comes up, see that the storage-interface is up. It it isnt, run a manual puppet-run to fix it.
GPU-nodes
- Run puppet with the wallaby modules/tags
...
- Run
apt
dist-upgrade
&&
...
apt autoremove
- Run puppet again
- Restart openstack services and openvswitch-services
Finalizing
- Run
nova-manage db online_data_migrations
on a nova API node. Ensure that it reports that nothing more needs to be done. - Rotate octavia images.
Update hiera with nova::upgrade_level_compute: '6.0'