Verlauf um Swap und Temperatur ergänzen, Netz p42 als externes Netz
/api/history liefert zusätzlich swapPercent und tempMaxCelsius (für den 2-Tage-Verlauf im Dashboard). Das Docker-Netz p42 legt update-docker.sh bei Bedarf an, damit die Startreihenfolge mit P42-F.W. egal ist. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
21fbb4ad14
commit
a1beee3d85
4 files changed
+13
-18
No files matched your search
@@ -39,7 +39,7 @@ curl -H "Authorization: Bearer $(grep ^SM_TOKEN= .env | cut -d= -f2)" http://127
|
||||
docker compose stop # anhalten
|
||||
docker compose start # wieder starten
|
||||
docker compose restart # nach Änderungen an .env: besser "docker compose up -d"
|
||||
docker compose down # Container entfernen (Netz "p42" wird mit entfernt, falls unbenutzt)
|
||||
docker compose down # Container entfernen (das Netz "p42" bleibt bestehen)
|
||||
docker compose ps # Status inkl. healthy/unhealthy
|
||||
docker compose logs -f # Log: nur Start, Fehler und abgelehnte Anfragen
|
||||
docker stats p42-sm # Verbrauch des Agenten selbst (wenige MB RAM)
|
||||
@@ -66,22 +66,10 @@ sein (`id -u <user>`). Netzlaufwerke (NFS/SMB) werden bewusst nicht gemessen.
|
||||
|
||||
### Erreichbarkeit
|
||||
|
||||
**A) Dashboard läuft als Container auf demselben Server (empfohlen):** P42-S.M. legt das Docker-Netz `p42` an.
|
||||
In der `docker-compose.yml` von P42-F.W. ergänzen:
|
||||
|
||||
```yaml
|
||||
services:
|
||||
p42:
|
||||
# ... wie bisher ...
|
||||
networks: [default, p42]
|
||||
|
||||
networks:
|
||||
p42:
|
||||
external: true
|
||||
```
|
||||
|
||||
Danach erreicht das Dashboard-Backend den Dienst unter **`http://p42-sm:9142`**. Ein offener Port nach außen
|
||||
ist dafür nicht nötig. P42-S.M. muss zuerst gestartet sein, da es das Netz anlegt.
|
||||
**A) Dashboard läuft als Container auf demselben Server (empfohlen):** Beide hängen im Docker-Netz `p42`,
|
||||
das die `update-docker.sh` beider Projekte bei Bedarf anlegt (Reihenfolge egal). Das Dashboard erreicht den
|
||||
Dienst darin unter **`http://p42-sm:9142`**, ohne offenen Port nach außen. Im Dashboard unter Monitoring
|
||||
→ „+ Server hinzufügen“ → Prüfung „Server-Auslastung (P42-S.M.)“, Adresse `http://p42-sm:9142`, Token aus `.env`.
|
||||
|
||||
**B) Dashboard läuft auf einem anderen Rechner:** In `.env` `SM_BIND` auf die LAN-IP des Servers setzen.
|
||||
Die Adresse lautet dann `http://<server-ip>:9142`. Per Firewall sollte nur der Dashboard-Rechner zugreifen dürfen.
|
||||
@@ -159,7 +147,8 @@ Hinweise zu den Feldern:
|
||||
{
|
||||
"intervalSeconds": 5,
|
||||
"points": [
|
||||
{ "timestamp": "2026-10-14T14:58:59+02:00", "cpuPercent": 5.0, "memoryPercent": 40.9, "load1m": 0.81,
|
||||
{ "timestamp": "2026-10-14T14:58:59+02:00", "cpuPercent": 5.0, "memoryPercent": 40.9, "swapPercent": 0.0,
|
||||
"tempMaxCelsius": 51.0, "load1m": 0.81,
|
||||
"rxBytesPerSec": 2769, "txBytesPerSec": 6111, "readBytesPerSec": 0, "writeBytesPerSec": 2757518 }
|
||||
]
|
||||
}
|
||||
|
||||
@@ -310,6 +310,8 @@ def history_point(snap: dict) -> dict:
|
||||
"timestamp": snap["timestamp"],
|
||||
"cpuPercent": snap["cpu"]["percent"],
|
||||
"memoryPercent": snap["memory"]["percent"],
|
||||
"swapPercent": snap["swap"]["percent"],
|
||||
"tempMaxCelsius": max((t["celsius"] for t in snap["temperatures"]), default=None),
|
||||
"load1m": snap["cpu"]["load"]["1m"],
|
||||
"rxBytesPerSec": snap["network"]["rxBytesPerSec"],
|
||||
"txBytesPerSec": snap["network"]["txBytesPerSec"],
|
||||
|
||||
@@ -21,6 +21,9 @@ if [ ! -f .env ]; then
|
||||
grep '^SM_TOKEN=' .env | cut -d= -f2
|
||||
fi
|
||||
|
||||
# Gemeinsames Netz mit P42-F.W. – wer zuerst startet, legt es an
|
||||
docker network inspect p42 >/dev/null 2>&1 || docker network create p42 >/dev/null
|
||||
|
||||
docker compose up -d --build
|
||||
docker image prune -f >/dev/null
|
||||
|
||||
|
||||
@@ -29,3 +29,4 @@ networks:
|
||||
# unter http://p42-sm:9142, ohne dass ein Port nach außen offen sein muss.
|
||||
p42:
|
||||
name: p42
|
||||
external: true # legt deploy/update-docker.sh bei Bedarf an (auch das von P42-F.W.)
|
||||
Reference in new issue
Block a user