Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Select which glance-server to upgrade first.
    1. 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.
  2. Run puppet on the first host with the train modules/tags
  3. Run apt-get purge python-cinderclient && apt-get autoremove && apt-get dist-upgrade
  4. Run puppet again.
  5. Run glance-manage db expand
  6. Run glance-manage db migrate
  7. 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.
    1. Test that this api-server works.
  8. 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

  1. Add the following three lines to the node-file of the first node you would like to upgrade:
    1. apache::service_ensure: 'stopped'

    2. cinder::scheduler::enabled: false

    3. cinder::volume::enabled: false

  2. Run puppet on the first host with train modules/tags
  3. Run apt-get purge python-cinderclient && apt-get autoremove && apt-get dist-upgrade
  4. Run puppet again
  5. Run cinder-manage db sync && cinder-manage db online_data_migrations
  6. Remove the lines added at step 1, re-run puppet, and test that the upgraded cinder version works.
  7. 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

  1. Pick the first node, and run puppet with the train modules/tags
  2. Run apt-get purge python-cinderclient && apt-get autoremove && apt-get dist-upgrade
  3. Run neutron-db-manage upgrade --expand
  4. Run neutron-db-manage --subproject neutron-fwaas upgrade head
  5. Restart neutron-server.service and rerun puppet
  6. Upgrade the rest of the API-nodes (repeating step 1, 2, 5)
  7. Stop all neutron-server processes for a moment, and run:
    1. neutron-db-manage upgrade --contract
  8. Re-start the neutron-server processes

BGP-agents

  1. Run puppet with the stein modules/tags
  2. Run apt dist-upgrade
  3. Rerun puppet and restart the service
    1. systemctl restart neutron-bgp-dragent.service

Network-nodes

  1. Run puppet with the stein modules/tags
  2. Run apt dist-upgrade
  3. Rerun puppet and restart the service
    1. systemctl restart ovsdb-server
    2. 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