Commands¶
COU provides commands to specify the type of operation to perform, as well as commands to define the scope of the operation. The bash completion feature facilitates the usage of these commands, simplifying interaction with the tool.
Plan¶
The plan command will analyse the cloud and output a human-readable representation of the proposed upgrade plan. It does not require any interaction. Refer to the output below for the description of all available options.
user@host:~$
cou plan --help
Usage: cou plan [options]
Show the steps COU will take to upgrade the cloud to the next release.
If upgrade-group is unspecified, plan upgrade for the whole cloud.
Options:
-h, --help Show this help message and exit.
--model MODEL_NAME Set the model to operate on.
If not set, the currently active Juju model will be used.
--backup, --no-backup
Include database backup step before cloud upgrade.
Default to enabling database backup.
--force Force the plan/upgrade of non-empty hypervisors.
--verbose, -v Increase logging verbosity in STDOUT.
Multiple 'v's yield progressively more detail (up to 3).
Note that by default the logfile will not include standard logs
from juju and websockets, as well as debug logs from all other
modules. To also include the debug level logs from juju and
websockets modules, use the maximum verbosity.
--quiet, -q Disable output in STDOUT.
Upgrade groups:
{control-plane,data-plane,hypervisors}
Run 'cou plan <upgrade-group> -h' for more info about an upgrade group.
control-plane Show the steps for upgrading the control-plane components.
data-plane Show the steps for upgrading all data-plane components.
This is possible only if control-plane has been fully upgraded,
otherwise an error will be thrown.
hypervisors Show the steps for upgrading machines with nova-compute and
colocated services. This is possible only if control-plane
has been fully upgraded, otherwise an error will be thrown.
By default, COU plans upgrade for the entire OpenStack cloud with cou plan. However, the upgrade process can be tailored to target a specific group through a sub-command for more granular control. For further details, please see the Upgrade Groups section.
Upgrade¶
The upgrade command will implicitly generate a plan before moving onto the actual upgrade phase. Refer to the output below for a description of all available options.
user@host:~$
cou upgrade --help
Usage: cou upgrade [options]
Run the cloud upgrade.
If upgrade-group is unspecified, upgrade the whole cloud.
Options:
-h, --help Show this help message and exit.
--model MODEL_NAME Set the model to operate on.
If not set, the currently active Juju model will be used.
--backup, --no-backup
Include database backup step before cloud upgrade.
Default to enabling database backup.
--force Force the plan/upgrade of non-empty hypervisors.
--verbose, -v Increase logging verbosity in STDOUT.
Multiple 'v's yield progressively more detail (up to 3).
Note that by default the logfile will not include standard logs
from juju and websockets, as well as debug logs from all other
modules. To also include the debug level logs from juju and
websockets modules, use the maximum verbosity.
--quiet, -q Disable output in STDOUT.
--auto-approve Automatically approve and continue with each upgrade step without prompt.
Upgrade group:
{control-plane,data-plane,hypervisors}
Run 'cou upgrade <upgrade-group> -h' for more info about an upgrade group
control-plane Run upgrade for the control-plane components.
data-plane Upgrade all data-plane components.
This is possible only if control-plane has been fully upgraded,
otherwise an error will be thrown.
hypervisors Upgrade machines with nova-compute and colocated services.
This is possible only if control-plane has been fully upgraded,
otherwise an error will be thrown.
By default COU upgrades the entire OpenStack cloud with cou upgrade. However, the upgrade process can be tailored to target a specific group through a sub-command for more granular control. For further details, please see the Upgrade Groups section.
Upgrade Groups¶
In COU, users can choose to selectively target only certain components in OpenStack cloud for planning and executing upgrades, grouped by their roles. The available upgrade groups are control-plane, data-plane, and hypervisors.
The options available for control-plane upgrade are:
user@host:~$
cou upgrade control-plane --help
Usage: cou upgrade control-plane [options]
Run upgrade for the control-plane components.
Options:
-h, --help Show this help message and exit.
--model MODEL_NAME Set the model to operate on.
If not set, the currently active Juju model will be used.
--backup, --no-backup
Include database backup step before cloud upgrade.
Default to enabling database backup.
--force Force the plan/upgrade of non-empty hypervisors.
--verbose, -v Increase logging verbosity in STDOUT.
Multiple 'v's yield progressively more detail (up to 3).
Note that by default the logfile will not include standard logs
from juju and websockets, as well as debug logs from all other
modules. To also include the debug level logs from juju and
websockets modules, use the maximum verbosity.
--quiet, -q Disable output in STDOUT.
--auto-approve Automatically approve and continue with each upgrade step without prompt.
The available options for a data-plane upgrade align closely with those offered for a control-plane upgrade.
user@host:~$
cou upgrade data-plane --help
Usage: cou upgrade data-plane [options]
Upgrade all data-plane components.
This is possible only if control-plane has been fully upgraded,
otherwise an error will be thrown.
Options:
-h, --help Show this help message and exit.
--model MODEL_NAME Set the model to operate on.
If not set, the currently active Juju model will be used.
--backup, --no-backup
Include database backup step before cloud upgrade.
Default to enabling database backup.
--force Force the plan/upgrade of non-empty hypervisors.
--verbose, -v Increase logging verbosity in STDOUT.
Multiple 'v's yield progressively more detail (up to 3).
Note that by default the logfile will not include standard logs
from juju and websockets, as well as debug logs from all other
modules. To also include the debug level logs from juju and
websockets modules, use the maximum verbosity.
--quiet, -q Disable output in STDOUT.
--auto-approve Automatically approve and continue with each upgrade step without prompt.
For upgrading hypervisors, in addition to the common options also found in data-plane upgrades, users can specify either –machine or –az to narrow the upgrade to a particular subset of nodes.
user@host:~$
cou upgrade hypervisors --help
Usage: cou upgrade hypervisors [options]
Upgrade machines with nova-compute and colocated services.
This is possible only if control-plane has been fully upgraded,
otherwise an error will be thrown.
Note that only principal applications colocated with nova-compute units
that support action-managed upgrades are within the scope of this command.
Other principal applications (e.g. ceph-osd) and subordinates
can be upgraded via the data-plane subcommand.
Options:
-h, --help Show this help message and exit.
--model MODEL_NAME Set the model to operate on.
If not set, the currently active Juju model will be used.
--backup, --no-backup
Include database backup step before cloud upgrade.
Default to enabling database backup.
--force Force the plan/upgrade of non-empty hypervisors.
--verbose, -v Increase logging verbosity in STDOUT.
Multiple 'v's yield progressively more detail (up to 3).
Note that by default the logfile will not include standard logs
from juju and websockets, as well as debug logs from all other
modules. To also include the debug level logs from juju and
websockets modules, use the maximum verbosity.
--quiet, -q Disable output in STDOUT.
--machine MACHINES, -m MACHINES
Specify machine id(s) to upgrade.
This option accepts a single machine id as well as a stringified
comma-separated list of ids, and can be repeated multiple times.
This option cannot be used together with [--availability-zone/--az].
--availability-zone AVAILABILITY_ZONES, --az AVAILABILITY_ZONES
Specify Juju availability zone(s) to upgrade.
This option accepts a single availability zone as well as a
stringified comma-separated list of AZs, and can be repeated
multiple times. This option cannot be used together with
[--machine/-m]
--auto-approve Automatically approve and continue with each upgrade step without prompt.