
/kubernetes/cluster_name). Erebus is responsible for forwarding these requests to the kube-apiserver of the corresponding monitoring cluster./platform/monitoring.alauda.io/v1beta1) to the ALB, which ultimately forwards them to the courier-api component (which retrieves the monitoring address based on the feature monitoring). The courier-api then sends the request to port 11780 of the ALB in the corresponding monitoring cluster to query monitoring data from the prometheus/vm instances.kubectl -n cpaas-system get cm | grep indicators). It sends requests to the monitoring components of each cluster to retrieve data, parses the results, and returns them to the requester. For custom metrics, it directly passes the expressions through to the monitoring components of each cluster, retrieves the data, parses the results, and returns them to the requester.ops-core-plugin performs create, query, update, and delete operations on alert policies, which correspond to operations on the PrometheusRule resources in each cluster. Silence configurations are stored in the annotations of the PrometheusRule.alert-repeat-config (which stores the sending intervals for different alert severity levels).Real-time alert information is derived from the metrics cpaas_active_alerts and cpaas_active_silences generated by the courier-api in the Global cluster. The metrics from courier-api are collected by the Global Prometheus (collected every 15 seconds), then queried, parsed, and displayed via the courier-api's query API.
cpaas_active_alerts is primarily obtained by fetching data from the Alert API of each cluster's Alertmanager and then transforming it.
cpaas_active_silences is primarily obtained by fetching data from the Silence API of each cluster's Alertmanager and then transforming it.
The Global Prometheus collects the metrics from courier-api. The front-end UI component uses the monitoring API of courier-api to query these two metrics from the Global Prometheus and displays the real-time alert data based on the metric data.