Consideremos el concepto de monitorear Kubernetes, familiaricémonos con la herramienta Prometheus y hablemos sobre alertas.
El tema del seguimiento es voluminoso, no se puede analizar en un artĂculo. El propĂłsito de este texto es proporcionar una descripciĂłn general de las herramientas, conceptos y enfoques.
El material del artĂculo es un extracto de una conferencia abierta de la escuela Slurm . Si desea completar la capacitaciĂłn completa, regĂstrese en el curso sobre Infraestructura de monitoreo y registro en Kubernetes .
Qué se supervisa en un clúster de Kubernetes
Servidores fĂsicos. Si se implementa un clĂşster de Kubernetes en sus servidores, debe monitorear su estado. Esta tarea está a cargo de Zabbix; si trabaja con Ă©l, entonces no necesita negarse, no habrá conflictos. Es Zabbix quien monitorea el estado de nuestros servidores.
Pasemos al monitoreo a nivel de clĂşster.
Componentes del plano de control: API, Scheduler y otros. Como mĂnimo, debe monitorear que la API de los servidores o etcd sea mayor que 0. Etcd puede proporcionar muchas mĂ©tricas: sobre los discos en los que gira, sobre el estado de su clĂşster etcd, y otras.
Docker : . Docker, , , .
DNS. DNS, Discovery, . , , DNS . CoreDNS.
Ingress. ( Ingress Controller) .
— , .
, , , . : , ; 10, 2. . . , : -? , , — . .
, -: , .
Prometheus
— Prometheus. , Prometheus . , « Kubernetes», Prometheus.
, Prometheus: Helm Prometheus Prometheus Operator.
- Prometheus. , ConfigMap — , , , .
- Prometheus Operator , , : , , .
, Prometheus. , : , . Prometheus Operator , .
Prometheus Kubernetes: API Server .
Prometheus , . , Prometheus , , . . , PostgreSQL Exporter: PostgreSQL Prometheus, Prometheus .
Prometheus
Prometheus Server — , Prometheus. .
time series database (TSDB). TSDB — , Go, Prometheus. , .
TSDB
Prometheus . 15 . , : TSDB , . Prometheus .
, , . TSDB « », . , , InfluxDB, ClickHouse . ClickHouse.
Prometheus Server pull: , . : « API Server», n- .
(job cron job), , Pushgateway. : job , , Pushgateway . Prometheus Pushgateway.
Prometheus — Alertmanager. — alerting rules. , alert , API 0. , alert alert manager . alert manager : - , , . Slack, Telegram, email .
- Prometheus — Discovering. Prometheus , . « IP-, — », , (targets — ). Prometheus , , , .
Kubernetes, : 10 , 3. IP- , , — Discovering .
Prometheus PromQL. , .
https://prometheus.io/docs/prometheus/latest/querying/basics/
container_memory_usage_bytes
container_memory_usage_bytes / 1024 / 1024
sum(container_memory_usage_bytes) / 1024 / 1024
100 - avg by (instance) (rate(node_cpu_seconds_total{mode="idle"}[5m]) * 100)
- Prometheus
Prometheus , -. .
Expression PromQL.
Alerts — alerting rules, :
- inactive — , , ;
- pending — , , . , : , ;
- firing — , .
Status , Prometheus. (targets), .
Prometheus Kubernetes.
Grafana
- Prometheus , . , Prometheus Grafana. .
Prometheus Grafana , : GRAFANA SUPPORT FOR PROMETHEUS, .
: Grafana Loki .
: , Kubernetes, Southbridge, .