Vreau să monitorizez diferite servere cu Prometheus alimentate de exportatori precum node-exporter sau postgres-exporter. Valorile ar trebui să fie prezentate în Grafana ca tablouri de bord și alerte.
Exportatorii vor fi importați prin următoarele ținte în prometheus.yml:
global:
scrape_interval: 15s
etichete_externe:
monitor: 'codelab-monitor'
scrape_configs:
- job_name: „node-exporter”
scrape_interval: 5s
static_configs:
- ținte: ['123.123.123.1:9100', '123.123.123.2:9100', '123.123.123.3:9100']
- job_name: 'postgres-exporter'
static_configs:
- obiective : ['123.123.123.3:9187']
Nu este posibil să legați serverele de un URL/nume de gazdă ușor de utilizat.
Vreau să construiesc panouri de bord și alerte pentru aceste ținte în Grafana, dar cu scopul ca în tablouri de bord și alerte să nu fie afișate IP-urile gazdelor, ci numele lor de gazdă.
Tabloul de bord va avea două secțiuni diferite:
1. Grafice pentru metrici ale anumitor servere, selectate prin filtru variabil, de exemplu.
2. Grafice pentru valorile tuturor serverelor, cu eticheta instanței, de exemplu.
Pentru cazul 1 Am găsit o soluție pentru afișarea numelor de gazdă în locul IP-urilor în filtrul drop-down. Pentru asta am creat doua variabile:
Nume |
Interogare |
Eticheta |
Ascunde |
nume de gazdă |
label_values(nume nod) |
Gazdă: |
|
instanță |
label_values(node_uname_info{nodename="$hostname"}, instanță) |
|
Variabil |
Metrica panoului este filtrată de variabilă $instanţă
:
100 - rate(node_cpu_seconds_total{mode="idle", instance="$instance"}[1m]) * 100
În cazul 2, nu am succes. Vreau să setez numele de gazdă sub graficele panoului. Dar în Legendă
-câmpul Pot accesa doar instanța (combinația IP/port) a metricii și nu numele gazdei:
Nu pot accesa $nume gazdă
-variabilă în Legendă
-camp.
Deci, cum pot pune numele de gazdă sub graficele panoului? Există o cale internă Grafana sau trebuie să manipulez prometheus.yml?