Optimization components

The Optimize service (watcher) components work together to analyze metrics, create optimization strategies, and run action plans. The Optimize service architecture enables the service to continuously monitor your infrastructure and recommend improvements to resource utilization.

The Red Hat OpenStack Services on OpenShift (RHOSO) Optimize service (watcher) components are hosted on the Red Hat OpenShift Container Platform (RHOCP) worker nodes that host the RHOSO control plane. The Optimize service consists of the following components:

Optimize service (watcher) components

AMQP bus
Handles internal asynchronous communications between the different watcher components.
Data sources
Stores the metrics related to the cluster. Prometheus, an open source, time series database is the primary data source for watcher.
Watcher API
Implements the REST API provided by watcher to external users through a CLI, a Dashboard (horizon) plugin, and the Python SDK.
Watcher applier
Manages the execution of the action plan built by the watcher decision engine. Taskflow is the default workflow engine for watcher.
Watcher CLI
Used to interact with the watcher components.
Watcher dashboard
Used to interact with the watcher components through the Dashboard (horizon).
Watcher database

Stores all the watcher objects, used for resource optimization in a RHOSO environment:

  • Goals
  • Strategies
  • Audit templates
  • Audits
  • Action plans
  • Efficacy indicators via the action plan API.
  • Actions
Watcher Decision Engine
Responsible for creating a set of potential optimization Actions to fulfill the goal of an audit.