
Story: 2010676 Task: 50141 Change-Id: I2ab679259b22c71d1e544a036d2cfa5cc8f81a2c Signed-off-by: Ngairangbam Mili <ngairangbam.mili@windriver.com>
256 lines
11 KiB
ReStructuredText
256 lines
11 KiB
ReStructuredText
.. WARNING: Add no lines of text between the label immediately following
|
|
.. and the title.
|
|
|
|
.. _orchestrated-rollback-host-software-deployment-c6b12f13a8a1:
|
|
|
|
==============================================
|
|
Orchestrated Rollback Host Software Deployment
|
|
==============================================
|
|
|
|
For an orchestrated software deployment, the
|
|
:ref:`orchestrated-deployment-host-software-deployment-d234754c7d20` procedure
|
|
can be aborted and rolled back as long as the postrequisite :command:`software
|
|
deploy delete` has not been done either manually or via orchestrated upgrade.
|
|
After the postrequisite :command:`software deploy delete` step, an orchestrated
|
|
abort and rollback of the deployment is not possible.
|
|
|
|
.. note::
|
|
|
|
This section also covers the orchestrated abort and rollback of an updated
|
|
release deployment. Deployment cannot be rolled back after the activation
|
|
stage. Orchestrated rollback is currently supported only for |AIO-SX|.
|
|
|
|
.. rubric:: |prereq|
|
|
|
|
You have done either of the following:
|
|
|
|
- Aborted an :ref:`orchestrated-deployment-host-software-deployment-d234754c7d20` procedure.
|
|
|
|
.. code-block::
|
|
|
|
~(keystone_admin)]$ sw-manager sw-deploy-strategy abort
|
|
Strategy Software Deploy Strategy:
|
|
strategy-uuid: 63f48dfc-f833-479b-b597-d11f9219baf5
|
|
release-id: <software-release-id>
|
|
controller-apply-type: serial
|
|
storage-apply-type: serial
|
|
worker-apply-type: serial
|
|
default-instance-action: stop-start
|
|
alarm-restrictions: strict
|
|
current-phase: apply
|
|
current-phase-completion: 7%
|
|
state: aborting
|
|
inprogress: true
|
|
|
|
and waited for the orchestration to finish its current stage/step and then
|
|
abort.
|
|
|
|
.. code-block::
|
|
|
|
~(keystone_admin)]$ sw-manager sw-deploy-strategy show
|
|
Strategy Software Deploy Strategy:
|
|
strategy-uuid: 63f48dfc-f833-479b-b597-d11f9219baf5
|
|
release-id: <software-release-id>
|
|
controller-apply-type: serial
|
|
storage-apply-type: serial
|
|
worker-apply-type: serial
|
|
default-instance-action: stop-start
|
|
alarm-restrictions: strict
|
|
current-phase: abort
|
|
current-phase-completion: 100%
|
|
state: aborted
|
|
apply-result: aborted
|
|
apply-reason:
|
|
abort-result: success
|
|
abort-reason:
|
|
|
|
- Or completed an :ref:`orchestrated-deployment-host-software-deployment-d234754c7d20` procedure:
|
|
|
|
.. code-block::
|
|
|
|
~(keystone_admin)]$ sw-manager sw-deploy-strategy show
|
|
Strategy Software Deploy Strategy:
|
|
strategy-uuid: 6282f049-bb9e-46f0-9ca8-97bf626884e0
|
|
release-id: <software-release-id>
|
|
controller-apply-type: serial
|
|
torage-apply-type: serial
|
|
worker-apply-type: serial
|
|
default-instance-action: stop-start
|
|
alarm-restrictions: strict
|
|
current-phase: apply
|
|
current-phase-completion: 100%
|
|
state: applied
|
|
apply-result: success
|
|
apply-reason:
|
|
|
|
But, you have not executed the postrequisite :command:`software deploy delete` step.
|
|
|
|
.. rubric:: |proc|
|
|
|
|
#. Delete any old software deployment strategy.
|
|
|
|
.. code-block::
|
|
|
|
~(keystone_admin)]$ sw-manager sw-deploy-strategy delete
|
|
Strategy deleted
|
|
|
|
#. Create a software deployment rollback orchestration strategy with desired
|
|
policies to abort and rollback the current software deployment.
|
|
|
|
.. code-block::
|
|
|
|
~(keystone_admin)]$ sw-manager sw-deploy-strategy create [--controller-apply-type {serial,ignore}]
|
|
[--storage-apply-type {serial,parallel,ignore}]
|
|
[--worker-apply-type {serial,parallel,ignore}]
|
|
[--max-parallel-worker-hosts {2,3,4,5,6,7,8,9,10}]
|
|
[--instance-action {stop-start,migrate}]
|
|
[--alarm-restrictions {strict,relaxed}]
|
|
--rollback
|
|
|
|
strategy-uuid: 5435e049-7002-4403-acfb-7886f6da14af
|
|
release-id: <software-release-id>
|
|
controller-apply-type: serial
|
|
storage-apply-type: serial
|
|
worker-apply-type: serial
|
|
default-instance-action: migrate
|
|
alarm-restrictions: strict
|
|
current-phase: build
|
|
current-phase-completion: 0%
|
|
state: building
|
|
inprogress: true
|
|
|
|
where,
|
|
|
|
``--rollback``
|
|
Specifies that this is a software deployment rollback orchestration
|
|
strategy for the current software deployment.
|
|
|
|
``[--controller-apply-type {serial,ignore}]``
|
|
(Optional) Specifies whether software should be deployed to the
|
|
controller hosts in serial or ignored. The default is serial.
|
|
``ignore`` should only be used when re-creating and applying a strategy
|
|
after an abort or failure.
|
|
|
|
``[--storage-apply-type {serial,parallel,ignore}]``
|
|
(Optional) Specifies whether software should be deployed to the storage
|
|
hosts in serial, in parallel, or ignored. The default is serial.
|
|
Software is deployed to the storage hosts in parallel by software
|
|
deploying a storage host from each storage redundancy group at the same
|
|
time. ``ignore`` should only be used when recreating and applying a
|
|
strategy after an abort or failure.
|
|
|
|
.. note::
|
|
|
|
If parallel apply for storage is used, it will be automatically
|
|
replaced with the serial apply for ``--storage-apply-type``.
|
|
|
|
``[--worker-apply-type {serial,parallel,ignore}]``
|
|
(Optional) Specifies whether software should be deployed to the worker
|
|
hosts in serial, in parallel, or ignored. The default is serial. The
|
|
number of worker hosts that are software deployed in parallel is
|
|
specified by ``[--max-parallel-worker-hosts {2,3,4,5,6,7,8,9,10}]``.
|
|
The default is 2. ``ignore`` should only be used when recreating and
|
|
applying a strategy after an abort or failure.
|
|
|
|
``[--max-parallel-worker-hosts {2,3,4,5,6,7,8,9,10}]``
|
|
Specifies the number of worker hosts that are software deployed in
|
|
parallel specified by ``[--max-parallel-worker-hosts
|
|
{2,3,4,5,6,7,8,9,10}]``. The default is 2.
|
|
|
|
``[--instance-action {stop-start,migrate}]``
|
|
This option only applies to OpenStack |VM| hosted guests. It specifies
|
|
the action done to hosted OpenStack |VMs| on a worker host (|AIO|
|
|
controller) prior to deploying the new software to the host. The default
|
|
is ``stop-start``.
|
|
|
|
- ``stop-start``
|
|
Before deploying the software release to the host, all hosted
|
|
OpenStack |VMs| are stopped or shutdown.
|
|
|
|
After deploying the software release to the host, all hosted
|
|
OpenStack |VMs| are restarted.
|
|
|
|
- ``migrate``
|
|
Before deploying the software release to the host, all hosted
|
|
OpenStack |VMs| are migrated to another host that is capable of hosting
|
|
the hosted OpenStack |VM| and that is not part of the current stage.
|
|
|
|
Hosts whose software is already updated are preferred over
|
|
hosts whose software is not yet updated. Live migration is
|
|
attempted first, if not available for the OpenStack |VM|, then cold
|
|
migration is performed.
|
|
|
|
``[--alarm-restrictions {strict,relaxed}]``
|
|
This option lets you determine how to handle alarm restrictions based on
|
|
the management affecting statuses of any existing alarms, which takes
|
|
into account the alarm type as well as the alarm's current severity.
|
|
|
|
The default is strict.
|
|
|
|
If set to relaxed, orchestration will be allowed to proceed if there are
|
|
no management affecting alarms present.
|
|
|
|
Performing management actions without specifically relaxing the alarm
|
|
checks will still fail if there are any alarms present in the system
|
|
(except for a small list of basic alarms for the orchestration actions
|
|
such as an upgrade operation in progress alarm not impeding upgrade
|
|
orchestration).
|
|
|
|
You can use the CLI command :command:`fm alarm-list --mgmt_affecting` to
|
|
view the alarms that are management affecting.
|
|
|
|
- ``Strict``
|
|
|
|
Maintains alarm restrictions.
|
|
|
|
- ``Relaxed``
|
|
|
|
Relaxes the usual alarm restrictions and allows the action to proceed
|
|
if there are no alarms present in the system with a severity equal to
|
|
or greater than its management affecting severity.
|
|
|
|
#. Apply the software deployment rollback orchestration:
|
|
|
|
.. code-block::
|
|
|
|
~(keystone_admin)]$ sw-manager sw-deploy-strategy apply
|
|
Strategy Software Deploy Strategy:
|
|
strategy-uuid: 52873771-fc1a-48cd-b322-ab921d34d01c
|
|
release-id: <software-release-id>
|
|
controller-apply-type: serial
|
|
storage-apply-type: serial
|
|
worker-apply-type: serial
|
|
default-instance-action: stop-start
|
|
alarm-restrictions: strict
|
|
current-phase: apply
|
|
current-phase-completion: 0%
|
|
state: applying
|
|
inprogress: true
|
|
|
|
#. Wait for all the steps of all stages of the software deployment rollback
|
|
orchestration strategy to complete.
|
|
|
|
.. code-block::
|
|
|
|
~(keystone_admin)]$ sw-manager sw-deploy-strategy show
|
|
Strategy Software Deploy Strategy:
|
|
strategy-uuid: 6282f049-bb9e-46f0-9ca8-97bf626884e0
|
|
release-id: <software-release-id>
|
|
controller-apply-type: serial
|
|
storage-apply-type: serial
|
|
worker-apply-type: serial
|
|
default-instance-action: stop-start
|
|
alarm-restrictions: strict
|
|
current-phase: apply
|
|
current-phase-completion: 100%
|
|
state: done
|
|
apply-result: success
|
|
apply-reason:
|
|
|
|
#. Delete the completed software deployment rollback orchestration strategy.
|
|
|
|
.. code-block::
|
|
|
|
~(keystone_admin)]$ sw-manager sw-deploy-strategy delete
|
|
Strategy deleted.
|