# Prometheus & Grafana Monitoring Hub This folder contains the configuration for the centralized monitoring stack running on the Homelab VM. ## Folder Structure ``` prometheus_grafana_hub/ ├── dashboards/ # Grafana dashboard JSON files │ ├── infrastructure-overview.json # Fleet-wide status of all devices │ ├── node-details.json # Detailed per-host metrics │ ├── synology-monitoring.json # Synology NAS SNMP metrics │ └── node-exporter.json # Full Node Exporter dashboard ├── snmp-configs/ # SNMP Exporter configurations │ └── snmp_synology.yml # Synology NAS SNMP config ├── docker-compose/ # Docker compose files for remote hosts │ ├── atlantis-docker-compose.yml │ ├── calypso-docker-compose.yml │ ├── setillo-docker-compose.yml │ ├── concord-nuc-docker-compose.yml │ └── guava-docker-compose-node-exporter.yml ├── docker-compose.homelab-vm.yml # Main stack compose (Homelab VM) ├── prometheus.yml # Prometheus scrape configuration ├── Dockerfile # Custom Prometheus image (if needed) └── README.md ``` ## Dashboards | Dashboard | UID | Description | |-----------|-----|-------------| | Infrastructure Overview | `infrastructure-overview-v2` | Fleet status, CPU, Memory, Disk, Network for all hosts | | Node Details | `node-details-v2` | Per-REDACTED_APP_PASSWORD CPU breakdown, per-core usage, memory details, disk I/O | | Synology Monitoring | `synology-dashboard-v2` | Synology NAS CPU, Memory, Load, Uptime via SNMP | | Node Exporter Full | `rYdddlPWk` | Comprehensive node exporter metrics | ## SNMP Configuration The `snmp_synology.yml` config is deployed to each Synology NAS at: - **Atlantis**: `/volume2/metadata/docker/snmp/snmp.yml` - **Calypso**: `/volume1/docker/snmp/snmp.yml` - **Setillo**: `/volume1/docker/snmp/snmp.yml` ## Monitored Hosts ### Node Exporter Targets - homelab-node (100.67.40.126:9100) - atlantis-node (100.83.230.112:9100) - calypso-node (100.103.48.78:9100) - setillo-node (100.125.0.20:9100) - concord-nuc-node (100.72.55.21:9100) - proxmox-node (100.87.12.28:9100) - truenas-node (100.75.252.64:9100) - raspberry-pis (100.77.151.40:9100) ### SNMP Targets (Synology) - atlantis-snmp (100.83.230.112) - calypso-snmp (100.103.48.78) - setillo-snmp (100.125.0.20) ## Deployment ### Homelab VM (Main Stack) The main monitoring stack runs on Homelab VM: ```bash cd ~/docker/monitoring # Using the compose file from this repo: docker-compose -f docker-compose.homelab-vm.yml up -d # Or if already deployed: docker-compose up -d ``` **Services:** - **Grafana**: http://homelab:3300 (admin / set via GF_SECURITY_ADMIN_PASSWORD) - **Prometheus**: http://homelab:9090 - **Node Exporter**: Runs in host network mode on port 9100 ### Remote Hosts Each remote host runs node-exporter and/or snmp-exporter as specified in the `docker-compose/` folder.