RETIRED, Tools to upgrade OpenStack cloud managed by the Fuel installer.
Go to file
Vladimir Khlyunev f410380428 Add octane QA engineers to MAINTEINERS
There are several volunteers to review octane's patches

Change-Id: Id509d4b8ea73d1f8a60c1ecdd532e0e152f07df0
2016-09-23 15:14:45 +03:00
deploy Add transfer_snapshots method 2015-08-20 15:40:48 +03:00
deployment/puppet/octane_tasks Graph-based upgrade-ceph. Puppet part. 2016-09-07 16:14:49 +00:00
misc Add all-in-one.sh script for creating all in one commits in Gerrit 2015-09-07 15:36:29 +03:00
octane Merge "Fix the backup of network node group data" 2016-09-21 15:51:24 +00:00
specs Cleanup %files section in spec 2016-09-08 19:48:06 +00:00
.coveragerc Change ignore-errors to ignore_errors 2015-09-21 14:58:59 +00:00
.gitignore Graph-based upgrade-ceph. Puppet part. 2016-09-07 16:14:49 +00:00
.gitreview Update .gitreview for new namespace 2015-10-17 22:20:47 +00:00
.mailmap Initial Cookiecutter Commit. 2015-07-15 11:14:34 +03:00
Gemfile Start testing Puppet related code by CI 2016-08-30 14:21:16 +03:00
Gemfile.lock Start testing Puppet related code by CI 2016-08-30 14:21:16 +03:00
HACKING.rst Cleanup after cookiecutter 2015-07-15 12:23:13 +03:00
LICENSE Initial Cookiecutter Commit. 2015-07-15 11:14:34 +03:00
MAINTAINERS Add octane QA engineers to MAINTEINERS 2016-09-23 15:14:45 +03:00
MANIFEST.in Add octane/bin directory to manifest file 2016-05-23 12:39:20 +00:00
README.rst Update README file for version 9.1 2016-07-26 21:21:22 +00:00
Rakefile Start testing Puppet related code by CI 2016-08-30 14:21:16 +03:00
bindep.txt Fix bindep.txt to work on both dpkg and rpm platforms 2016-08-26 21:39:28 +03:00
requirements.txt Remove paramiko version requirement 2016-04-06 16:52:59 +03:00
setup.cfg Add the fuel2 release clone command 2016-08-24 23:18:43 +03:00
setup.py Set pyzabbix as an optional dependency 2015-10-16 15:58:48 +03:00
test-requirements.txt Honor upper-constraints 2016-04-21 14:59:58 +03:00
tox.ini Prepare coverage target to gating 2016-09-13 09:31:08 +00:00

README.rst

octane

Octane - upgrade your Fuel.

Tool set to backup, restore and upgrade Fuel installer and OpenStack environments that it manages. This version of the toolset supports upgrade from versions 7.0 and 8.0 to version 9.1.

Features

  • Backup the Fuel Master node configuraiton, OpenStack release bundles, metadata of environments and target nodes
  • Restore metadata of the Fuel Master node, environments and target nodes from previous backup
  • Upgrade OpenStack environment after upgrade of the Fuel Master node that manages it

Installation

Fuel Octane is installed on the Fuel Master node. Version of fuel-octane package must match the version of Fuel.

To download the latest version of fuel-octane package on the Fuel Master node, use the following command:

yum instal fuel-octane

Usage

Backup Fuel configuration

Use this command to backup configuration of the Fuel Master node, environments and target nodes:

octane fuel-backup --to=/path/to/backup.file.tar.gz

Backup Fuel repos and images

Use this command to backup packages and images for all supported OpenStack release bundles from the Fuel Master node:

octane fuel-repo-backup --full --to=/path/to/repo-backup.file.tar.gz

Restore Fuel configuration

Use this command to restore configuration of the Fuel Master node, environments and target nodes:

octane fuel-restore --from=/path/to/backup.file.tar.gz --admin-password=<passwod>

Replace <password> with appropriate password for user admin in your installation of Fuel.

Restore Fuel repos and images

Use this command to restore package repositories and images for OpenStack release bundbles from backup file:

octane fuel-repo-restore --from=/path/to/repo-backup.file.tar.gz

Upgrade Fuel Master node

Upgrade of Fuel Master node requires making both backups of configuration and repos and images from older Fuel, as described above. Copy those files to a secure location. After you create two backup files, install a new (9.1) version of Fuel on the same physical node or on a new one.

Note

Please, note that you must specify the same IP address for the new installation of the Fuel Master node as for the old one. Otherwise, target nodes won't be able to communicate with the new Fuel Master node.

Copy backup files to a new node from the secure location. Use octane to restore Fuel configuration and packages from backup files. Database schema will be upgraded according to migration scripts. See detailed commands above.

The Fuel Master node of new version must now have all configuration data from an old version of the Fuel Master node.

Upgrade OpenStack cluster

Install 9.0 Seed environment

Pick environment of version <9.0 that you want to upgrade. Run tha following command and remember an ID of the environment you picked:

export SEED_ID=<ID>

Run command to create Upgrade Seed environment:

octane upgrade-env $SEED_ID

Remember ID of environment that will be shown:

export ORIG_ID=<ID>

Upgrade controller #1

Pick controller with minimal ID:

export $NODE_ID=<ID>

Run the following command to upgrade it:

octane upgrade-node --isolated $SEED_ID $NODE_ID

Upgrade DB

Run the following command to upgrade state database of OpenStack environment to be upgraded:

octane upgrade-db $ORID_ID $SEED_ID

Upgrade Ceph (OPTIONAL)

Run the command to upgrade Ceph cluster:

octane upgrade-ceph $ORIG_ID $SEED_ID

Cutover to the updated control plane

The following command redirects all nodes in OpenStack cluster to talk to the new OpenStack Controller with upgraded version:

octane upgrade-control $ORIG_ID $SEED_ID

Upgrade controller #2 and #3

Run the following command to upgrade remaining controllers to version 9.1:

octane upgrade-node $SEED_ID $NODE_ID_2 $NODE_ID_3

Upgrade computes

Pick a compute node(s) to upgrade and remember their IDs.

export NODE_ID_1=<ID1>
...

Run the command to upgrade the compute node(s) without evacuating virtual machines:

octane upgrade-node --no-live-migration $SEED_ID $NODE_ID_1 ...

Run the command to upgrade the compute node(s) with evacuating virtual machines to other compute nodes in the environment via live migration:

octane upgrade-node $SEED_ID $NODE_ID_1 ...