Accesarea intefețelor web
Prometheus
Pentru a accesa interfața Prometheus, folosim:
$ kubectl port-forward svc/monitoring-kube-prometheus-prometheus 9090:9090
Accesăm http://localhost:9090. Pagina principală conține:
- bara de căutare pentru interogări PromQL
- secțiunea Graph pentru afișarea grafică
- tab-ul Targets (în Status → Targets) care arată toate sursele de metrici monitorizate (kubelet, node-exporter, cAdvisor etc.).
Limbajul PromQL
PromQL (Prometheus Query Language) este un limbaj expresiv pentru interogarea metricilor. O metrică are forma:
<metric_name>{<label_name>=<label_value>, ...}
Exemple:
container_cpu_usage_seconds_total
container_memory_usage_bytes
Putem filtra după etichete:
container_cpu_usage_seconds_total{namespace="default"}
Putem calcula rate de variație:
rate(container_cpu_usage_seconds_total[2m])
Putem agrega date:
avg(rate(container_cpu_usage_seconds_total[2m])) by (pod)
Funcțiile PromQL pot face:
- agregare:
sum,avg,max,min,count - derivate temporale:
rate(),increase() - comparare:
topk(),sort_desc().
Astfel, putem analiza tendințe și comportamente de performanță ale containerelor și aplicațiilor.
Grafana
Deschidem interfața Grafana:
$ kubectl port-forward svc/monitoring-grafana 3000:80
Accesăm http://localhost:3000. Pentru autentificare, numele de utilizator este admin, iar
parola este prom-operator.
După logare, în meniul lateral selectăm: Dashboards → Browse → Kubernetes / Compute Resources / Cluster.
Dashboard-uri preconfigurate
Chart-ul kube-prometheus-stack vine cu o colecție extinsă de dashboard-uri Grafana.
Câteva dintre cele mai utile sunt:
- Cluster / Compute Resources - afișează utilizarea agregată a CPU, memoriei și spațiului de stocare la nivel de cluster
- Node / Compute Resources - prezintă starea fiecărui nod, cu grafice pentru CPU, RAM și I/O
- Namespace / Compute Resources - segmentează resursele pe namespace-uri
- Pod / Resources - oferă o imagine detaliată a performanței fiecărui pod
- Networking / Cluster - monitorizează traficul de rețea între noduri și servicii.
Fiecare dashboard poate fi explorat, filtrat și exportat. Grafana permite și personalizarea completă a panourilor, inclusiv adăugarea de adnotări și intervale de timp dinamice.