Categoria: Observabilitat
Monitoratge amb Grafana i Prometheus, implantat i operat
Mètriques, registres i alertes que avisen del que importa als vostres usuaris, no de cada pic de CPU, en una plataforma que viu al vostre compte.
- On es munta
- Al vostre compte, a nom vostre
- Còpies
- Amb restauració provada
- Actualitzacions
- Planificades i documentades
En resum
Grafana i Prometheus són eines de codi obert per a recollir mètriques, visualitzar-les i generar alertes; Loki fa el mateix amb els registres. Els implantem al vostre compte amb Alloy o OpenTelemetry com a recol·lector, definim objectius de servei (SLO), configurem Alertmanager perquè les alertes arriben sense soroll a qui toca, creem taulers per servei i vigilem la retenció i el cost.
Quina peça fa què?
Una plataforma de monitoratge no és un tauler bonic: és una cadena que recull dades, les guarda, decideix si alguna cosa va malament i avisa la persona adequada. Si una baula falla, us n’assabenteu per un client.
Prometheus
Recull i guarda mètriques, i avalua les regles d’alerta cada pocs segons.
Loki
Guarda els registres indexant només les seues etiquetes, cosa que el fa barat d’emmagatzemar.
Alloy o OpenTelemetry
Recol·lectors en cada servidor o clúster que envien mètriques, registres i traces.
Alertmanager
Agrupa, encamina, inhibeix i silencia alertes abans d’enviar-les a ningú.
Grafana
Taulers per servei i exploració de mètriques i registres en un mateix lloc.
Comprovació externa
Una prova des de fora que avisa encara que caiga el mateix monitoratge.
Com dissenyem les alertes perquè no facen soroll?
La majoria de les alertes que trobem avisen de causes, com CPU alta o memòria al 80 %, i no de símptomes. El resultat és que sonen sovint, ningú no les mira i la que importa es perd. Ho enfoquem al revés:
Objectius de servei
Definim amb vosaltres què és funcionar bé: per exemple, que el 99,5 % de les peticions responguen sense error. Això és un SLO.
Alertes per consum del marge
S’avisa quan el marge d’error es gasta massa de pressa, no per cada pic aïllat.
Rutes en Alertmanager
Cada alerta va a l’equip i al canal que toca; el que és urgent, a la guàrdia si n’hi ha, i la resta, a una cua de treball.
Agrupació i inhibició
Si cau un servidor, arriba un avís, no quaranta. Si el centre de dades no respon, les alertes dels seus serveis queden inhibides.
Cada alerta porta un enllaç al seu tauler i una nota de què cal comprovar primer. Una alerta sense cap acció possible es lleva.
Quins problemes trobem en el monitoratge que ja existeix?
- Centenars d’alertes que ningú no atén: el canal d’avisos està silenciat des de fa mesos.
- Etiquetes amb massa valors: identificadors d’usuari o de petició com a etiqueta disparen la memòria de Prometheus o l’índex de Loki.
- Registres sense retenció: el disc s’omple de logs que ningú no consulta.
- Taulers fets a mà: només existeixen a la interfície i es perden en reinstal·lar.
- El monitoratge corre al mateix servidor que vigila: si cau, no avisa ningú.
- Res no mesura el que veu l’usuari: tot està en verd i la web no carrega.
Com controlem la retenció i el cost?
En serveis de pagament per ús, el cost creix amb cada host i cada gigabyte de registres. En una pila pròpia el que creix és l’emmagatzematge, i es controla: retenció curta amb tot el detall, dades resumides per a l’històric, emmagatzematge d’objectes per al que és antic i filtres al recol·lector per a no guardar registres que no aporten res. Ho revisem cada mes amb la resta de l’informe.
Què vigilem de cada aplicació?
Cada aplicació té els seus senyals propis. En PostgreSQL, el retard de rèplica i l’arxivat de WAL; en Kafka, el retard dels consumidors; en Kubernetes a Hetzner, el pla de control i els nodes; en GitLab, els runners i el registry; en Keycloak, els inicis de sessió fallits. Si el que voleu és que algú responga de tot això cada mes, encaixa en el SRE com a servei.
I Graylog?
Graylog indexa el text complet dels registres sobre OpenSearch: cerca molt bé, però demana més disc i memòria que Loki, que només indexa etiquetes, i per a la majoria d’equips Loki al costat de Grafana n’hi ha prou. Si cerqueu sovint en el contingut dels registres o ja el teniu, ho expliquem a centralització de logs amb Graylog o OpenSearch.
On ho muntem?
Al vostre compte, al proveïdor que ja feu servir o al que encaixe millor. Si les dades s'han de quedar a la UE, Hetzner i OVHcloud són les opcions europees.
Proveïdors on ho muntem
- Hetzner
- AWS
- Google Cloud
- Azure
- DigitalOcean
- OVH
- Servidor propi
| Proveïdor | Com ho muntem | A tindre en compte |
|---|---|---|
| Hetzner | Prometheus, Loki i Grafana en servidors cloud o al vostre clúster, amb les dades de Loki i l'històric de mètriques en Object Storage de Hetzner. | Sense servei gestionat de monitoratge: ho operem tot nosaltres. Molt econòmic en emmagatzematge. |
| AWS | La pila en EC2 o EKS amb S3 com a emmagatzematge, o Amazon Managed Service for Prometheus i Amazon Managed Grafana. | CloudWatch continua fent falta per a alguns serveis d'AWS; l'integrem com a font de dades. |
| Google Cloud | La pila en GKE amb Cloud Storage, o Google Cloud Managed Service for Prometheus. | Cloud Monitoring es pot consultar des de Grafana. |
| Azure | La pila en AKS amb Blob Storage, o Azure Monitor managed service for Prometheus amb Azure Managed Grafana. | Azure Monitor s'afig com a font de dades en Grafana. |
| DigitalOcean | La pila en Droplets o en DOKS, amb Spaces com a emmagatzematge d'objectes. | Sense servei gestionat equivalent: la muntem i l'operem nosaltres. |
| OVH | La pila en instàncies de Public Cloud o en Managed Kubernetes, amb Object Storage compatible amb S3. | |
| Servidor propi | Prometheus, Loki i Grafana en un servidor de l'oficina o en una màquina virtual. | El vigilant no ha de caure amb el que vigila: afegim una comprovació externa des d'un altre lloc. |
Què inclou
- Prometheus o un magatzem compatible per a mètriques, amb retenció i emmagatzematge a llarg termini definits.
- Loki per a registres, amb etiquetes pensades perquè les cerques siguen ràpides i barates.
- Grafana Alloy o OpenTelemetry Collector en servidors, contenidors i Kubernetes.
- Objectius de servei (SLO) per al que noten els vostres usuaris: disponibilitat, latència i errors.
- Alertmanager amb rutes, agrupació, inhibicions i silencis, connectat a correu, xat o la vostra eina de guàrdies.
- Taulers per servei en Grafana, guardats en codi al vostre repositori.
- Inici de sessió en Grafana amb el vostre proveïdor d'identitat.
- Revisió mensual d'alertes: les que no serveixen s'eliminen o s'ajusten.
Preguntes freqüents
Grafana i Prometheus serveixen com a alternativa a Datadog?
Per a mètriques, registres, taulers i alertes, sí. Perdeu la comoditat d'un servei que s'instal·la en una vesprada i guanyeu control sobre les dades i sobre el cost, que no creix per host ni per gigabyte ingerit. El que cal és algú que opere la pila; aquesta és la nostra feina.
Qui atén les alertes de nit?
La vigilància automàtica és contínua: les alertes salten i queden registrades a qualsevol hora. La resposta humana és el següent dia feiner, en horari laboral, amb terminis pactats per escrit.
Quant de temps es guarden les mètriques i els registres?
El que decidim segons l'ús i el cost. L'habitual és poc temps amb tot el detall i més temps amb dades resumides. Els registres amb dades personals tenen a més un termini màxim que fixem per protecció de dades.
Podeu afegir monitoratge al que ja tenim?
Sí. Si ja teniu Prometheus o Grafana a mig fer, partim d'ací: revisem què es recull, llevem les alertes que ningú no atén i afegim el que falta.
Expliqueu-nos el vostre cas
En una trucada gratuïta de 20 minuts veiem on sou i per on començar. Sense compromís.
Documentació oficial consultada
Les dades tècniques d'aquesta pàgina es basen en:
Revisat el