obs-01
The observability stack — ntfy, Grafana, Loki, Prometheus, and Uptime Kuma — on a dedicated Proxmox container.
The observability host. Everything that watches, graphs, and announces problems runs here — deliberately on its own container so the thing that announces problems isn’t the thing that has them.
Host
| Field | Value |
|---|---|
| Internal IP | 10.10.0.148 |
| Proxmox | obs-01, CT 111 on node pve |
| Platform | Proxmox LXC, Ubuntu 22.04 LTS |
| Workspace | /opt/observability/ (single docker-compose.yml) |
| Tool routing | pve_lxc_exec (node pve, vmid 111) for shell access |
| Adjacent tools | pve_lxc_* lifecycle (start/shutdown), pve_node_status |
There’s no dedicated *_execute_command for obs-01 — it isn’t Leif,
nvrbackup, or SHTops. Reach it through the Proxmox layer with
pve_lxc_exec against vmid 111, the same way as any other container on the
node.
The stack
Everything runs as Docker containers from /opt/observability/docker-compose.yml.
The one host-level service is node_exporter (so obs-01 monitors itself).
| Service | Image | Port | Role |
|---|---|---|---|
| Grafana | grafana/grafana-oss | 3000 | Dashboards over Prometheus + Loki |
| Prometheus | prom/prometheus:v2.55.1 | 9090 | Metrics scraping + storage |
| Loki | grafana/loki:3.3.2 | 3100 | Log aggregation backend |
| Promtail | grafana/promtail:3.3.2 | 1514 | Ships logs (incl. syslog :1514) into Loki |
| Uptime Kuma | louislam/uptime-kuma:1 | 3001 | Uptime / endpoint health checks |
| ntfy | binwiederhier/ntfy:v2.21.0 | 8080 (→ 80 in container) | Push notification / alert delivery |
| node_exporter | host systemd service | 9100 | Host metrics for obs-01 itself |
What it monitors
Prometheus (monitor: shtops-obs-01, 30s scrape interval) scrapes
node_exporter / windows_exporter across internal hosts and customer sites:
| Target | Host | Role |
|---|---|---|
localhost:9090 | obs-01 | Prometheus self-scrape |
10.10.0.24:9100 | SHTops | MCP host |
10.10.0.250:9100 | logs | LibreNMS host |
10.10.0.148:9100 | obs-01 | observability host |
172.20.10.21:9182 | jelectric-server-01 | customer Windows Server 2019 |
172.20.10.10:9100 | jelectric-xcpng | customer XCP-ng hypervisor |
Customer targets (the jelectric boxes) are reached over the site-to-site
links — see Network Topology.
Alert delivery (ntfy)
ntfy on :8080 is the push-notification endpoint for the stack. Alerts route to
ntfy topics:
shtops-alerts/shtops-hq-alerts— internal SuperHiTech alertscustomer-alerts-critical/customer-alerts-info— customer-facing alerts
Related pages
- Hosts — full host inventory and tool routing summary
- SHTops — the ops host obs-01 watches; LibreNMS + UniFi
- Service Map — services and the Leif tools that manage them
- Network Topology — reach to customer monitoring targets
Last verified against live systems: 2026-06-01 — see doc freshness.