Lebenszeitende des Raspi3 mit SSD oder nur RAM Speichermangel

Begonnen von Rewe2000, 21 Januar 2022, 20:20:28

Vorheriges Thema - Nächstes Thema

Rewe2000

Hallo,

ich bräuchte mal wieder euere Hilfe.

Auf meinem Raspi3 mit SSD und Debian Buster Lite, läuft Fhem mit DbLog und FUIP seit nun nahezu 4 Jahren, mittlereweile ist Fhem auch kontinuierlich gewachsen.
Grundsätzlich habe ich keinerlei Freeze während des Betriebes, abgesehen von einigen wenigen (2-3) Hängern von unter 1,5 Sekunden pro Tag. Meine Readings sollten grundsätzlich auch nicht zu viele Daten senden, zumindest wenn ich den EventMonitor betrachte kann ich da keine Datenmenge feststellen, welche zu Problemen führen sollte.

Versuche ich mir aber unter Fhem auf einer Seite (nur in letzter Zeit) einige Charts darzustellen, so friert mein Fhem für ca. 150-200 Sekunden ein, in dieser Zeit ist auch der Raspi über SSH nicht mehr erreichbar. Betrachte ich keine Charts mehr, so würde Fhem ohne Freeze weiterlaufen, bis zu dem Punkt, wo ich mir erneut in Fhem Charts anzeigen lasse. Führe ich nun in Fhem ein "shutdown restart" aus oder starte gleich den Raspi3 komplett, so kann ich mir ab diesen Zeitpunkt wieder für einige Tage selbs üppige Charts ohne Freeze ansehen.

So wie es sich für mich darstellt, stellen sich da Speicherprobleme am Raspi3 bei mir ein. Könnt Ihr mir da ein paar Tips geben, wie ich das Problem beseitigen könnte und wie ich euch die passenden Daten liefern kann, damit ihr mir hier weiterhelfen könnt.

Im Hintergrund läuft bei mir "sysmon" mit, der Speicher zeigt bei mir folgenden Zustand (siehe Anhang), kurz vor dem Neustart vor 20:00 Uhr, nachdem ich erneut Probleme mit den Freeze habe.

Kann ich da sinvollerweise etwas an der Speicheraufteilung ändern, ist das beim Raspi3 überhaupt möglich?
Stirbt da vermutlich in nächster Zeit mein Raspi3 oder ist dieser zu Leistungsschwach?
Was würdet Ihr mir epfehlen zu unternehmen um mein "Problem" in den Griff zu bekommen, ich will nicht solange warten bis überhaupt nichts mehr geht.

Gerne liefere ich mehr Infos.
Gruß Reinhard
Fhem 6.3 auf Raspberry Pi4 SSD mit Raspbian Bookworm, Homematic, Homematic IP, CCU3 mit RapberryMatic, WAGO 750-880, E3DC S10E Hauskraftwerk, E3DC Wallbox, my-PV AC ELWA-E Heizstab, Fritz!Box 7590, KIA Bluelinky

fiedel

#1
Hi Reinhard,

nach deinen Screenshots ist der Swap auch vollgelaufen. Das verlangsamt den Rechner stark.
Installiere dir mal "htop" auf der Shell und prüfe, was da so viel Speicher belegt.
Besser wäre wenn der Swap erst gar nicht gebraucht würde.
Bei meinem Dell Thin Client mit 4GB Ram und 16 GB Mini- SSD sieht sysmon momentan so aus:

Date: 22.01.2022 10:30:53
CPU temperature: 26.8 °C
CPU frequency: 752 MHz
CPU model name: Intel(R) Celeron(R) CPU N2807 @ 1.58GHz
System up time: 22 days, 23 hours, 50 minutes
FHEM up time: 8 days, 14 hours, 39 minutes
Load average: 0.07 0.04 0.04
RAM: Total: 3808.84 MB, Used: 548.21 MB, 14.39 %, Free: 176.50 MB
swap: Total: 976.00 MB, Used: 0.50 MB, 0.05 %, Free: 975.50 MB
Ethernet: RX: 2025.62 MB, TX: 3073.35 MB, Total: 5098.97 MB
Root: Total: 13966 MB, Used: 7017 MB, 54 %, Available: 6219 MB at /
USB-Festplatte: Total: 233707 MB, Used: 150709 MB, 68 %, Available: 71059 MB at /media/debsrv_data
Log: Total: 93 MB, Used: 33 MB, 39 %, Available: 53 MB at /var/log




Gruß
Frank
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

MadMax-FHEM

Zitat
Auf meinem Raspi3 mit SSD und Debian Buster Lite, läuft Fhem mit DbLog und FUIP seit nun nahezu 4 Jahren,

das glaube ich nicht, Buster ist erst seit Juli 2019 raus ;)

Seit wann hast du SSD?

Was bei einem PI3 mit SSD hilft/"notwendig" ist (/boot/config.txt):


# because of SSD-boot
#dtoverlay=sdtweak,poll_once
dtparam=sd_poll_once


dtoverlay war glaube ich bis Buster, ab Buster dann dtparam...

Wenn das nicht eingetragen ist (bin kürzlich auf Bulleye hochgezogen und hatte das "vergessen" einzutragen), dann gibt es immer "Worker", die zusätzlich CPU ziehen und irgendwie ist mir da dann auch immer SWAP genutzt worden.

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Rewe2000

Hallo Joachim,

du hast mich erwischt, da hatte ich gelogen :D.

Ich habe Fhem auf einem Raspi3 unter Jessi oder Stretch mit SD-Card vor ca. 4-5 Jahren begonnen, dann nur über "Update" auf Buster gewechselt. Irgendwann nach Kauf meiner CCU3 (jetzt Raspberrymatic), nach vielen Schwierigkeiten beim Neustart in Verbindung mit der CCU und dem leidigen "Cannot fork: Cannot allocate memory | BlockingInformParent" Fehler habe ich dann Buster komplett auf einer SSD neu aufgesetzt. Mein "Cannot fork: Cannot allocate memory | BlockingInformParent" Fehler ist aber erneut wieder aufgetreten, erst als ich "apptime" entfernt hatte, läuft mein System bisher problemlos.

Mir war zwischendurch mal aufgefallen, dass mein SWAP-Speicher anscheinend nicht mehr genutzt wurde und hatte dazu einen Forenbeitrag geschrieben https://forum.fhem.de/index.php/topic,96339.msg893366.html#msg893366, nach einigen Wochen war der SWAP aber bis zum heutigen Tag, nach einem Neustart nur nach wenigen Tagen wieder komplett belegt (zustand nach ca. 17 Stunden siehe Screenshot). Dies ist vermutlich auch die Ursache für mein Freeze Problem.

Ich bin mir nur nicht sicher was ich machen soll, entweder Fehlersuche weshalb der SWAP so vollläuft oder als erstes mal Bullseye neu aufsetzen und erst dann suchen, wenn der Fehler noch bestehen sollte. Ich würde fast zu Bullseye tendieren, denn das wollte ich eh in nächster Zeit angehen.

In meiner /boot/config.txt steht folgendes:
# Enable audio (loads snd_bcm2835)
dtparam=audio=on

[pi4]
# Enable DRM VC4 V3D driver on top of the dispmanx display stack
dtoverlay=vc4-fkms-v3d
max_framebuffers=2

[all]
#dtoverlay=vc4-fkms-v3d
program_usb_boot_mode=1



Gib mir doch nochmals einen Tipp, benötige ich denn auf einem "Lite" System überhaupt "dtparam=audio=on"?
Ich habe ja eigentlich keine Audioausgabe Hardware, das einzige was ich verwende ist das Fhem Modul "Text2Speech" und "SIP" was Sprachausgabe über an der FritzBox angeschlossene Telefone ermöglicht.
Sollte ich das "audio=on" durch "=sd_poll_once" ersetzen oder müssen beide Abweisungen in die config Datei.

Ihr merkt schon, mein Linux Wissen sehr begrenzt.

@Frank: Die Ausgabe von "htop" hänge ich dann mal an, wenn sich mein SWAP wieder gefüllt hat, jetzt nach einem Tag nach Neustart sollte es keine Probleme geben.

Danke für euere Unterstützung
Gruß Reinhard
Fhem 6.3 auf Raspberry Pi4 SSD mit Raspbian Bookworm, Homematic, Homematic IP, CCU3 mit RapberryMatic, WAGO 750-880, E3DC S10E Hauskraftwerk, E3DC Wallbox, my-PV AC ELWA-E Heizstab, Fritz!Box 7590, KIA Bluelinky

MadMax-FHEM

#4
Ich weiß ja nicht, was du plötzlich mit "audio" um die Ecke kommst und das hat NICHTS!! mit dem poll_once zu tun!

Suche doch mal nach poll_once!

Dadurch wird nicht dauernd nach einer SD-Karte gepollt -> unnötige Systemlast, weil es ist ja KEINE da -> SSD.

Einfach so wie ich es vorgegeben habe in die config.txt einfügen (bei Buster aufwärts kannst du den auskommentierten Teil auch weglassen)...
Und dann booten.

Ich habe halt bemerkt/mich gewundert, dass eben wieder zusätzliche "Worker" CPU Last erzeugen und mein SWAP genutzt wird.
Nach dem Eintrag war es weg.

Da ich IMMER wenn ich "umsteige" komplett frisch aufsetze (von hochgezogenen Systemen halte ich nichts: von Jessie nach Stretch wurde beispielsweise von initd auf systemd umgestellt / nur ein Beispiel), hatte ich das eben auf einer SD vorbereitet und dann beim "Umzug" auf die SSD eben "vergessen" die Einträge wieder reinzunehmen...

Die Speicherfresser "in fhem": da gibt es ja diverse Threads dazu. Und es gibt dazu keine eindeutige Lösung.
EDIT: ich hatte mit Jessie keine Probleme, mit Stretch dann schon, Buster war wieder ok und nun Bullseye auch ok.

Gruß, Joachim

P.S.: was man in die config.txt eintragen kann findet man u.a. im Ordner "Overlays"... Man kann da nicht einfach "lustig" Dinge "erfinden"... ;) Und ab und an ändert sich auch mal was (siehe eben mein Eintrag: vor Buster der "obere" nach/ab Buster der "untere")...
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Rewe2000

Hallo Joachim,

war mir schon klar, dass "audio" nichts mit dem "poll_once" zu tun hat, war mir nur nicht sicher ob 2 oder mehr Statements mit "dtparam" möglich sind.

Ich habe jetzt in meiner /boot/config.txt Datei das "dtparam=sd_poll_once" wie folgt hinzugefügt und den Raspi neu gestartet, ich hoffe das passt so.


# Enable audio (loads snd_bcm2835)
dtparam=audio=on
dtparam=sd_poll_once

[pi4]
# Enable DRM VC4 V3D driver on top of the dispmanx display stack
dtoverlay=vc4-fkms-v3d
max_framebuffers=2

[all]
#dtoverlay=vc4-fkms-v3d
program_usb_boot_mode=1


Ich werde die SWAP Auslastung mal beobachten und mich melden, wenn der SWAP Speicher zu stark ausgelastet wird.

Gruß Reinhard
Fhem 6.3 auf Raspberry Pi4 SSD mit Raspbian Bookworm, Homematic, Homematic IP, CCU3 mit RapberryMatic, WAGO 750-880, E3DC S10E Hauskraftwerk, E3DC Wallbox, my-PV AC ELWA-E Heizstab, Fritz!Box 7590, KIA Bluelinky

Wernieman

Die frage ist .. hast Du außer FHEM noch etwas auf dem System?
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

MadMax-FHEM

Zitat von: Rewe2000 am 22 Januar 2022, 14:27:45
war mir schon klar, dass "audio" nichts mit dem "poll_once" zu tun hat, war mir nur nicht sicher ob 2 oder mehr Statements mit "dtparam" möglich sind.

Hallo Reinhard,

wollte nur sicher gehen...
...aber die 2te Frage zeigt, dass es schon sinnvoll war das sicherzustellen.

Wie geschrieben: man kann da (config.txt) nicht "einfach" was reinschreiben oder gar "erfinden".
Was geht: Internet/Raspberry PI Forum oder eben im Ordner /boot/Overlays


Zitat von: Rewe2000 am 22 Januar 2022, 14:27:45
Ich habe jetzt in meiner /boot/config.txt Datei das "dtparam=sd_poll_once" wie folgt hinzugefügt und den Raspi neu gestartet, ich hoffe das passt so.


# Enable audio (loads snd_bcm2835)
dtparam=audio=on
dtparam=sd_poll_once

[pi4]
# Enable DRM VC4 V3D driver on top of the dispmanx display stack
dtoverlay=vc4-fkms-v3d
max_framebuffers=2

[all]
#dtoverlay=vc4-fkms-v3d
program_usb_boot_mode=1


Interessant ist halt was als "Section" oben drüber steht.
Es gibt ja Einträge die wirken nur bei PI4 oder Einträge die für "alle" gelten.
Ich schreibe das (daher) immer ans Ende der Datei.
Dann weiß ich, dass es für alle gilt (meist ist [all] der letzte Eintrag) und ich kann auch leicht MEINE Einträge wiederfinden, drum kommentiere ich die ja auch...


Zitat von: Rewe2000 am 22 Januar 2022, 14:27:45
Ich werde die SWAP Auslastung mal beobachten und mich melden, wenn der SWAP Speicher zu stark ausgelastet wird.

Ob es an der SWAP Auslastung (direkt) was ändert: keine Ahnung.

Bei mir wurde eben (unnötigerweise) SWAP verwendet seit Umstieg auf Bullseye, dachte daher zunächst es hat was damit zu tun.
Dann sind mir eben (wieder) die Worker aufgefallen und ich habe mich an den Eintrag erinnert...

Seit ich den wieder drin habe, habe ich halt die unnötige Belastung der Worker nicht (mehr) und auch keinen SWAP mehr...

Und klar: bzgl. Speicher und Leistung ist nat. auch wichtig zu schauen was sonst noch drauf läuft. Bei mir halt nur fhem 8)

Viel Erfolg, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

betateilchen

Kann mal bitte jemand den Schreibfehler Lebenzzeit im Threadtitel korrigieren? Danke.

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Rewe2000

Hallo,

@Wernieman: Nein nur Fhem mit DbLog und FTUI, auf dem Raspi3 MariaDB (für Fhem) und Apace Server zur Bereitstellung von Dokumenten für Fhem und FTUI.
@Joachim: Habe es jetzt unter Section [all] eingefügt, somit sollte es passen und auch immer ausgeführt werden.
@betateilchen: Sorry ist irgendwie bei mir untergegangen, habe mich nur auf die Formulierung konzentriert und nicht mehr auf den Titel geschaut. Habs geändert.

Danke für eure Hilfe, ich beobachte mal und melde mich hier wieder wenn der SWAP erneut wächst, bevor ich einen Neustart ausführe, eventuell kann ich ja mit htop was erkennen.


Gruß Reinhard
Fhem 6.3 auf Raspberry Pi4 SSD mit Raspbian Bookworm, Homematic, Homematic IP, CCU3 mit RapberryMatic, WAGO 750-880, E3DC S10E Hauskraftwerk, E3DC Wallbox, my-PV AC ELWA-E Heizstab, Fritz!Box 7590, KIA Bluelinky

fiedel

FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

Rewe2000

Hallo Frank,

danke für den Tipp, bisher dachte ich davon wären nur Windows Server betroffen.

Muss ich mir da überhaupt Gedanken machen, wenn mein gesamtes System nur hinter der Firewall (FritzBox) betrieben wird und überhaupt nicht von außen erreichbar ist?
Will ich mich mit Fhem von extern verbinden, verwende ich ausschließlich VPN, nur von meinem Handy.
Linux Debian Buster halte ich immer aktuell (Update ca. alle 2 Wochen), oder meinst du ich sollte Apache aktuell entfernen, was gäbe es für Alternativen?
Hier in Fhem gibt es dazu ja auch eine Diskussion: https://forum.fhem.de/index.php/topic,124755.msg1193084.html#msg1193084

Ich benötige den Server nur um im Heimnetz ausschließlich für Bilder für die FUIP Oberfläche und meinen Kalender für Fhem.

Wenn du meinst die Lösung für das "Log4j" Problem bei mir wird größer, so würde ich hierzu einen eigenen Beitrag anlegen, damit es hier nicht zu sehr OT wird.

Gruß Reinhard
Fhem 6.3 auf Raspberry Pi4 SSD mit Raspbian Bookworm, Homematic, Homematic IP, CCU3 mit RapberryMatic, WAGO 750-880, E3DC S10E Hauskraftwerk, E3DC Wallbox, my-PV AC ELWA-E Heizstab, Fritz!Box 7590, KIA Bluelinky

MadMax-FHEM

[OT]

Zitat von: fiedel am 22 Januar 2022, 22:47:57
Der Apache ist übrigens von Log4j betroffen.


Das stimmt ja so auch nicht einfach...

Log4j ist von der Apache Foundation (so wie auch der Webserver und weitere) aber (soweit mir bekannt) nutzt der Apache Webserver das selbst ja nicht...
...daher: Apache ist nicht einfach Apache...

Gruß, Joachim

[/OT]
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Wernieman

Log4j ist ein Java-Problem (Es funktioniert wie Spezifiziert ... nur war die Spezifikation "blöde")

Verstehe Deine Aussage nicht richtig:
Zitat@Wernieman: Nein nur Fhem mit DbLog und FTUI, auf dem Raspi3 MariaDB (für Fhem) und Apace Server zur Bereitstellung von Dokumenten für Fhem und FTUI.

Hast Du jetzt 2 Pis? Und auf welchem hast DU Probleme?
oder hast DU doch auf dem Pi fhem + DB + .....??
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Rewe2000

Sorry Wernieman,

da habe ich mich unverständlich ausgedrückt.
Ich habe nur einen einzigen Raspi3, auf diesem ist Fhem, MariaDB und ein Apache Server installiert, alles wird aber ausschließlich von Fhem verwendet.
Es stimmt, die SQL-Datenbank und der Server könnte ja auch auf einen anderen Rechner liegen und von Fhem aus verwendet werden.
Meine SQL-Datenbank ist unter 500 MB und enthält so um die 1,6 Mi. Einträge (ist ziemlich konstant seit ca. 2 Jahren).
Mein Apache Server enthält aktuell ca. 2 MB an Dateien.

Aktuell sieht der SWAP nach ca. 24 Stunden Laufzeit wie folgt aus:
pi@Fhem-Buster-SSD:~ $ free
              total        used        free       shared   buff/cache   available
Mem:         945368      462752      195004        2884      287612      422844
Swap:        102396       21416       80980


Gruß Reinhard
Fhem 6.3 auf Raspberry Pi4 SSD mit Raspbian Bookworm, Homematic, Homematic IP, CCU3 mit RapberryMatic, WAGO 750-880, E3DC S10E Hauskraftwerk, E3DC Wallbox, my-PV AC ELWA-E Heizstab, Fritz!Box 7590, KIA Bluelinky