Update README file for version 9.1

Describe the current workflows with octane in README.rst file.

Change-Id: Ic51af24fba70d0e2ebb3378472547b124c9d1b95
This commit is contained in:
Oleg Gelbukh 2016-07-22 10:17:20 +00:00
parent 26b47dbce4
commit 56fc094b2a
2 changed files with 197 additions and 149 deletions

145
README.md
View File

@ -1,145 +0,0 @@
# Octane upgrade workflow
## Prerequisites
In this manual we assume that user manages their environment with Fuel 5.1.1 and
has successfully upgraded it to Fuel 7.0 with the standard procedure.
Environments with the following configuration can be upgraded with Octane:
- Ubuntu operating system
- HA Multinode deployment mode
- KVM Compute
- Neutron with VLAN segmentation
- Ceph backend for Cinder AND Glance (Optional)
- No additional services installed (like Sahara, Murano, Ceilometer, etc)
## Install Octane
Create archive from this repository with `git archive` command and copy it to
your Fuel Master host.
Unpack Octane tarball to /root/ directory. Change to bin/ directory of Octane.
```
[root@fuel ~]# cd /root/octane/octane/bin
```
Run Octane script to install necessary packages on Fuel master and patch
manifests and source code of components.
```
[root@fuel bin]# yum install -y git python-pip python-paramiko
[root@fuel bin]# ./octane prepare
```
## Install 7.0 Seed environment
First, pick the environment of version 5.1.1 you want to upgrade. Log in to Fuel
Master node and run:
```
[root@fuel bin]# fuel env
````
Find the environment you selected for upgrade and remember its ID. We will refer
to it as `ORIG_ID` below.
Use Octane script to create Upgrade Seed environment.
```
[root@fuel bin]# octane upgrade-env <ORIG_ID>
```
Remember the ID of resulting environment for later use, or store it to variable.
We will refer to it as <SEED_ID> later on.
### Upgrade controller #1
Choose added controller nodes from the list of unallocated nodes:
```
[root@fuel bin]# fuel node | grep discover
```
Remember the IDs of the nodes and run the following command replacing <NODE_ID>
with that number:
```
[root@fuel bin]# octane -v --debug install-node --isolated <ORIG_ID> <SEED_ID> \
<NODE_ID> [<NODE_ID>, ...]
```
This command will install controller(s)with version 7.0 in Upgrade Seed
environment.
### Upgrade State DB
State Database contains all metadata and status data of virtual resources in
your cloud environment. Octane transfers that data to 7.0 environment as a part
of upgrade of CIC using the following command:
```
[root@fuel bin]# octane upgrade-db <ORIG_ID> <SEED_ID>
```
Before it starts data transfer, Octane stops all services on 7.0 CICs, and
disables APIs on 5.1.1 CICs, putting the environment into **Maintenance mode**.
### Upgrade Ceph cluster (OPTIONAL)
Configuration of original Ceph cluster must be replicated to the 7.0
environment. Use the following command to update configuration and restart
Ceph monitor at 7.0 controller:
```
[root@fuel bin]# octane upgrade-ceph <ORIG_ID> <SEED_ID>
```
Verify the successful update using the following command:
```
[root@fuel bin]# ssh root@node-<NODE_ID> "ceph health"
```
## Replace CICs 5.1.1 with 7.0
Now start all services on 7.0 CICs with upgraded data and redirect Compute
nodes from 5.1.1 CICs to 7.0 CICs.
Following Octane script will start all services on 7.0 CICs, then disconnect 5.1
CICs from Management and Public networks, while keeping connection between CICs
themselves, and connect 7.0 CICs to those networks:
```
[root@fuel bin]# octane upgrade-control ORIG_ID SEED_ID
```
### Upgrade compute nodes
Select a node to upgrade from the list of nodes in 5.1.1 environment:
```
[root@fuel bin]# fuel node --env <ORIG_ID>
```
Run Octane script with 'upgrade-node' command to reassign node to 7.0
environment and upgrade it. You need to specify ID of the node as a second
argument.
```
[root@fuel bin]# octane upgrade-node <SEED_ID> <NODE_ID> [<NODE_ID> ...]
```
Repeat this process until all nodes are reassigned from 5.1.1 to 7.0 environment.
## Finish upgrade
### Clean up the Fuel Master node
Run 'cleanup-fuel' command to revert all changes made to components of the Fuel
installer and uninstall temporary packages.
```
[root@fuel bin]# ./octane cleanup-fuel
```

View File

@ -4,9 +4,9 @@ octane
Octane - upgrade your Fuel.
Please feel here a long description which must be at least 3 lines wrapped on
80 cols, so that distribution package maintainers can use it in their packages.
Note that this is a hard requirement.
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.
* Free software: Apache license
* Documentation: http://docs.openstack.org/developer/octane
@ -16,4 +16,197 @@ Note that this is a hard requirement.
Features
--------
* TODO
* 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 ...