feat: comprehensive observability stack

- Add restic_backups and mattermost scrape jobs to Prometheus config
- Add UnPoller deployment+service+secret for UniFi metrics (unpoller.yaml)
- Add unifi scrape job targeting unpoller in-cluster
- Add 4 Grafana dashboards as NixOS-managed etc files on hosea:
  - system-health: CPU, memory, disk, network per host
  - backup-health: restic backup freshness and duration
  - kubernetes: pod counts, restart rates, node resources
  - network: DNS queries, DHCP leases, UniFi ports, ping latency
- Add grafana-api-token agenix secret placeholder on hosea
- Open firewall ports 9100/9427/9558 for prometheus exporters in baseline.nix
This commit is contained in:
root
2026-03-25 09:23:31 -05:00
parent 0050f866bf
commit ab6e1d24fe
6 changed files with 353 additions and 0 deletions
+16
View File
@@ -56,6 +56,22 @@ data:
static_configs:
- targets:
- "hosea.shire-zebra.ts.net:9108"
# Restic rest-server backup metrics
- job_name: restic_backups
static_configs:
- targets:
- "nas1.shire-zebra.ts.net:30248"
# Mattermost metrics
- job_name: mattermost
metrics_path: /metrics
static_configs:
- targets:
- "mattermost.thehellings.lan:8065"
# UniFi metrics via unpoller
- job_name: unifi
static_configs:
- targets:
- "unpoller.monitoring.svc.cluster.local:9130"
# This scrapes metrics from the Kubernetes kubelets
- job_name: kubelet
kubernetes_sd_configs: