Files
infra/stacks/monitoring/README.md

36 lines
1.7 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Monitoring stack (fr1)
Prometheus + Grafana + node-exporter + cAdvisor. Живёт на `fr1` в `~/monitoring`, доступ — https://mon.ruzzy.dev.
## Структура
- `docker-compose.yml` — стек. Grafana пароль через `${GF_ADMIN_PASSWORD}` (`.env`, не в git).
- `prometheus/prometheus.yml` — scrape-конфиг, таргеты через **file_sd**.
- `prometheus/targets/node/*.yml`, `prometheus/targets/cadvisor/*.yml` — таргеты (по файлу на сервер).
- `grafana/provisioning/` — datasource (uid `prometheus`) + дашборды (Node Exporter Full, cAdvisor) как код.
## Запуск
```bash
cd ~/monitoring
echo "GF_ADMIN_PASSWORD=<пароль>" > .env # один раз
docker compose up -d
```
## Добавить новый сервер
На новом сервере поднять `node-exporter` (:9100) и `cadvisor` (:8080), доступные с fr1 (по приватному туннелю).
Затем на fr1 добавить таргеты и перечитать конфиг (без рестарта):
```bash
# ~/monitoring/prometheus/targets/node/<name>.yml
- targets: ['<IP-в-туннеле>:9100']
labels: { instance: <name> }
# ~/monitoring/prometheus/targets/cadvisor/<name>.yml
- targets: ['<IP-в-туннеле>:8080']
labels: { instance: <name> }
curl -s -X POST http://127.0.0.1:9090/-/reload
```
В дашбордах сервер появится в выпадающем списке `instance`.
## Дашборды
Провижатся автоматически (папка **Infra**): Node Exporter Full (1860), cAdvisor (19792). Datasource — Prometheus (uid `prometheus`).