advanced
Prometheus
Собирайте и запрашивайте метрики через pull scraping, labels, PromQL, alert rules и контроль cardinality.
Prometheus scrape'ит метрики с exporters и instrumented приложений, хранит блоки TSDB и вычисляет alerting rules. Естественно сочетается с Grafana и Alertmanager для маршрутизации уведомлений.
scrape_configs:
- job_name: api
metrics_path: /metrics
static_configs:
- targets: ['api:9090']
| Компонент | Роль | |-----------|------| | Exporters | node, postgres, blackbox probes | | Alertmanager | Группировка, inhibit, маршрут pages | | Service discovery | Targets pod'ов Kubernetes |
Retention под lookback инцидентов. Federation или remote write для долгого хранения при росте.
На интервью: HA, инциденты cardinality и blackbox vs whitebox monitoring.
Типовые ошибки: scrape через LB без согласованных labels; шторм алертов без inhibition; без лимитов ресурсов.
Компромисс — простота in-cluster против долгого хранения и сложности HA.
Чеклист:
- Dynamic discovery targets в K8s.
- Алерты через Alertmanager.
- Мониторинг самого Prometheus.
- Retention и remote write заранее.