[release-announce] [watcher] python-watcher 1.7.0 (queens)

no-reply at openstack.org no-reply at openstack.org
Wed Jan 24 18:39:47 UTC 2018


We joyfully announce the release of:

python-watcher 1.7.0: OpenStack Watcher provides a flexible and
scalable resource optimization service for multi-tenant OpenStack-
based clouds.

This release is part of the queens release series.

The source is available from:

    https://github.com/openstack/watcher

Download the package from:

    https://tarballs.openstack.org/watcher/

Please report issues through launchpad:

    https://bugs.launchpad.net/watcher

For more details, please see below.

1.7.0
^^^^^

New Features

* Adds audit scoper for storage data model, now watcher users can
  specify audit scope for storage CDM in the same manner as compute
  scope.

* Adds baremetal data model in Watcher

* Added a way to check state of strategy before audit's execution.
  Administrator can use "watcher strategy state <strategy_name>"
  command to get information about metrics' availability, datasource's
  availability and CDM's availability.

* Added storage capacity balance strategy.

* Added strategy "Zone migration" and it's goal "Hardware
  maintenance". The strategy migrates many instances and volumes
  efficiently with minimum downtime automatically.

Changes in python-watcher 1.6.0..1.7.0
--------------------------------------

16e7d9c Add baremetal strategy validation
0c66fe2 Strategy requirements
1dae83d Add zone migration strategy
701b258 Fix workload_stabilization unavailable nodes and instances
f7fcdf1 Update unreachable link
47ba6c0 Updated from global requirements
27e8875 Fix compute api ref link
891f6bc Adapt workload_balance strategy to multiple datasource backend
5dd6817 Adapt noisy_neighbor strategy to multiple datasource backend
7cdcb47 Adapt basic_consolidation strategy to multiple datasource backend
6d03c4c check audit name length
bcc129c Audit scoper for storage CDM
1a48a7f Imported Translations from Zanata
42a3886 Update link address
3430493 Fix tempest devstack error
f5bcf9d Add storage capacity balance Strategy
3c8caa3 Updated from global requirements
ce196b6 Adapt workload_stabilization strategy to new datasource backend
42130c4 Updated from global requirements
1a8639d Update pike install supermark to queens
1702fe1 Add the title of API Guide
354ebd3 Fix compute scope test bug
54da2a7 Add baremetal data model
bd79882 Set apscheduler logs to WARN level
960c50b Fix configuration doc link
9411f85 update audit API description
b4370f0 update action API description
96fa7f3 use current weighted sd as min_sd when starting to simulate migrations
070aed7 correct audit parameter typo
6f27275 Updated from global requirements
95548af Fix watcher audit list command
cdc847d check actionplan state when deleting actionplan
cbd6d88 TrivialFix: remove redundant import alias
a8fa969 check audit state when deleting audit
80ee4b2 reset job interval when audit was updated
ec0c359 Updated from global requirements
3b6bef1 Fix releasenotes build
c6afa7c Update getting scoped storage CDM
9ccd17e Updated from global requirements
be56441 Fix 'unable to exclude instance'
0242d33 Register default policies in code
c38dc98 listen to 'compute.instance.rebuild.end' event
4ce1a90 Updated from global requirements
02163d6 bug fix remove volume migration type 'cold'
d91f0bf Add and identify excluded instances in compute CDM
e401cb7 Add Datasource Abstraction
fa31341 'get_volume_type_by_backendname' returns a list


Diffstat (except docs and test files)
-------------------------------------

devstack/lib/watcher                               |  24 +-
devstack/settings                                  |   3 +
.../watcher-policy-generator.conf                  |   3 +
etc/watcher/policy.json                            |  45 -
...er-for-storage-data-model-cdccc803542d22db.yaml |   5 +
...tal-data-model-in-watcher-3023453a47b61dab.yaml |   4 +
...eck-strategy-requirements-66f9e9262412f8ec.yaml |   6 +
.../storage-workload-balance-0ecabbc1791e6894.yaml |   4 +
.../zone-migration-strategy-10f7656a2a01e607.yaml  |   6 +
releasenotes/source/conf.py                        |   1 -
.../locale/en_GB/LC_MESSAGES/releasenotes.po       | 215 ++++-
.../source/locale/fr/LC_MESSAGES/releasenotes.po   |  33 -
requirements.txt                                   |  14 +-
setup.cfg                                          |  10 +
test-requirements.txt                              |   6 +-
tox.ini                                            |   4 +
watcher/api/controllers/v1/action.py               |   6 +-
watcher/api/controllers/v1/action_plan.py          |   9 +
watcher/api/controllers/v1/audit.py                |  36 +-
watcher/api/controllers/v1/strategy.py             |  22 +
watcher/applier/actions/volume_migration.py        |  34 +-
watcher/cmd/sync.py                                |   2 +-
watcher/common/cinder_helper.py                    |  31 +-
watcher/common/exception.py                        |  24 +
watcher/common/ironic_helper.py                    |  49 ++
watcher/common/nova_helper.py                      |   5 +-
watcher/common/policies/__init__.py                |  37 +
watcher/common/policies/action.py                  |  57 ++
watcher/common/policies/action_plan.py             |  79 ++
watcher/common/policies/audit.py                   |  90 ++
watcher/common/policies/audit_template.py          |  90 ++
watcher/common/policies/base.py                    |  32 +
watcher/common/policies/goal.py                    |  57 ++
watcher/common/policies/scoring_engine.py          |  66 ++
watcher/common/policies/service.py                 |  57 ++
watcher/common/policies/strategy.py                |  68 ++
watcher/common/policy.py                           |  25 +-
watcher/common/service.py                          |   3 +-
watcher/datasource/base.py                         | 120 +++
watcher/datasource/ceilometer.py                   |  93 +-
watcher/datasource/gnocchi.py                      | 119 ++-
watcher/datasource/manager.py                      |  78 ++
watcher/datasource/monasca.py                      |  95 +-
.../sqlalchemy/alembic/versions/a86240e89a29_.py   |  34 +
watcher/decision_engine/audit/continuous.py        |  23 +-
watcher/decision_engine/goal/__init__.py           |   5 +-
.../decision_engine/goal/efficacy/indicators.py    | 115 +++
watcher/decision_engine/goal/efficacy/specs.py     |  83 ++
watcher/decision_engine/goal/goals.py              |  25 +
watcher/decision_engine/manager.py                 |   5 +-
watcher/decision_engine/model/collector/cinder.py  |  84 +-
watcher/decision_engine/model/collector/ironic.py  |  97 ++
watcher/decision_engine/model/collector/nova.py    |   1 +
watcher/decision_engine/model/element/__init__.py  |   4 +-
.../model/element/baremetal_resource.py            |  33 +
watcher/decision_engine/model/element/instance.py  |   3 +
watcher/decision_engine/model/element/node.py      |  17 +-
watcher/decision_engine/model/model_root.py        |  90 +-
watcher/decision_engine/model/notification/nova.py |  27 +
watcher/decision_engine/rpcapi.py                  |   4 +
watcher/decision_engine/scope/baremetal.py         |  46 +
watcher/decision_engine/scope/compute.py           |  29 +-
watcher/decision_engine/scope/storage.py           | 165 ++++
.../strategy/strategies/__init__.py                |   9 +-
.../decision_engine/strategy/strategies/base.py    | 112 ++-
.../strategy/strategies/basic_consolidation.py     | 132 +--
.../strategy/strategies/noisy_neighbor.py          |  54 +-
.../strategy/strategies/outlet_temp_control.py     |   2 +
.../strategies/storage_capacity_balance.py         | 411 +++++++++
.../strategy/strategies/uniform_airflow.py         |   2 +
.../strategies/vm_workload_consolidation.py        |   3 +
.../strategy/strategies/workload_balance.py        |  71 +-
.../strategy/strategies/workload_stabilization.py  | 131 +--
.../strategy/strategies/zone_migration.py          | 975 +++++++++++++++++++++
watcher/locale/en_GB/LC_MESSAGES/watcher.po        | 773 ++++++++++++++++
.../decision_engine/audit/test_audit_handlers.py   |  34 +
.../decision_engine/model/ceilometer_metrics.py    |  31 +-
.../model/data/ironic_scenario_1.xml               |  12 +
.../data/scenario_1_with_1_node_unavailable.xml    |  50 ++
.../decision_engine/model/faker_cluster_state.py   |  58 +-
.../scenario3_legacy_instance-rebuild-end.json     |  59 ++
.../notification/test_cinder_notifications.py      |   6 +-
.../model/notification/test_nova_notifications.py  |  24 +
.../strategies/test_basic_consolidation.py         |  12 +-
.../strategy/strategies/test_noisy_neighbor.py     |  24 +-
.../strategies/test_storage_capacity_balance.py    | 245 ++++++
.../strategy/strategies/test_strategy_endpoint.py  |  66 ++
.../strategy/strategies/test_workload_balance.py   |  40 +-
.../strategies/test_workload_stabilization.py      |  68 +-
.../strategy/strategies/test_zone_migration.py     | 719 +++++++++++++++
115 files changed, 7095 insertions(+), 701 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index 909cb1f..f4337f5 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -13 +13 @@ croniter>=0.3.4 # MIT License
-oslo.concurrency>=3.20.0 # Apache-2.0
+oslo.concurrency>=3.25.0 # Apache-2.0
@@ -19 +19 @@ oslo.i18n>=3.15.3 # Apache-2.0
-oslo.log>=3.30.0 # Apache-2.0
+oslo.log>=3.36.0 # Apache-2.0
@@ -21 +21 @@ oslo.messaging>=5.29.0 # Apache-2.0
-oslo.policy>=1.23.0 # Apache-2.0
+oslo.policy>=1.30.0 # Apache-2.0
@@ -24,2 +24,2 @@ oslo.serialization!=2.19.1,>=2.18.0 # Apache-2.0
-oslo.service>=1.24.0 # Apache-2.0
-oslo.utils>=3.31.0 # Apache-2.0
+oslo.service!=1.28.1,>=1.24.0 # Apache-2.0
+oslo.utils>=3.33.0 # Apache-2.0
@@ -34 +34 @@ python-ceilometerclient>=2.5.0 # Apache-2.0
-python-cinderclient>=3.2.0 # Apache-2.0
+python-cinderclient>=3.3.0 # Apache-2.0
@@ -45 +45 @@ stevedore>=1.20.0 # Apache-2.0
-taskflow>=2.7.0 # Apache-2.0
+taskflow>=2.16.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index c8bd6e4..9d4053d 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -10 +10 @@ mock>=2.0.0 # BSD
-oslotest>=1.10.0 # Apache-2.0
+oslotest>=3.2.0 # Apache-2.0
@@ -17,2 +17,2 @@ testtools>=2.2.0 # MIT
-openstackdocstheme>=1.17.0 # Apache-2.0
-sphinx>=1.6.2 # BSD
+openstackdocstheme>=1.18.1 # Apache-2.0
+sphinx!=1.6.6,>=1.6.2 # BSD






More information about the Release-announce mailing list