From 70d27d660fa7bb3a4634c288e2b13af525a80bdd Mon Sep 17 00:00:00 2001 From: Dmitriy Rabotyagov Date: Wed, 26 Oct 2022 11:30:13 +0200 Subject: [PATCH] [doc] Better document integrated usage of ceph-ansible Upgrade path is not tested for ceph-ansible and thus we can not recommend it's integrated usage with OSA. These nits should be documented properly to explain the risks. This patch is alternative implementation to more extensive one [1] [1] https://review.opendev.org/c/openstack/openstack-ansible/+/862508 Change-Id: I1031cff1b1e13ca3e0d8c97c9cd28f25bfd5c6f1 --- doc/source/admin/upgrades/major-upgrades.rst | 35 ++++++++++++++++++++ doc/source/user/ceph/full-deploy.rst | 21 ++++++++++-- 2 files changed, 53 insertions(+), 3 deletions(-) diff --git a/doc/source/admin/upgrades/major-upgrades.rst b/doc/source/admin/upgrades/major-upgrades.rst index a3c62ed7a6..ec385e32bc 100644 --- a/doc/source/admin/upgrades/major-upgrades.rst +++ b/doc/source/admin/upgrades/major-upgrades.rst @@ -223,3 +223,38 @@ We can now go ahead with the upgrade of all the OpenStack components. .. code-block:: console # openstack-ansible setup-openstack.yml -e package_state=latest + +Upgrade Ceph +~~~~~~~~~~~~ + +With each OpenStack-Ansible version we define default Ceph client version +that will be installed on Glance/Cinder/Nova hosts and used by these services. +If you want to preserve the previous version of the ceph client during an +OpenStack-Ansible upgrade, you will need to override a variable +``ceph_stable_release`` in your user_variables.yml + +If Ceph has been deployed as part of an OpenStack-Ansible deployment +using the roles maintained by the `Ceph-Ansible`_ project you will also need +to upgrade the Ceph version. Each OpenStack-Ansible release is tested only with +specific Ceph-Ansible release and Ceph upgrades are not checked in any +Openstack-Ansible integration tests. So we do not test or guarantee an +upgrade path for such deployments. In this case tests should be done in a +lab environment before upgrading. + +.. warning:: + + Ceph related playbooks are included as part of ``setup-infrastructure.yml`` + and ``setup-openstack.yml`` playbooks, so you should be cautious when + running them during OpenStack upgrades. + If you have ``upgrade_ceph_packages: true`` in your user variables or + provided ``-e upgrade_ceph_packages=true`` as argument and run + ``setup-infrastructure.yml`` this will result in Ceph package being upgraded + as well. + +In order to upgrade Ceph in the deployment you will need to run: + +.. code-block:: console + + # openstack-ansible /etc/ansible/roles/ceph-ansible/infrastructure-playbooks/rolling_update.yml + +.. _Ceph-Ansible: https://github.com/ceph/ceph-ansible/ diff --git a/doc/source/user/ceph/full-deploy.rst b/doc/source/user/ceph/full-deploy.rst index 4096518565..2a54b99327 100644 --- a/doc/source/user/ceph/full-deploy.rst +++ b/doc/source/user/ceph/full-deploy.rst @@ -63,12 +63,27 @@ integration in three ways: No ssh access by openstack-ansible is required to the ceph cluster. * deploying a ceph cluster as part of the openstack-ansible deployment by using the roles maintained by the `Ceph-Ansible`_ project. Deployers - can enable the ``ceph-install`` playbook by adding hosts to the - ``ceph-mon_hosts``, ``ceph-osd_hosts`` and ``ceph-rgw_hosts`` groups in - ``openstack_user_config.yml``, and then configuring `Ceph-Ansible specific vars + can enable the ``ceph-install.yml`` playbook by adding hosts to the + ``ceph-mon_hosts`` and ``ceph-osd_hosts`` groups in + ``openstack_user_config.yml``. In order to enable ``ceph-rgw-install.yml`` + playbook you need to add ``ceph-rgw_hosts`` in ``openstack_user_config.yml``. + +.. note:: + + Please mention, that RGW installation should be performed after deployment of + Keystone service. + + Once groups are defined, you can proceed with configuring `Ceph-Ansible specific vars `_ in the OpenStack-Ansible ``user_variables.yml`` file. +.. warning:: + + Deploying ceph cluster as part of openstack-ansible is not recommended since + ceph-ansible upgrade path is not tested or supported. This option is mainly + used for CI and AIO deployments to test and demonstrate a sample integration + of the software stack. + .. _Ceph-Ansible: https://github.com/ceph/ceph-ansible/ This example will focus on the deployment of both OpenStack-Ansible