...
- Select which glance-server to upgrade first.
- In the node-specific hiera for this host you should set:
glance::api::enabled: false
followed by a puppet-run. This would stop the glance-api service on the host.
- In the node-specific hiera for this host you should set:
- Run puppet on the first host with the train modules/tags
- Run
apt-get purge python-cinderclient && apt-get autoremove && apt-get dist-upgrade
- Run puppet again.
- Run
glance-manage db expand
- Run
glance-manage db migrate
- Remove the
glance::api::enable: false
from the node-specific hiera, and run puppet again. This would re-start the glance api-server on this host.- Test that this api-server works.
- Upgrade the rest of the glance hosts (ie; step 2-4 for each of the remaining glance hosts)
Cinder
To upgrade cinder without any downtime, follow this procedure
- Add the following three lines to the node-file of the first node you would like to upgrade:
apache::service_ensure: 'stopped'
cinder::scheduler::enabled: false
cinder::volume::enabled: false
- Run puppet on the first host with train modules/tags
- Run
apt-get purge python-cinderclient && apt-get autoremove && apt-get dist-upgrade
- Run puppet again
- Run
cinder-manage db sync && cinder-manage db online_data_migrations
- Remove the lines added at step 1, re-run puppet, and test that the upgraded cinder version works.
- Perfom step 2-4 for the rest of the cinder nodes
Neutron
In this release we disable neutron-lbaas, so all lbaas_V2 resources must be deleted before the upgrade. This can be done by a script in our admintools/oneshot/delete-neutron-lbaas-resources.sh
. To upgrade neutron with minimal downtime, follow this procedure:
Hiera-changes:
You should remove the LBAAS-related elements from the hiera-keys:
- ntnuopenstack::neutron::service_plugins
- ntnuopenstack::neutron::service_providers
API-nodes
- Pick the first node, and run puppet with the train modules/tags
- Run
apt-get purge python-cinderclient && apt-get autoremove && apt-get dist-upgrade
- Run
neutron-db-manage upgrade --expand
- Run
neutron-db-manage --subproject neutron-fwaas upgrade head
- Restart neutron-server.service and rerun puppet
- Upgrade the rest of the API-nodes (repeating step 1, 2, 5)
- Stop all neutron-server processes for a moment, and run:
neutron-db-manage upgrade --contract
- Re-start the neutron-server processes
BGP-agents
- Run puppet with the stein modules/tags
- Run
apt dist-upgrade
- Rerun puppet and restart the service
systemctl restart neutron-bgp-dragent.service
Network-nodes
- Run puppet with the stein modules/tags
- Run
apt dist-upgrade
- Rerun puppet and restart the service
systemctl restart ovsdb-server
systemctl restart neutron-dhcp-agent.service neutron-l3-agent.service neutron-metadata-agent.service neutron-openvswitch-agent.service neutron-ovs-cleanup.service
Nova
Heat
Barbican
Octavia
Magnum
Horizon
Compute-nodes
Finalizing
- Remove old neutron-agents