Aufräumen / Bereinigung (clean.sh / node-cleanup.sh)
Wird verwendet, wenn der Speicherplatz knapp wird oder Logs/temporäre Dateien regelmäßig geleert werden sollen.
Im Container-Modus übernimmt das logrotate im Image (cronie + /etc/cron.daily/logrotate) die automatische Bereinigung: daily / size>100M /
gzip nach 14 Tagen (für alle 8 Komponenten-Logs). Die UI-Schaltfläche „Temporäre Bereinigung" erzeugt eine Signal-Datei
(/etc/kopens/host-action.request {"action":"tempClean"}) → kopens-host-action.path auf dem Host
leert /data1/pp-temp/* und startet den Container neu.
Garbage Collection der Docker-Images: Der von install.sh eingerichtete weekly cron (/etc/cron.weekly/plantpulse-cleanup)
bereinigt automatisch Images älter als 30 Tage / dangling Layer / journald-Daten älter als 30 Tage.
1. clean.sh — Logs / temporäre Dateien sammelt löschen
$PE_HOME/bin/clean.sh
Betroffene Objekte (DB- / Benutzerdaten bleiben unangetastet — sicher):
server/logs/*(Tomcat)db/logs/*(Cassandra-Log — sstable-Daten bleiben erhalten)mqtt/log/*timeseries/*/log/*cache/log/*node/log/*/tmp/*
/tmp/* wird komplett geleert — auch temporäre Dateien anderer Benutzerclean.sh leert systemweit auch /tmp. Sockets von ssh-Sitzungen, systemd-private, X11 und temporäre journald-Dateien verschwinden ebenfalls. Außerhalb einer allein betriebenen Gateway-Maschine mit Vorsicht einsetzen.
2. node-cleanup.sh — Cassandra-Speicherplatz zurückgewinnen
$PE_HOME/bin/node-cleanup.sh
Ausgeführte Aktionen:
nodetool clearsnapshot --all— Speicherplatz alter Snapshots zurückgewinnennodetool cleanup— nicht mehr genutzte sstables nach Änderung der Token Range entfernen
Normalerweise ruft start.sh dies automatisch im Hintergrund auf; bei Speicherplatzmangel kann es jedoch manuell zusätzlich ausgeführt werden.
Dauer im Minutenbereich (proportional zur sstable-Menge). Es entsteht eine leichte I/O-Last — empfohlen in Zeiträumen mit geringem Erfassungs-Traffic.
3. Vorgehen bei Speicherplatzmangel (Gesamtablauf)
# 1. 무엇이 차지 중?
df -h
du -sh $PE_HOME/*/log/* /data1/* 2>/dev/null | sort -h | tail -20
# 2. 로그 / 임시 파일 정리
$PE_HOME/bin/clean.sh
# 3. Cassandra 디스크 회수
$PE_HOME/bin/node-cleanup.sh
# 4. 오래된 백업 정리 (30 일 이상)
find /data1/pp-backup -maxdepth 1 -type d -mtime +30 -exec rm -rf {} +
# 5. (옵션) Docker 이미지 / 컨테이너 정리
docker system prune -af
# 6. 결과 확인
df -h
4. Häufige Stolperfallen
| Symptom | Ursache / Lösung |
|---|---|
ssh bricht nach clean.sh plötzlich ab | Auch der ssh-Socket in /tmp/* wurde gelöscht — mit einer neuen Sitzung erneut verbinden |
Auch nach node-cleanup.sh wird kein Speicherplatz frei | sstable-Compaction steht noch aus. Fortschritt mit nodetool compactionstats prüfen |
find /data1/pp-backup -mtime +30 liefert 0 Treffer | Backups existieren nur innerhalb der letzten 30 Tage. Zeitraum anpassen (z. B. -mtime +14) |
5. Weiterführend
- Backup-Automatisierung + Aufbewahrungsdauer: Backup (
backup.sh) - Diagnose des Speicherplatzes: Diagnose / Inspektion