Sync Prometheus config with working VM102 and NAS scrape targets.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
mo
2026-05-25 23:28:40 +02:00
parent 3a77680477
commit ef9e08cdc0
2 changed files with 88 additions and 24 deletions
@@ -0,0 +1,70 @@
# Monitoring stack — Prometheus + postgres-exporter + Grafana
# Start: cd monitoring && docker compose up -d --build
# UI: Grafana http://192.168.1.211:3002 · Prometheus http://192.168.1.211:9090
services:
prometheus:
image: prom/prometheus:v2.53.2
container_name: prometheus-homelab
restart: unless-stopped
ports:
- "9090:9090"
volumes:
- ./prometheus.yml:/etc/prometheus/prometheus.yml:ro
- ./prometheus/targets:/etc/prometheus/targets:ro
- prometheus-homelab-data:/prometheus
command:
- --config.file=/etc/prometheus/prometheus.yml
- --storage.tsdb.path=/prometheus
- --web.enable-lifecycle
extra_hosts:
- "host.docker.internal:host-gateway"
networks:
- homelab-monitor
postgres-exporter:
image: prometheuscommunity/postgres-exporter:latest
container_name: postgres-exporter
restart: unless-stopped
ports:
- "9187:9187"
environment:
DATA_SOURCE_NAME: "postgresql://mo:${PG_PASSWORD:-WaQTUw2t}@192.168.1.105:5433/homelab?sslmode=disable"
networks:
- homelab-monitor
grafana:
build:
context: ..
dockerfile: Dockerfile.grafana
image: grafana-homelab:latest
container_name: grafana-homelab
restart: unless-stopped
ports:
- "3002:3000"
environment:
GF_SECURITY_ADMIN_USER: admin
GF_SECURITY_ADMIN_PASSWORD: ${GRAFANA_ADMIN_PASSWORD:-WaQTUw2t}
GF_USERS_DEFAULT_THEME: dark
GF_SERVER_ROOT_URL: http://192.168.1.211:3002
PG_USER: mo
PG_DATABASE: homelab
HOMELAB_PG_PASSWORD: ${PG_PASSWORD:-WaQTUw2t}
volumes:
- grafana-homelab-data:/var/lib/grafana
- ../grafana/provisioning/dashboards:/etc/grafana/provisioning/dashboards:ro
- ../grafana/dashboards/homelab:/var/lib/grafana/dashboards/homelab:ro
- ../grafana/dashboards/imported:/var/lib/grafana/dashboards/imported:ro
depends_on:
- prometheus
networks:
- homelab-monitor
volumes:
prometheus-homelab-data:
grafana-homelab-data:
networks:
homelab-monitor:
name: homelab-monitor
driver: bridge
+18 -24
View File
@@ -1,4 +1,4 @@
# Prometheus — scrape targets op Docker bridge (naast postgres-homelab, neo4j, …). # Prometheus — homelab metrics (NAS stack scrapet LAN + bridge targets).
global: global:
scrape_interval: 15s scrape_interval: 15s
evaluation_interval: 15s evaluation_interval: 15s
@@ -10,35 +10,29 @@ scrape_configs:
- job_name: postgres-exporter - job_name: postgres-exporter
static_configs: static_configs:
- targets: ["postgres-exporter-homelab:9187"] - targets: ["postgres-exporter:9187"]
labels: labels:
instance: postgres-vm102 instance: postgres-vm102
# Neo4j 4.4+ enterprise metrics.prometheus.enabled → endpoint op poort 2004 # Neo4j Community 2026 heeft geen Prometheus :2004 — gebruik Neo4j dashboard via Postgres/Grafana SQL.
- job_name: neo4j # Enterprise: zet server.metrics.prometheus.enabled=true en scrape :2004.
scrape_interval: 30s
metrics_path: /metrics
static_configs:
- targets: ["192.168.1.105:2004"]
labels:
instance: neo4j
# Proxmox VE — prometheus-pve-exporter; vul monitoring/prometheus/targets/extra.yml - job_name: node-exporter
- job_name: proxmox-pve scrape_interval: 30s
static_configs:
- targets: ["192.168.1.105:9100"]
labels:
instance: vm102-postgress
role: security
- targets: ["192.168.1.211:9100"]
labels:
instance: synology-nas
role: nas
# Proxmox: vul targets in prometheus/targets/extra.yml (prometheus-pve-exporter :9221)
- job_name: proxmox
scrape_interval: 30s scrape_interval: 30s
file_sd_configs: file_sd_configs:
- files: - files:
- /etc/prometheus/targets/extra.yml - /etc/prometheus/targets/extra.yml
refresh_interval: 1m refresh_interval: 1m
# Synology / SNMP: zet targets in monitoring/prometheus/targets/snmp.yml en uncomment hieronder.
# - job_name: snmp
# scrape_interval: 60s
# metrics_path: /snmp
# params:
# module: [synology]
# static_configs:
# - targets:
# - 192.168.1.211
# labels:
# job: snmp-nas