Overview
The Xloud Resource Optimizer is composed of three collaborating services: the API and Decision Engine (analysis), the Planner (action plan generation), and the Applier (execution). Understanding the architecture helps administrators tune the system, diagnose failures, and integrate custom data sources or strategies.Component Diagram
Components
Decision Engine
Decision Engine
The analytical core. On each audit, the Decision Engine:
- Collects the cluster data model from the Compute API (host inventory, VM placement)
- Fetches time-series metrics from configured data sources (Prometheus, Telemetry)
- Selects the strategy plugin for the requested goal
- Runs the strategy algorithm to identify suboptimal placements
- Passes the resulting recommended actions to the Planner
watcher_decision_engine container on controller nodes.Planner
Planner
Receives the recommended action set from the Decision Engine and applies dependency
ordering — ensuring migrations that depend on free capacity from an earlier migration
execute in the correct sequence.The Planner is embedded in the Decision Engine container and does not run as a
separate service.
Applier
Applier
Executes approved action plans through a Taskflow workflow engine. The Applier:
- Processes actions in priority order
- Handles retries for transient failures
- Updates action state in the database in real time
- Halts execution on non-retriable failures
watcher_applier container on controller nodes.API
API
Exposes the REST API used by the Dashboard and CLI to create audits, view action
plans, and execute or cancel plans.Deployed as:
watcher_api container on controller nodes.Deployment Topology
Controller Nodes
watcher_api — REST API
watcher_decision_engine — Analysis + Planner
watcher_applier — Plan execution
Data Flow: Audit to Execution
Service Configuration File
Configuration file location
| Section | Purpose |
|---|---|
[DEFAULT] | Service identity, RPC transport, action plan expiry |
[watcher_cluster_data_model_collectors] | Data source configuration |
[watcher_strategies.*] | Per-strategy tuning parameters |
[keystone_authtoken] | Xloud Identity authentication |
[database] | Database connection |
Next Steps
Strategy Configuration
Configure and tune optimization strategy plugins.
Data Sources
Connect Prometheus and Telemetry data sources to the Decision Engine.
Scheduling
Automate recurring audits with audit templates and schedules.
Security
Configure RBAC and service account credentials for the Resource Optimizer.