watcher/doc/source/strategies/zone_migration.rst

5.3 KiB

Zone migration

Synopsis

display name: Zone migration

goal: hardware_maintenance

watcher.decision_engine.strategy.strategies.zone_migration.ZoneMigration

Requirements

Metrics

None

Cluster data model

Default Watcher's Compute cluster data model:

watcher.decision_engine.model.collector.nova.NovaClusterDataModelCollector

Storage cluster data model is also required:

watcher.decision_engine.model.collector.cinder.CinderClusterDataModelCollector

Actions

Default Watcher's actions:

action description
migrate

watcher.applier.actions.migration.Migrate

volume_migrate

watcher.applier.actions.volume_migration.VolumeMigrate

Planner

Default Watcher's planner:

watcher.decision_engine.planner.weight.WeightPlanner

Configuration

Strategy parameters are:

parameter type default Value description
compute_nodes array None Compute nodes to migrate.
storage_pools array None Storage pools to migrate.

parallel_total

integer

6

The number of actions to be run in parallel in total.

parallel_per_node

integer

2

The number of actions to be run in parallel per compute node.

parallel_per_pool

integer

2

The number of actions to be run in parallel per storage pool.

priority

object

None

List prioritizes instances and volumes.

with_attached_volume

boolean

False

False: Instances will migrate after all volumes migrate. True: An instance will migrate after the attached volumes migrate.

The elements of compute_nodes array are:

parameter type default Value description

src_node

string

None

Compute node from which instances migrate(mandatory).

dst_node

string

None

Compute node to which instances migrate.

The elements of storage_pools array are:

parameter type default Value description

src_pool

string

None

Storage pool from which volumes migrate(mandatory).

dst_pool

string

None

Storage pool to which volumes migrate.

src_type string

None

Source volume type(mandatory).

dst_type

string

None

Destination volume type (mandatory).

The elements of priority object are:

parameter type default Value description
project array None Project names.
compute_node array None Compute node names.
storage_pool array None Storage pool names.

compute

enum

None

Instance attributes. ["vcpu_num", "mem_size", "disk_size", "created_at"]

storage

enum

None

Volume attributes. ["size", "created_at"]

Efficacy Indicator

watcher.decision_engine.goal.efficacy.specs.HardwareMaintenance.get_global_efficacy_indicator

Algorithm

For more information on the zone migration strategy please refer to: http://specs.openstack.org/openstack/watcher-specs/specs/queens/implemented/zone-migration-strategy.html

How to use it ?

$ openstack optimize audittemplate create \
  at1 hardware_maintenance --strategy zone_migration

$ openstack optimize audit create -a at1 \
  -p compute_nodes='[{"src_node": "s01", "dst_node": "d01"}]'

None