AIDA Architecture

AIDA is built adopting a microservices-based architecture.

Figure 1. AIDA architecture

AIDA is composed of two major components: AIDA Exporter and AIDA Engine. Each component contains a number of services:

AIDA Exporter
Exporter
Through IBM Workload Scheduler APIs, exports KPIs metrics from IBM Workload Scheduler (according to OpenMetrics standard) and stores them into AIDA OpenSearch database.

Also, it exports Alert definitions from IBM Workload Scheduler and imports them into OpenSearch.

AIDA Engine
Predictor
Calculates the expected values of each KPI, also considering special days.
Anomaly detection and alert generation
Detects anomalies in KPIs trend by comparing observed KPI data points with expected values, and generates alerts when trigger conditions are met.
Email notification
Sends email notification when alerts are generated.
Orchestrator
Orchestrates KPI prediction and anomaly detection.
UI
AIDA User Interface.
Internal event manager
Manages communication among AIDA services.
Also, AIDA uses:
OpenSearch (an Elasticsearch technology)
To store and analyze data.
Keycloak (optional)
To manage security and user access in AIDA (Docker deployment only). Keycloak is optional. If not deployed, the Dynamic Workload Console user authentication roles will be used.
Nginx
As a reverse proxy for its components.