...
Table of Contents | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Herramientas de Monitorización en Plataforma
Desde esta release la monitorización de Plataforma está basada en el despliegue de Grafana + Grafana Mimir + Prometheus Operator sobre un entorno con Kubernetes.
Vease Veamos de manera detallada para que se usa cada componente:
...
Por lo tanto, Prometheus Operator es el encargado de recoger las metricas métricas de los diferentes componentes de Plataforma → Grafana Mimir actua actúa como BBDD y almacena esas metricas métricas recogidas → Grafana actua actúa de consultor y visualizador de las metricas métricas en dashboard o simplemente en consultas simples, adema de tener otras opciones como alertas.
El despliegue de las herramientas se hace mediante ArgoCD que es una herramienta de entrega continua (CD) para Kubernetes que automatiza la implementación y gestión de aplicaciones, utilizando Git como fuente de verdad para la configuración y el estado deseado.
Prometheus Operator
En la parte de Prometheus Operator unicamente sera únicamente será necesario el despliegue del chart y la configuracion configuración de los diferentes Service Monitor:
...
Desde el cluster de Kubernetes:
Cluster → Monitoring → Monitors → Service Monitor
...
En la parte de configuracion de Prometheus Operator, a la hora de desplegar, habria que indicar donde se quieren guardar esas metricas → Grafana Mimir
Grafana Mimir
Grafana Mimir es una plataforma de almacenamiento y gestión de métricas a gran escala, diseñada para ofrecer alto rendimiento y escalabilidad en la recolección y consulta de datos de monitoreo en entornos distribuidosdistribuídos.
Actua Actúa como base de dato de las metricas métricas y se despliega mediante un chart. En este caso solo se configuran parametros parámetros como numero de replicas que se desea, si hay varias zonas de replicacion replicación (cluster con HA), time-to-live para las metricas métricas almacenadas (por ejemplo 30 diasdías) etc.
Grafana
Datasource
Un datasource es una fuente de datos externa (como bases de datos, sistemas de monitoreo o APIs) que Grafana usa para consultar y visualizar métricas o información. Ejemplos comunes incluyen Prometheus, InfluxDB, MySQL y Elasticsearch.
...
Grafana → Connections → Data source
...
Dashboards
Un dashboard en Grafana es una interfaz visual que muestra datos en tiempo real mediante gráficos, tablas y otros widgets, permitiendo monitorear y analizar métricas de sistemas y aplicaciones.
...
Los dashboard configurados pueden estar persistidos en la base de datos de Grafana o directamente inyectarlos como yaml a través de configMaps en kuberentes Kubernetes en el propio chart, como es el caso.
A través de la interfaz de grafana Grafana se podran podrán visualizar los diferentes dashboard que se tenga configurados:
...
BBDD
MySQL/MariDB
MongoDB
PosgreSQL
Elasticsearch/Opensearch
Plataforma
JVM/JMX (todos los componentes)
Keycloak
Kafka
Streamsets
FlowEngine NodeJS
Presto
MiniO
NGINX
Kubernetes
Deployments / Pods
Nodes
NGINX Controller
Panel de dashboards:
...
Metricas Métricas de ejemplo:
...
Explore
El apartado ‘explore’ es una herramienta que permite explorar y consultar datos de manera interactiva y ad-hoc. Sirve para realizar consultas rápidas y análisis de métricas o logs en tiempo real, sin necesidad de configurar dashboards completos. Es útil para depurar problemas y obtener insights instantáneos de las fuentes de datos conectadas.
Grafana → Explore
...
Alertas
La principal novedad respecto a la monitorización que ya se ofrecía con Plataforma, además de la estandarización de las métricas y los dashboards de todos los módulos, es la incorporación de alertas a través de Grafana Alerts.
Grafana Alerts es una funcionalidad que permite configurar notificaciones automáticas basadas en umbrales o condiciones de métricas, alertando a los usuarios sobre eventos o problemas en tiempo real. Las notificaciones se podran enviaran a través de email o Teams ademas de muchas otras opciones.
...
Configurar alertas: Definir condiciones basadas en métricas específicas.
Establecer umbrales: Definir valores que, al superarse, activan una alerta.
Notificaciones: Enviar alertas a diferentes canales (correo, Slack, PagerDuty, etc.).
Alertas múltiples: Crear varias alertas para un mismo panel o gráfico.
Silenciar alertas: Configurar periodos en los que no se enviarán notificaciones.
Historial de alertas: Consultar y gestionar las alertas pasadas.
Escalado de alertas: Configurar alertas en función de la gravedad y escalarlas a distintos equipos o personas.
Condiciones complejas: Establecer combinaciones de condiciones para activar alertas (ej., combinando varios umbrales o métricas).
Puntos de contacto
Para poder ver o configurar los diferentes puntos de contacto (email, teams…):
Grafana → Alerting → Contact points
...
...
Visualización de alertas
Para poder ver o configurar las diferentes alertas en el sistema de Grafana:
...
En el siguiente ejemplo, se puede apreciar los diferentes grupos de alertas que hay configurados, como por ejemplo alertas de health check para saber si estan caidas están caídas las bases de datos a las que se conecta Plataforma:
...
En el siguiente ejemplo se puede ver la alerta que se recibe via vía email cuando un microservicio esta caidocaído:
...
Explore
El apartado ‘explore’ es una herramienta que permite explorar y consultar datos de manera interactiva y ad-hoc. Sirve para realizar consultas rápidas y análisis de métricas o logs en tiempo real, sin necesidad de configurar dashboards completos. Es útil para depurar problemas y obtener insights instantáneos de las fuentes de datos conectadas.
Grafana → Explore
...