ADQM Control overview
Features
Arenadata QuickMarts Control (ADQM Control) is an observability platform for Arenadata QuickMarts (ADQM) clusters that allows you to significantly simplify the administration and optimize the operation of ADQM databases.
Key objectives of ADQM Control are the following:
-
Monitor the health of an ADQM cluster. ADQM Control can work with multiple ADQM clusters simultaneously.
-
Collect and analyze system metrics and metrics of ADQM services.
-
Visualize the states of ADQM cluster hosts as a heat map.
-
Generate alerts. An alert is a notification message that describes a problem detected in an ADQM cluster and provides recommendations how to fix it. ADQM Control groups alerts by triggers that cause them:
-
threshold-based alerts that are generated when some metric in the system has reached the specified threshold;
-
event-based alerts that are generated when some event has happened in the system.
In the ADQM Control user interface, you can specify criteria for generating alerts of different types (for example, configure thresholds, set timeouts) or disable tracking of some events.
-
NOTE
ADQM Control requires a fully deployed ADQM cluster with the monitoring service installed.
|
Architecture
The high-level architecture view of ADQM Control is shown below.
Main points of the scheme:
-
ADQM Control is the main service that implements the full functionality of ADQM Control. It includes the following components:
-
Agents. The Alert Generator service reads metrics from a Prometheus instance of an ADQM cluster, generates alerts if necessary (taking into account criteria and timeouts for creating alerts specified in ADQM Control settings), sends alerts to Alert Manager.
-
Alert Manager. The Prometheus Alert Manager service handles alerts received from Alert Generator (filters alerts, mutes alerts of some type, adds additional labels, etc.) and resends processed alerts to Alert Receiver.
-
Alert Receiver. The Alert Receiver service receives processed alerts from Alert Manager and stores them in the alert database.
-
Backend. The Backend service communicates with the ADQM Control web interface (Frontend in the scheme) via REST API — handles user requests from the frontend, saves specified ADQM Control settings to ZooKeeper, retrieves alerts from the alert database to transmit them to the web interface.
The Agents and Alert Receiver components also include the conf.d service, which monitors ADQM Control settings stored in ZooKeeper — if they change, it updates the configuration file of the Alert Generator/Alert Receiver service, and restarts the service.
-
-
ZooKeeper is the ZooKeeper coordination service for storing user-defined settings of ADQM Control. To set up ZooKeeper for ADQM Control, you can:
-
install the Zookeeper service in the ADQM Control cluster;
-
use an external ZooKeeper cluster.
-
-
Alert storage is a PostgreSQL database for storing alerts. You can set up it in one of the following ways:
-
install the Arenadata PostgreSQL service in the ADQM Control cluster;
-
specify an external PostgreSQL cluster using ADQM Control configuration parameters.
-