NEWS
ioBroker sehr hohe Diskwrites in Proxmox
-
@robbsen sagte in ioBroker sehr hohe Diskwrites in Proxmox:
ich versuche nach und nach jetzt mal alle Adapter auszuschalten bis ich raushabe was die Last verursache. bei dir ist es ja deutlich geringer
Kannst du mal noch auf deinem System den folgenden Befehl ausführen:
ls -lah /opt/iobroker/iobroker-data
Ich bin mir nämlich fast sicher, dass deine State-Dateien etwa 7 MB gross sind. -
@unclesam Kannst du mir bitte erklären was das aussagt?
Habe es bei mir auch mal eingegeben ohne zu wissen was ich da mache:pi@ioBroker01:~$ ls -lah /opt/iobroker/iobroker-data insgesamt 44M drwxrwxrwx+ 8 iobroker iobroker 4,0K Aug 23 17:45 . drwxrwxrwx+ 9 iobroker iobroker 4,0K Jan 15 11:59 .. drwxrwxrwx+ 2 iobroker iobroker 4,0K Jan 19 15:20 backup-objects drwxrwxrwx+ 154 iobroker iobroker 12K Dez 3 15:20 files drwxrwxrwx+ 540 iobroker iobroker 16K Jan 19 00:00 history -rwxrwxrwx+ 1 iobroker iobroker 3,6K Feb 11 2020 iobroker.json drwxrwxrwx+ 3 iobroker iobroker 4,0K Jan 9 19:14 node-red -rwxrwxrwx+ 1 iobroker iobroker 12M Jan 19 15:20 objects.json -rwxrwxrwx+ 1 iobroker iobroker 12M Jan 19 15:20 objects.json.bak drwxrwxr-x+ 2 iobroker iobroker 4,0K Aug 23 17:45 sayit drwxrwxrwx+ 2 iobroker iobroker 4,0K Nov 29 15:25 sonosCache -rwxrwxrwx+ 1 iobroker iobroker 9,8M Jan 19 15:20 states.json -rwxrwxrwx+ 1 iobroker iobroker 9,8M Jan 19 15:20 states.json.bak
-
Hab mir das bisher nicht angeschaut. Hier mal als Vergleich. Ich habe kein redis in Betrieb.
Bei mir also 5000 GB in 4 Tagen... ca. 600 GB in 12Std.... uiuiuiDisk IO ioBroker
Disk IO InfluxDB
-
-
Bei mir fehlt die Spalte mit der Diskusage.
Habe auch keine Möglichkeit gefunden sie einzublenden. Wie kommt man zu der?
Beim ioBroker sieht es bei mir so aus:
Der Knick nach unten war eine Erhöhung des Datenabfrageintervalls vom Netatmo-Server von 5 Minuten auf 10 Minuten.
-
@homoran sagte in ioBroker sehr hohe Diskwrites in Proxmox:
Kannst du mir bitte erklären was das aussagt?
Deine states.json Dateien sind je knapp 10 MB gross. Jedes mal, wenn sich also im eingestellten Intervall (ich vermute 5 Minuten) mindestens ein State geändert wurde, dann schreibt er die Datei neu. Dasselbe bei Objektänderungen (aber die sind ja selten). Bei Redis sieht man nicht solche Peaks, da eine State Änderung eben nur einen kleinen Wert in der DB ändert (aber dafür nicht alle 5 Minuten, sondern viel häufiger - da kenne ich die Config nicht).
Die Höhe der Peaks sagt nur etwas darüber aus, wie gross die Datei ist. Es spielt keine Rolle, wieviele States geändert werden. Die Häufigkeit der Peaks sagt aus, wie oft sich irgendein State ändert (immer mit dem fixen Intervall) - und das ist in einem "normalen" ioBroker System recht häufig.
-
So sieht mein ioBroker aus... verwende Redis, der ioBroker läuft auf einer SSD.
-
@master67 sagte in ioBroker sehr hohe Diskwrites in Proxmox:
verwende Redis
Danke für die Grafik. Genau, was zu erwarten war bei Redis: viel kleinere, dafür häufigere Writes. In Summe kann das einiges weniger sein als bei File DB.
-
@unclesam Danke für die Erklärung!
Das mit den Schreibvorgängen war mir bewusst, aber ich habe ja gar keine wirklichen Peaks:
-
@unclesam sagte wenn sich also im eingestellten Intervall (ich vermute 5 Minuten) mindestens ein State geändert wurde, dann schreibt er die Datei neu
Voreinstellung ist 30 s.
@unclesam sagte in ioBroker sehr hohe Diskwrites in Proxmox:
Dasselbe bei Objektänderungen (aber die sind ja selten).
Da der Zeitstempel genau so jung ist wie bei der states.json, vermute ich, dass ein Adapter läuft, der immer wieder neue Objekte erzeugt.
@unclesam sagte in ioBroker sehr hohe Diskwrites in Proxmox:
da eine State Änderung eben nur einen kleinen Wert in der DB ändert (aber dafür nicht alle 5 Minuten, sondern viel häufiger - da kenne ich die Config nicht).
Redis schreibt in der Voreinstellung alle 5 Minuten.
-
@paul53 sagte in ioBroker sehr hohe Diskwrites in Proxmox:
Da der Zeitstempel genau so jung ist wie bei der states.json, vermute ich, dass ein Adapter läuft, der immer wieder neue Objekte erzeugt.
Adlerauge!
Aber das passt jetzt hier nicht in den Thread, ich wollte den nicht kapern -
Erstmal danke, ist ja eine spannende Diskussion eingetreten.
Aktuell gehe ich also davon aus, dass ich aus Redis umstellen sollte.Das Problem dürfte aber nicht nur bei Proxmox sondern überall auftreten oder? Würde auch erklären, warum so viele Probleme mit defekten SD Karten haben?
@unclesam sagte in ioBroker sehr hohe Diskwrites in Proxmox:
ls -lah /opt/iobroker/iobroker-data
total 25M drwxrwxr-x+ 9 iobroker iobroker 4.0K Jan 18 15:54 . drwxrwxr-x+ 8 iobroker iobroker 4.0K Jan 19 14:09 .. drwxrwxr-x+ 2 iobroker iobroker 4.0K Jan 19 13:27 backup-objects drwxrwxr-x+ 2 iobroker iobroker 4.0K Jan 8 13:44 eufy-security.0 drwxrwxr-x+ 52 iobroker iobroker 4.0K Jan 18 18:45 files -rw-rwxr--+ 1 iobroker iobroker 4.3K Jan 17 11:35 iobroker.json -rw-rw-r--+ 1 iobroker iobroker 114 Jan 18 17:02 notifications.json -rw-rwxr--+ 1 iobroker iobroker 11M Jan 19 14:14 objects.json -rw-rwxr--+ 1 iobroker iobroker 11M Jan 19 14:14 objects.json.bak -rw-rwxr--+ 1 iobroker iobroker 1.5M Jan 19 14:49 states.json -rw-rwxr--+ 1 iobroker iobroker 1.5M Jan 19 14:49 states.json.bak drwxrwxr-x+ 3 iobroker iobroker 4.0K Jan 17 14:13 tmp drwxrwxr-x+ 2 iobroker iobroker 4.0K Jan 8 14:14 yahka.0.hapdata drwxrwxr-x+ 2 iobroker iobroker 4.0K Jan 8 14:48 zigbee_0
-
@robbsen sagte in ioBroker sehr hohe Diskwrites in Proxmox:
Das Problem dürfte aber nicht nur bei Proxmox sondern überall auftreten oder?
Absolut richtig, ja. Bei Proxmox kann man das nur ganz praktisch auslesen - auf dem Raspi geht das nicht so einfach.
Würde auch erklären, warum so viele Probleme mit defekten SD Karten haben?
Ja, vor allem wenn die SD Karte nicht so gut und nicht so gross ist. Ich verwende schon aus diesem Grund Redis - allerdings bin ich auch in einer VM auf einem NAS - nur meine Slaves laufen auf Raspis, aber dort hatte ich noch nie SD-Karten-Probleme.
-
-
@robbsen Die states.json(.bak) erzeugen einen Disk write von etwa 360 MB/h.
-
-
@robbsen sagte:
1,5 M(B), alle 30 Sekunden?
3 MB alle 30 s (es werden immer 2 Dateien geschrieben). 360 MB/h sind weitaus weniger als 10 GB/h, also kann die hohe Write-Belastung nicht daran liegen.
@robbsen sagte in ioBroker sehr hohe Diskwrites in Proxmox:
Liegt das dann am Theme Redis?
Wenn Redis verwendet wird, werden die Dateien states.json(.bak) nicht verwendet.
-
@paul53 Merci ....
dann heißt es für mich wohl umstellen. In der Proxmox Umgebung ja kein Thema mache mir etwas Sorgen mit meinem Slave Raspberry und dem Multihost.
-
@robbsen sagte in ioBroker sehr hohe Diskwrites in Proxmox:
Erklärt aber auch, warum es meine letzte SSD zerschossen hat
neee,
ich habe einige SBCs laufen und aus lauter Boshaftigkeit mit file/file sowie massivem History-Einsatz auf SD-Karte laufen.
Die laufen teilweise seit Jahren ohne Murren -
@robbsen sagte in ioBroker sehr hohe Diskwrites in Proxmox:
warum ist Redis dann nicht der Standard?
Gute Frage. Weil das eine zusätzliche Applikation zum installieren ist? Ich kann es nur empfehlen.
@robbsen sagte in ioBroker sehr hohe Diskwrites in Proxmox:
dann heißt es für mich wohl umstellen. In der Proxmox Umgebung ja kein Thema mache mir etwas Sorgen mit meinem Slave Raspberry und dem Multihost.
Proxmox umstellen: ja. Slave ist kein Problem: die schreiben ja die Daten nicht auf ihre Disk sondern senden sie zum Master. Ein Slave ist sehr "dumm"
*
, der besitzt ausser der Verbindungskonfig keine Daten.@homoran sagte in ioBroker sehr hohe Diskwrites in Proxmox:
ich habe einige SBCs laufen und aus lauter Boshaftigkeit mit file/file sowie massivem History-Einsatz auf SD-Karte laufen.
Die laufen teilweise seit Jahren ohne MurrenJetzt musst du aber mal verraten, welche genialen SDs du einsetzt! Wenn du jetzt Samsung sagst, dann verstehe ich dich bestens.
*
und da wären wir schon beim Problem der Namensgebung. Dumme Sklaven wollte ich also wirklich nicht sagen.