Zum Inhalt

pizcam — Monitoring-Probe Standort A

Stand: 25.03.2026

Hardware

Eigenschaft Wert
Modell Raspberry Pi Zero W Rev 1.1
Hostname pizcam
MAC b8:27:eb:4c:5d:f1
OS Raspbian Bookworm (armv6l)
RAM 427 MB
SD-Karte 29 GB
Kamera IMX219 (8 MP)
Stromversorgung Micro-USB, 1A

Netzwerk

Netz SSID IP Prio
Heimnetz vroak_wlan_avm 192.168.178.118 (DHCP) 5
Standort A ckoffice-static 10.128.40.50/24 (statisch) 10
WireGuard 10.10.10.2

WLAN-Umschaltung erfolgt automatisch per NetworkManager-Priorität.

Zugänge

  • SSH: ssh pizcam (Alias in ~/.ssh/config auf Mac)
  • User: ak (Passwort: zaphod42, SSH-Key, sudo NOPASSWD)
  • User pi existiert noch mit Standardpasswort raspberry — TODO: absichern

Installierte Services

Blackbox-Exporter v0.28.0

  • Port: 9115
  • Service: blackbox-exporter.service (systemd, enabled)
  • Config: /etc/blackbox_exporter/blackbox.yml
  • Module: http_2xx, icmp_ping, dns_resolve, dns_ms_login, dns_ms_bc, dns_ms_outlook, dns_ms_graph, dns_ms_crm
  • RAM: ~21 MB

Licht-Check (Kamera)

  • Timer: lightcheck.timer (alle 60 Sekunden)
  • Script: /opt/lightcheck/lightcheck.py
  • Push: ntfy → http://192.168.178.199:8090/monitoring
  • Schwellwert: THRESHOLD = 30 (Helligkeit > 30 = Licht an)
  • Hysterese: 2× gleicher Wert nötig vor Push
  • RAM: ~18 MB (kurzzeitig)

WireGuard

  • Interface: wg0
  • Config: /etc/wireguard/wg0.conf
  • Server: raspip5 (10.10.10.1), Port 51820
  • Endpoint: 192.168.178.199:51820 (Heimnetz) / anknorr.ddnss.de:51820 (extern)

Prometheus-Integration

Prometheus-Jobs liegen auf raspip5 unter /tmp/pizcam-prometheus-jobs.yml — müssen noch in /data/docker/monitoring/prometheus/prometheus.yml eingefügt werden.

Jobs mit Label probe_from: "pizcam" und standort: "Standort-A-direkt": - blackbox-http-pizcam (HTTP-Latenz) - blackbox-icmp-pizcam (Ping) - blackbox-ap-ping-pizcam (WLAN APs) - blackbox-dns-pizcam (DNS) - blackbox-dns-ms-*-pizcam (MS-DNS, 5 Jobs)

Diese Jobs ergänzen (nicht ersetzen!) die bestehenden Remote-Jobs über SSH-Tunnel.

Checkliste Inbetriebnahme am Standort A

Vor Ort

  1. pizcam aufstellen: ins/neben Rack, Kamera auf Raum ausrichten (Raumhelligkeit, nicht direkt in Lampe)
  2. Strom: Micro-USB anschließen (1A reicht)
  3. Warten: ~70s Boot, WLAN ckoffice-static verbindet automatisch

Mac am Standort (im WLAN ckoffice-static)

# WireGuard starten — Zugriff aufs Heimnetz:
sudo wg-quick up ~/.wireguard/wg0-extern.conf

# Testen:
ping 10.10.10.1          # raspip5 über WG
ssh raspip5              # wie zuhause

pizcam WireGuard-Endpoint ändern

# pizcam erreichen (über Standort-IP oder WG):
ssh ak@10.128.40.50

# Endpoint auf extern umstellen:
sudo sed -i 's|Endpoint = 192.168.178.199:51820|Endpoint = anknorr.ddnss.de:51820|' /etc/wireguard/wg0.conf
sudo systemctl restart wg-quick@wg0

Firewall prüfen

  • pizcam (10.128.40.50) muss HTTP/HTTPS/ICMP/DNS nach extern dürfen
  • Vermutlich greift bestehende LAN→WAN-Regel auf XGS-40
  • Falls nicht: XGS-40 WebAdmin → https://10.128.40.1:4444 (admin / aKHSudta7w67!8h)

Blackbox-Exporter testen

curl -s 'http://10.128.40.50:9115/probe?target=https://www.google.com&module=http_2xx' | grep probe_success
# → probe_success 1

Licht-Check testen + kalibrieren

ssh ak@10.128.40.50 "python3 /opt/lightcheck/lightcheck.py"
# Ggf. THRESHOLD anpassen:
ssh ak@10.128.40.50 "sudo sed -i 's/THRESHOLD = 30/THRESHOLD = 25/' /opt/lightcheck/lightcheck.py"

Prometheus-Jobs aktivieren (remote, von raspip5)

ssh raspip5
cat /tmp/pizcam-prometheus-jobs.yml >> /data/docker/monitoring/prometheus/prometheus.yml
cd /data/docker && docker compose restart prometheus

WireGuard beenden (wenn fertig)

sudo wg-quick down wg0-extern

Offene Punkte

  • [ ] User pi absichern (Passwort ändern oder deaktivieren)
  • [ ] Grafana-Dashboard für pizcam-Vergleichswerte erstellen
  • [ ] ntfy-URL anpassen wenn pizcam am Standort A steht (aktuell 192.168.178.199 → über WG erreichbar)
  • [ ] Altes mjpeg_server.py von User pi prüfen/entfernen