3.4 KiB
Home OpenStack-Ansible Installation Guide
Appendix C: Minor upgrades
Upgrades between minor versions of OpenStack-Ansible are handled by updating the repository clone to the latest tag, then executing playbooks against the target hosts.
Note
In order to avoid issues and ease the troubleshooting if an issue
appears during the upgrade, disable the security hardening role before
running the following steps. Set your variable
apply_security_hardening
to False
.
A minor upgrade typically requires the execution of the following:
Change directory into the repository clone root directory:
# cd /opt/openstack-ansible
Update the git remotes:
# git fetch --all
Checkout the latest tag (the below tag is an example):
# git checkout 13.0.1
Update all the dependent roles to the latest versions:
# ./scripts/bootstrap-ansible.sh
Change into the playbooks directory:
# cd playbooks
Update the hosts:
# openstack-ansible setup-hosts.yml
Update the infrastructure:
# openstack-ansible -e rabbitmq_upgrade=true \ setup-infrastructure.yml
Update all OpenStack services:
# openstack-ansible setup-openstack.yml
Note
Scope upgrades to specific OpenStack components by executing each of the component playbooks using groups.
For example:
Update only the Compute hosts:
# openstack-ansible os-nova-install.yml --limit nova_compute
Update only a single Compute host:
Note
Skipping the
nova-key
tag is necessary as the keys on all Compute hosts will not be gathered.# openstack-ansible os-nova-install.yml --limit <node-name> \ --skip-tags 'nova-key'
To see which hosts belong to which groups, the
inventory-manage.py
script shows all groups and their
hosts. For example:
Change directory into the repository clone root directory:
# cd /opt/openstack-ansible
Show all groups and which hosts belong to them:
# ./scripts/inventory-manage.py -G
Show all hosts and which groups they belong:
# ./scripts/inventory-manage.py -g
To see which hosts a playbook will execute against, and to see which tasks will execute.
Change directory into the repository clone playbooks directory:
# cd /opt/openstack-ansible/playbooks
See the hosts in the
nova_compute
group which a playbook executes against:# openstack-ansible os-nova-install.yml --limit nova_compute \ --list-hosts
See the tasks which will be executed on hosts in the
nova_compute
group:# openstack-ansible os-nova-install.yml --limit nova_compute \ --skip-tags 'nova-key' \ --list-tasks