Sync Prometheus config with working VM102 and NAS scrape targets.
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -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
|
||||
@@ -1,4 +1,4 @@
|
||||
# Prometheus — scrape targets op Docker bridge (naast postgres-homelab, neo4j, …).
|
||||
# Prometheus — homelab metrics (NAS stack scrapet LAN + bridge targets).
|
||||
global:
|
||||
scrape_interval: 15s
|
||||
evaluation_interval: 15s
|
||||
@@ -10,35 +10,29 @@ scrape_configs:
|
||||
|
||||
- job_name: postgres-exporter
|
||||
static_configs:
|
||||
- targets: ["postgres-exporter-homelab:9187"]
|
||||
- targets: ["postgres-exporter:9187"]
|
||||
labels:
|
||||
instance: postgres-vm102
|
||||
|
||||
# Neo4j 4.4+ enterprise metrics.prometheus.enabled → endpoint op poort 2004
|
||||
- job_name: neo4j
|
||||
scrape_interval: 30s
|
||||
metrics_path: /metrics
|
||||
static_configs:
|
||||
- targets: ["192.168.1.105:2004"]
|
||||
labels:
|
||||
instance: neo4j
|
||||
# Neo4j Community 2026 heeft geen Prometheus :2004 — gebruik Neo4j dashboard via Postgres/Grafana SQL.
|
||||
# Enterprise: zet server.metrics.prometheus.enabled=true en scrape :2004.
|
||||
|
||||
# Proxmox VE — prometheus-pve-exporter; vul monitoring/prometheus/targets/extra.yml
|
||||
- job_name: proxmox-pve
|
||||
- job_name: node-exporter
|
||||
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
|
||||
file_sd_configs:
|
||||
- files:
|
||||
- /etc/prometheus/targets/extra.yml
|
||||
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
|
||||
|
||||
Reference in New Issue
Block a user