Commit 91fb0d18 authored by Bernardo Dal Seno's avatar Bernardo Dal Seno
Browse files

Document procedure to downgrade a cluster

This is based on the --donwgrade option of cfgupgrade, first introduced in
1709435e

.
Signed-off-by: default avatarBernardo Dal Seno <bdalseno@google.com>
Reviewed-by: default avatarGuido Trotter <ultrotter@google.com>
parent 6c28c480
......@@ -18,6 +18,8 @@ Version 2.8.0 beta1
are currently used by instances. The order of storage types will be based
on Ganeti's history of supporting them. In the future, the first entry of
the list will be used as a default storage type on instance creation.
- ``cfgupgrade`` now supports a ``--downgrade`` option to bring the
configuration back to the previous stable version.
Version 2.7.0 beta1
......
......@@ -71,6 +71,71 @@ To run commands on all nodes, the `distributed shell (dsh)
$ gnt-cluster verify
Reverting an upgrade
~~~~~~~~~~~~~~~~~~~~
For going back between revisions (e.g. 2.1.1 to 2.1.0) no manual
intervention is required, as for upgrades.
Starting from version 2.8, ``cfgupgrade`` supports ``--downgrade``
option to bring the configuration back to the previous stable version.
This is useful if you upgrade Ganeti and after some time you run into
problems with the new version. You can downgrade the configuration
without losing the changes made since the upgrade. Any feature not
supported by the old version will be removed from the configuration, of
course, but you get a warning about it. If there is any new feature and
you haven't changed from its default value, you don't have to worry
about it, as it will get the same value whenever you'll upgrade again.
The procedure is similar to upgrading, but please notice that you have to
revert the configuration **before** installing the old version.
#. Ensure no jobs are running (master node only)::
$ gnt-job list
#. Pause the watcher for an hour (master node only)::
$ gnt-cluster watcher pause 1h
#. Stop all daemons on all nodes::
$ /etc/init.d/ganeti stop
#. Backup old configuration (master node only)::
$ tar czf /var/lib/ganeti-$(date +\%FT\%T).tar.gz -C /var/lib ganeti
#. Run cfgupgrade on the master node::
$ /usr/lib/ganeti/tools/cfgupgrade --verbose --downgrade --dry-run
$ /usr/lib/ganeti/tools/cfgupgrade --verbose --downgrade
You may want to copy all the messages about features that have been
removed during the downgrade, in case you want to restore them when
upgrading again.
#. Install the old Ganeti version on all nodes
#. Restart daemons on all nodes::
$ /etc/init.d/ganeti restart
#. Re-distribute configuration (master node only)::
$ gnt-cluster redist-conf
#. Restart daemons again on all nodes::
$ /etc/init.d/ganeti restart
#. Enable the watcher again (master node only)::
$ gnt-cluster watcher continue
#. Verify cluster (master node only)::
$ gnt-cluster verify
2.0 releases
------------
......
......@@ -1564,7 +1564,8 @@ cfgupgrade
++++++++++
The ``cfgupgrade`` tools is used to upgrade between major (and minor)
Ganeti versions. Point-releases are usually transparent for the admin.
Ganeti versions, and to roll back. Point-releases are usually
transparent for the admin.
More information about the upgrade procedure is listed on the wiki at
http://code.google.com/p/ganeti/wiki/UpgradeNotes.
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment