docs: закрытие сессии (вечер) — STATUS/TODO/WALKTHROUGH/README: подпапки дашбордов

This commit is contained in:
kpa39l
2026-09-08 18:26:42 +00:00
parent 4b0539d8da
commit 9f2619039a
4 changed files with 36 additions and 5 deletions
+6 -2
View File
@@ -190,9 +190,13 @@ admin-эндпоинты на loopback :8081: `/healthz`, `/readyz`, `/metrics`
## Node-дашборды (диски/память/сеть/доступность) — этап 7, РЕШЕНО ✅ ## Node-дашборды (диски/память/сеть/доступность) — этап 7, РЕШЕНО ✅
На каждую ноду (vps01, vps02, vps03, bigbox) — **отдельный дашборд**, На каждую ноду (vps01, vps02, vps03, bigbox) — **отдельный дашборд**,
`grafana/dashboards/node-<host>.json` (uid `node-<host>`, title "Node <host>"). `grafana/dashboards/nodes/node-<host>.json` (uid `node-<host>`, title "Node <host>").
Генерируются скриптом `/tmp/gen_nodes_dash.py` (в git не хранится; при желании Генерируются скриптом `/tmp/gen_nodes_dash.py` (в git не хранится; при желании
перенести — в EXPERIENCE.md). перенести — в EXPERIENCE.md). Файлы дашбордов разложены по подпапкам
(папки в UI Grafana совпадают):
- `grafana/dashboards/` — garage-cluster.json → папка **Garage**
- `grafana/dashboards/nodes/` — node-*.json → папка **nodes**
- `grafana/dashboards/vinogorod/` — vinograd-wan.json → папка **vinogorod**
Панели (все по `{host="<host>"}`, job=node): Панели (все по `{host="<host>"}`, job=node):
1. **Availability** — stat-панель `up{job="node",host=...}` (UP/DOWN) 1. **Availability** — stat-панель `up{job="node",host=...}` (UP/DOWN)
+8 -2
View File
@@ -1,6 +1,6 @@
# Мониторинг кластера — Статус # Мониторинг кластера — Статус
Обновлено: 2026-09-08 (сессия @session:default/20260908_142639_b2d5b4) Обновлено: 2026-09-08 (сессия @session:default/20260908_180858_730d1b)
## Текущее состояние ## Текущее состояние
Стек мониторинга на bigbox (/opt/monitoring): Prometheus 2.53 + Grafana 11.1 + Стек мониторинга на bigbox (/opt/monitoring): Prometheus 2.53 + Grafana 11.1 +
@@ -20,6 +20,10 @@ Vinograd WAN + tproxy-панели. vps03 подключён к WG (10.8.0.3),
availability + disk free + memory + load + **Net <iface> RX/TX (bytes/s)** + availability + disk free + memory + load + **Net <iface> RX/TX (bytes/s)** +
**Net <iface> utilization (%)** (физические интерфейсы, контейнерные исключены) **Net <iface> utilization (%)** (физические интерфейсы, контейнерные исключены)
- README.md/EXPERIENCE.md обновлены (грабли: node_network_* метрики, speed=-125000 на виртуалках) - README.md/EXPERIENCE.md обновлены (грабли: node_network_* метрики, speed=-125000 на виртуалках)
- **Дашборды разложены по подпапкам**: `grafana/dashboards/nodes/` (node-*) и
`grafana/dashboards/vinogorod/` (vinograd-wan) — в git и на диске; provisioning
`dashboards.yml` получил 3 провайдера (Garage / nodes / vinogorod); в UI Grafana
дашборды лежат в папках **Garage / nodes / vinogorod** (проверено по БД, коммит 4b0539d)
## В работе / Следующие шаги ## В работе / Следующие шаги
- [ ] Разные admin_token / metrics_token в Garage (совпадают) - [ ] Разные admin_token / metrics_token в Garage (совпадают)
@@ -36,7 +40,9 @@ curl -s "http://127.0.0.1:9090/api/v1/targets?state=any" | python3 -m json.tool
## Ключевые артефакты ## Ключевые артефакты
- /opt/monitoring/docker-compose.yml, prometheus.yml, alerts.yml - /opt/monitoring/docker-compose.yml, prometheus.yml, alerts.yml
- /opt/monitoring/grafana/dashboards/node-<host>.json (4 шт), garage-cluster.json, vinograd-wan.json - /opt/monitoring/grafana/dashboards/garage-cluster.json (папка Garage)
- /opt/monitoring/grafana/dashboards/nodes/node-<host>.json (4 шт, папка nodes)
- /opt/monitoring/grafana/dashboards/vinogorod/vinograd-wan.json (папка vinogorod)
- /opt/monitoring/grafana/provisioning/datasources/datasources.yml, dashboards/dashboards.yml - /opt/monitoring/grafana/provisioning/datasources/datasources.yml, dashboards/dashboards.yml
- README.md, EXPERIENCE.md, PLAN.md (в этом каталоге), STATUS.md/TODO.md/WALKTHROUGH.md - README.md, EXPERIENCE.md, PLAN.md (в этом каталоге), STATUS.md/TODO.md/WALKTHROUGH.md
+1
View File
@@ -9,6 +9,7 @@
| 2026-09-08 | Дашборд per-node (Node vps01/vps02/vps03/bigbox, uid node-*) | ✅ закрыта | @session:default/20260908_142639_b2d5b4 | | 2026-09-08 | Дашборд per-node (Node vps01/vps02/vps03/bigbox, uid node-*) | ✅ закрыта | @session:default/20260908_142639_b2d5b4 |
| 2026-09-08 | Сеть по интерфейсам: RX/TX + утилизация канала (node_network_*, speed) | ✅ закрыта | @session:default/20260908_142639_b2d5b4 | | 2026-09-08 | Сеть по интерфейсам: RX/TX + утилизация канала (node_network_*, speed) | ✅ закрыта | @session:default/20260908_142639_b2d5b4 |
| 2026-09-08 | EXPERIENCE.md/README.md: грабли (WG, node_network_*, speed=-125000) | ✅ закрыта | @session:default/20260908_142639_b2d5b4 | | 2026-09-08 | EXPERIENCE.md/README.md: грабли (WG, node_network_*, speed=-125000) | ✅ закрыта | @session:default/20260908_142639_b2d5b4 |
| 2026-09-08 | Дашборды по подпапкам (nodes/, vinogorod/) + provisioning folder | ✅ закрыта | @session:default/20260908_180858_730d1b |
| 2026-09-08 | Git: push в gitverse + mirror gitea | ✅ закрыта | @session:default/20260908_142639_b2d5b4 | | 2026-09-08 | Git: push в gitverse + mirror gitea | ✅ закрыта | @session:default/20260908_142639_b2d5b4 |
| — | admin_token / metrics_token в Garage — разные | 🔵 открыта | | | — | admin_token / metrics_token в Garage — разные | 🔵 открыта | |
| — | Пароль Grafana (ручной, пользователь) | 🔵 открыта | | | — | Пароль Grafana (ручной, пользователь) | 🔵 открыта | |
+21 -1
View File
@@ -72,4 +72,24 @@
### Итог проверки ### Итог проверки
- `api/v1/targets?state=any` → node ×4 up (10.8.0.1/2/3/4) - `api/v1/targets?state=any` → node ×4 up (10.8.0.1/2/3/4)
- grafana.nixg.ru/api/health → 200 - grafana.nixg.ru/api/health → 200
- Дашборды node-vps01/02/03/bigbox — в БД Графаны - Дашборды node-vps01/02/03/bigbox — в БД Графаны
## 2026-09-08 (вечер) — подпапки дашбордов (сессия @session:default/20260908_180858_730d1b)
Пользователь создал папки в UI Grafana (nodes, vinogorod) и попросил разложить
дашборды по ним (в файловой системе + в интерфейсе).
1. Перемещение на диске (git mv, история сохранена):
```
grafana/dashboards/nodes/node-{bigbox,vps01,vps02,vps03}.json
grafana/dashboards/vinogorod/vinograd-wan.json
garage-cluster.json — остался в корне
```
2. `grafana/provisioning/dashboards/dashboards.yml` — 3 провайдера:
- garage-dashboards → path /var/lib/grafana/dashboards (корень), folder: Garage
- node-dashboards → path .../dashboards/nodes, folder: nodes
- vinogorod-dashboards → path .../dashboards/vinogorod, folder: vinogorod
(Grafana type:file НЕ ходит рекурсивно — поэтому на подпапку свой provider.)
3. `docker compose restart grafana` — provisioning применил папки.
4. Проверка по БД: Node * → nodes, Vinograd WAN → vinogorod, Garage Cluster → Garage.
5. Коммит 4b0539d → gitverse + gitea mirror-sync.