Client for resource optimization service for OpenStack.
Go to file
Zuul 56e47c38e2 Merge "Remove untested lower-constraints.txt" 2024-03-02 08:33:27 +00:00
doc remove unicode from code 2021-01-03 16:31:39 +08:00
releasenotes/notes Drop python 2.7 support and testing 2019-10-30 04:34:43 +00:00
tools push initial version 2015-06-04 14:59:34 +02:00
watcherclient Remove six 2024-01-28 16:59:28 +09:00
.coveragerc Add openstack-cover-jobs for watcherclient 2019-03-12 14:05:46 +08:00
.gitignore Update .gitignore to ignore cover and .coverage* 2019-03-18 11:39:15 +08:00
.gitreview OpenDev Migration Patch 2019-04-19 19:45:00 +00:00
.stestr.conf Add openstack-cover-jobs for watcherclient 2019-03-12 14:05:46 +08:00
.zuul.yaml Switch to 2023.1 Python3 unit tests and generic template name 2022-09-19 11:20:20 +00:00
CONTRIBUTING.rst Update the documentation link for doc migration 2017-07-24 13:55:17 +08:00
HACKING.rst Update the documentation link for doc migration 2017-07-24 13:55:17 +08:00
LICENSE Add license file 2016-07-04 18:04:10 +00:00
README.rst Replace URLs with URLs 2019-04-28 09:36:25 +00:00
requirements.txt Remove six 2024-01-28 16:59:28 +09:00
setup.cfg Update python classifier in setup.cfg 2024-01-09 19:22:07 -08:00 Cleanup py27 support 2020-04-04 14:27:51 +02:00
test-requirements.txt Remove six 2024-01-28 16:59:28 +09:00
tox.ini Fix tox error 2023-02-07 10:38:34 +00:00


Team and repository tags



Client for resource optimization service for OpenStack.

OpenStack Watcher provides a flexible and scalable resource optimization service for multi-tenant OpenStack-based clouds. Watcher provides a complete optimization loop-including everything from a metrics receiver, complex event processor and profiler, optimization processor and an action plan applier. This provides a robust framework to realize a wide range of cloud optimization goals, including the reduction of data center operating costs, increased system performance via intelligent virtual machine migration, increased energy efficiency and more!


Install the prerequisite packages

On Ubuntu (tested on 14.04-64)

sudo apt-get install python-dev libssl-dev python-pip git-core libmysqlclient-dev libffi-dev

On Fedora-based distributions e.g., Fedora/RHEL/CentOS/Scientific Linux (tested on CentOS 6.5)

sudo yum install python-virtualenv openssl-devel python-pip git gcc libffi-devel mysql-devel postgresql-devel

On openSUSE-based distributions (SLES 12, openSUSE 13.1, Factory or Tumbleweed)

sudo zypper install gcc git libmysqlclient-devel libopenssl-devel postgresql-devel python-devel python-pip

Install the Watcher client

You can install the Watcher CLI with the following command:

sudo pip install python-watcherclient

You can also use the OpenStack client with Watcher (our watcher plugin for OpenStack client is included in the python-watcherclient package). To install it, you have just to run this command:

sudo pip install python-openstackclient


Create a creds file containing your OpenStack credentials:

export OS_AUTH_URL=http://<your-keystone-server>:5000/v3
export OS_PROJECT_DOMAIN_ID=default
export OS_USER_DOMAIN_ID=default
export OS_USERNAME=admin
export OS_PASSWORD=<your-password>
export OS_PROJECT_NAME=<your-project-name>

Source these credentials into your current shell session:

# source creds

You should be able to launch the following command which gets the list of previously created Audit Templates:

# watcher audittemplate list


# openstack optimize audittemplate list
| UUID                           | Name | Goal                 | Strategy |

You can view the entire list of available Watcher commands and options using this command:

# watcher help


# openstack help optimize


If any watcher command fails, you can obtain more details with the --debug option :

# watcher --debug audittemplate list


# openstack --debug optimize audittemplate list

Install the openstack CLI :

# pip install python-openstackclient

Make sure that your Openstack credentials are correct. If so, you should be able to verify that the watcher user has been declared in your Openstack keystone :

# openstack user list

and that the watcher endpoints have been declared as well :

# openstack endpoint list