upgrade guide should include a note about stale env.d files

Bug #1808041 reported by Bob Gibson on 2018-12-11
This bug affects 1 person
Affects Status Importance Assigned to Milestone
lei zhang

Bug Description

We performed, what appeared to be, a clean upgrade from Pike to Queens following the instructions at https://docs.openstack.org/openstack-ansible/queens/admin/upgrades/major-upgrades.html . After the upgrade the cinder-scheduler service was missing. The upgrade guide mentions that this service has been consolidated into the cinder-api container, but it turns out we had carried over an old env.d/cinder.yml file which specified that it should be placed in the cinder-scheduler container. That container is destroyed by the "${UPGRADE_PLAYBOOKS}/cleanup-cinder.yml" playbook run at the end of the upgrade process, so we ended up without a cinder-scheduler service.

It would be useful if there was a note at the beginning of the upgrade guide reminding people to merge any changes from /opt/openstack-ansible/inventory/env.d into /etc/openstack_deploy/env.d before upgrading.

Fix proposed to branch: master
Review: https://review.openstack.org/624667

Changed in openstack-ansible:
assignee: nobody → lei zhang (zhang-lei)
status: New → In Progress

Interestingly, https://github.com/openstack/openstack-ansible/blob/stable/queens/scripts/upgrade-utilities/playbooks/deploy-config-changes.yml#L33-L56 is meant to handle copying changes over, but clearly isn't doing the right thing. Perhaps it would be better if we were to change it to check for env.d file and to halt the upgrade to allow manual inspection.

Bob Gibson (rjgibson) wrote :

I have an /etc/openstack_deploy.PIKE directory, so I can confirm that the ${UPGRADE_PLAYBOOKS}/deploy-config-changes.yml playbook was run during the upgrade.

Bob Gibson (rjgibson) wrote :

Reviewed: https://review.openstack.org/624773
Committed: https://git.openstack.org/cgit/openstack/openstack-ansible/commit/?id=3fb15ad780c769c1991affff3b7ccb75ae138169
Submitter: Zuul
Branch: master

commit 3fb15ad780c769c1991affff3b7ccb75ae138169
Author: Jesse Pretorius <email address hidden>
Date: Wed Dec 12 17:38:29 2018 +0000

    Clean-up and simplify the major upgrade

    The major upgrade procedure has been collecting new bits over time,
    but has not really had bits cleaned out of it when unnecessary. Some
    parts have also never been used.

    This patch does the following:

    1. Consolidates the basic deploy node changes into a single playbook
        which is tagged, and therefore easy to run stand alone and use
        with skip-tags if necessary.
    2. Removes the ceph-galaxy-removal playbook which was for the P->Q
        upgrade only.
    3. Removes the ansible_fact_cleanup playbook and script - the first
        ran the second which was a bit pointless, given it could be done
        in a playbook task instead. This has been rolled into the
        deploy-config-changes playbook.
    4. Removes the memcached-flush playbook which was only actually
        required for the N->O upgrade. The functionality to enable the
        flush more surgically was enabled via a var in the keystone role
        in [a], so that can be used in the future if need be.
    5. Consolidates user-secrets-adjustment into the
        deploy-config-changes playbook, and also removes the var renames
        which were only appropriate for the Q->R upgrade.
    6. Removes the make_rst_table, migrate_openstack_vars and
        test_migrate_openstack_vars scripts which do not ever appear to
        have been used.
    7. Changes the limited playbook run for galera_all/rabbitmq_all from
        only doing lxc-containers-create.yml to all of setup_hosts to
        ensure that any hosts missed out in the previous step is handled
        in that step. This is useful if rabbitmq/galera are installed on
        hosts instead of in containers.
    8. Removed the extra backup of the /etc/openstack_deploy directory
        given that it is already archived by the run-upgrade script.
    9. Made the backup of the OSA configuration done in run-upgrade
    10. Removes the reference content for upgrades, given that most of
        it is duplicated and the simplified structure negates the need
        for a reference guide.
    11. Change the infrastructure part of the upgrade to be simpler,
        and use the setup-infrastructure playbook.

    [a] https://review.openstack.org/#/q/topic:bug/1793389
    Related-Bug: #1808041
    Change-Id: I58732dc181ee985364e97aa890987a98544ed06c

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers