NEWS
Zu viele Daten in InfluxDB? ioBroker nicht mehr erreichbar.
-
Kurz zum Aufbau:
Ich habe auf meinen Pi den ioBroker mit einer InfluxDB2.0 laufen. Die Daten der InfluxDB werden auf einen 32GB Stick gespeichert (wegen zyklischen Schreiben auf Flash, dann kann bei einem Defekt der Stick getauscht werden und die Installation ist davon unberührt).Die Daten werden über echarts und vis visualisiert. So weit so gut, das lief jetzt mehrere Monate ohne Probleme.
Gestern jedoch war mein ioBroker plötzlich über Netzwerk nicht erreichbar. Also erstmal Reboot. Aber nach ein paar Minuten wieder das gleiche Problem.
in dem Debug waren folgende Einträge zu finden:2024-01-28 13:13:05.303 - warn: influxdb.0 (871) Error in query "from(bucket: "iobroker") |> range(start: 2024-01-28T10:51:05.798Z, stop: 2024-01-28T11:21:05.798Z) |> filter(fn: (r) => r["_measurement"] == "alias.0.Energie.W_Verbrauch") |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value") |> sort(columns:["_time"], desc: false)": RequestTimedOutError: Request timed out 2024-01-28 13:13:05.331 - warn: influxdb.0 (871) Error in query "from(bucket: "iobroker") |> range(start: 2024-01-28T10:51:20.811Z, stop: 2024-01-28T11:21:20.811Z) |> filter(fn: (r) => r["_measurement"] == "alias.0.Energie.W_PV1_in") |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value") |> sort(columns:["_time"], desc: false)": RequestTimedOutError: Request timed out 2024-01-28 13:13:05.370 - warn: influxdb.0 (871) Error in query "from(bucket: "iobroker") |> range(start: 2024-01-28T10:51:20.811Z, stop: 2024-01-28T11:21:20.811Z) |> filter(fn: (r) => r["_measurement"] == "alias.0.Energie.W_Bat") |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value") |> sort(columns:["_time"], desc: false)": RequestTimedOutError: Request timed out 2024-01-28 13:13:05.390 - warn: influxdb.0 (871) Error in query "from(bucket: "iobroker") |> range(start: 2024-01-28T10:51:20.811Z, stop: 2024-01-28T11:21:20.811Z) |> filter(fn: (r) => r["_measurement"] == "alias.0.Energie.W_Verbrauch") |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value") |> sort(columns:["_time"], desc: false)": RequestTimedOutError: Request timed out 2024-01-28 13:13:05.405 - warn: influxdb.0 (871) Error in query "from(bucket: "iobroker") |> range(start: 2024-01-28T10:51:35.812Z, stop: 2024-01-28T11:21:35.812Z) |> filter(fn: (r) => r["_measurement"] == "alias.0.Energie.W_PV1_in") |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value") |> sort(columns:["_time"], desc: false)": RequestTimedOutError: Request timed out 2024-01-28 13:13:05.412 - warn: influxdb.0 (871) Error in query "from(bucket: "iobroker") |> range(start: 2024-01-28T10:51:35.812Z, stop: 2024-01-28T11:21:35.812Z) |> filter(fn: (r) => r["_measurement"] == "alias.0.Energie.W_Bat") |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value") |> sort(columns:["_time"], desc: false)": RequestTimedOutError: Request timed out 2024-01-28 13:13:05.429 - warn: influxdb.0 (871) Error in query "from(bucket: "iobroker") |> range(start: 2024-01-28T10:51:35.812Z, stop: 2024-01-28T11:21:35.812Z) |> filter(fn: (r) => r["_measurement"] == "alias.0.Energie.W_Netz_WR") |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value") |> sort(columns:["_time"], desc: false)": RequestTimedOutError: Request timed out 2024-01-28 13:13:05.674 - warn: influxdb.0 (871) Point could not be written to database: iobroker 2024-01-28 13:13:05.675 - warn: influxdb.0 (871) Error on writePoint("{"value":4640,"time":"2024-01-28T11:22:05.619Z","from":"system.adapter.modbus.0","q":0,"ack":true}): RequestTimedOutError: Request timed out / "Request timed out"" 2024-01-28 13:13:05.727 - warn: influxdb.0 (871) Point could not be written to database: iobroker 2024-01-28 13:13:05.728 - warn: influxdb.0 (871) Error on writePoint("{"value":4640,"time":"2024-01-28T11:22:05.619Z","from":"system.adapter.modbus.0","q":0,"ack":true}): RequestTimedOutError: Request timed out / "Request timed out"" 2024-01-28 13:13:05.746 - warn: influxdb.0 (871) Point could not be written to database: iobroker 2024-01-28 13:13:05.749 - warn: influxdb.0 (871) Error on writePoint("{"value":910,"time":"2024-01-28T11:22:05.626Z","from":"system.adapter.modbus.0","q":0,"ack":true}): RequestTimedOutError: Request timed out / "Request timed out"" 2024-01-28 13:13:05.760 - warn: influxdb.0 (871) Point could not be written to database: iobroker 2024-01-28 13:13:05.761 - warn: influxdb.0 (871) Error on writePoint("{"value":910,"time":"2024-01-28T11:22:05.626Z","from":"system.adapter.modbus.0","q":0,"ack":true}): RequestTimedOutError: Request timed out / "Request timed out"" 2024-01-28 13:13:05.772 - warn: influxdb.0 (871) Point could not be written to database: iobroker 2024-01-28 13:13:05.773 - warn: influxdb.0 (871) Error on writePoint("{"value":0,"time":"2024-01-28T11:22:05.628Z","from":"system.adapter.modbus.0","q":0,"ack":true}): RequestTimedOutError: Request timed out / "Request timed out"" 2024-01-28 13:13:05.780 - warn: influxdb.0 (871) Point could not be written to database: iobroker 2024-01-28 13:13:05.781 - warn: influxdb.0 (871) Error on writePoint("{"value":0,"time":"2024-01-28T11:22:05.628Z","from":"system.adapter.modbus.0","q":0,"ack":true}): RequestTimedOutError: Request timed out / "Request timed out"" 2024-01-28 13:13:05.790 - warn: influxdb.0 (871) Point could not be written to database: iobroker 2024-01-28 13:13:05.791 - warn: influxdb.0 (871) Error on writePoint("{"value":3634,"time":"2024-01-28T11:22:05.631Z","from":"system.adapter.modbus.0","q":0,"ack":true}): RequestTimedOutError: Request timed out / "Request timed out"" 2024-01-28 13:13:05.802 - warn: influxdb.0 (871) Point could not be written to database: iobroker 2024-01-28 13:13:05.803 - warn: influxdb.0 (871) Error on writePoint("{"value":3634,"time":"2024-01-28T11:22:05.631Z","from":"system.adapter.modbus.0","q":0,"ack":true}): RequestTimedOutError: Request timed out / "Request timed out"" 2024-01-28 13:13:05.810 - warn: influxdb.0 (871) Point could not be written to database: iobroker 2024-01-28 13:13:05.811 - warn: influxdb.0 (871) Error on writePoint("{"value":910,"time":"2024-01-28T11:22:05.631Z","from":"system.adapter.modbus.0","q":0,"ack":true}): RequestTimedOutError: Request timed out / "Request timed out"" 2024-01-28 13:13:05.818 - warn: influxdb.0 (871) Point could not be written to database: iobroker 2024-01-28 13:13:05.833 - warn: influxdb.0 (871) Error on writePoint("{"value":18,"time":"2024-01-28T11:22:06.125Z","from":"system.adapter.hm-rpc.1","q":0,"ack":true}): RequestTimedOutError: Request timed out / "Request timed out"" 2024-01-28 13:13:06.210 - error: influxdb.0 (871) Error during ping: Error: connect ECONNREFUSED 127.0.0.1:8086. Attempting reconnect. 2024-01-28 13:13:06.298 - info: modbus.0 (1016) Disconnected from slave 192.168.2.78 2024-01-28 13:13:06.233 - warn: influxdb.0 (871) Error in query "from(bucket: "iobroker") |> range(start: 2024-01-28T10:51:35.812Z, stop: 2024-01-28T11:21:35.812Z) |> filter(fn: (r) => r["_measurement"] == "alias.0.Energie.W_Verbrauch") |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value") |> sort(columns:["_time"], desc: false)": Error: connect ECONNREFUSED 127.0.0.1:8086 2024-01-28 13:13:06.238 - warn: influxdb.0 (871) Error in query "from(bucket: "iobroker") |> range(start: 2024-01-28T11:21:05.799Z) |> filter(fn: (r) => r["_measurement"] == "alias.0.Energie.W_Verbrauch") |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value") |> group() |> sort(columns: ["_time"], desc: false) |> limit(n: 1)": Error: connect ECONNREFUSED 127.0.0.1:8086 2024-01-28 13:13:06.239 - error: influxdb.0 (871) getHistory: Error: 3 Error happened while processing 3 queries 2024-01-28 13:13:06.255 - warn: influxdb.0 (871) Error in query "from(bucket: "iobroker") |> range(start: 2024-01-28T11:21:20.812Z) |> filter(fn: (r) => r["_measurement"] == "alias.0.Energie.W_PV1_in") |> pivot(rowKey:["_time"], columnKey: ["_field"], valueColumn: "_value") |> group() |> sort(columns: ["_time"], desc: false) |> limit(n: 1)": Error: connect ECONNREFUSED 127.0.0.1:8086 2024-01-28 13:13:06.255 - error: influxdb.0 (871) getHistory: Error: 3 Error happened while processing 3 queries
Zum Glück hatte ich schon einen zweiten Stick (mit wenig Daten) vorbereitet, so dass jetzt erstmal wieder alles läuft.
Die Frage ist natürlich, was ist da los, nicht dass es in ein paar Monaten das Gleiche Problem gibt.
Enthält eine InfluxDB evtl. zu viele Daten? (ca. 170MB auf dem Stick, also der Stick ist nicht voll)
Habt Ihr einen Tipp für mich?
-
@stealthangel Ich meine mal gelesen zu haben, dass ein USB-Stick für solche Zwecke (dauerhaft angeschlossen, ständige Schreibvorgänge) eben gerade nicht geeignet ist und da noch weniger Lebenszeit aufweist als eine SD-Karte. Ich würde alles (Betriebssystem und influx-Daten) auf eine SSD am Raspi schieben und gut.
Gruss, Jürgen
-
@wildbill werde ich mir mal ansehen, ändert aber vermutlich nichts an dem Problem....
-
@stealthangel sagte in Zu viele Daten in InfluxDB? ioBroker nicht mehr erreichbar.:
Zum Glück hatte ich schon einen zweiten Stick (mit wenig Daten) vorbereitet, so dass jetzt erstmal wieder alles läuft.
Ich denke, du solltest mal mit
ncdu
auf dem stick schauen wo die dicken Brocken liegen. Das log interpretiere ich dahingehend, dass der Stick tatsächlich voll ist.sudo apt update sudo apt install ncdu ncdu /
Mit den Pfeiltasten wird navigiert, mit
q
kommst du raus. -
@meister-mopper said in Zu viele Daten in InfluxDB? ioBroker nicht mehr erreichbar.:
Ich denke, du solltest mal mit
ncdu
....Erstmal Danke für Deine Antwort. Mein Backup-System hat leider kein zugriff zum Internet. Deshalb hab ich mal so nachgesehen:
iobroker@iobroker:~ $ df -h Filesystem Size Used Avail Use% Mounted on udev 1.6G 0 1.6G 0% /dev tmpfs 380M 1.2M 379M 1% /run /dev/mmcblk0p2 59G 4.5G 51G 9% / tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 5.0M 16K 5.0M 1% /run/lock /dev/mmcblk0p1 510M 61M 450M 12% /boot/firmware /dev/sda1 29G 121M 27G 1% /var/lib/influxdb tmpfs 380M 0 380M 0% /run/user/1000 iobroker@iobroker:~ $ sudo du -sh /var/lib/influxdb/ sudo: unable to resolve host iobroker: Temporary failure in name resolution 76M /var/lib/influxdb/ iobroker@iobroker:~ $ df -h /var/lib/influxdb/ Filesystem Size Used Avail Use% Mounted on /dev/sda1 29G 76M 27G 1% /var/lib/influxdb iobroker@iobroker:~ $ sudo ls -lha /var/lib/influxdb/ sudo: unable to resolve host iobroker: Temporary failure in name resolution total 284K drwxr-x--- 5 influxdb influxdb 4.0K Jan 28 2024 . drwxr-xr-x 27 root root 4.0K Nov 14 11:54 .. drwxr-x--- 3 influxdb influxdb 4.0K Dec 2 15:20 .cache drwxr-x--- 5 influxdb influxdb 4.0K Dec 3 16:51 engine -rw------- 1 influxdb influxdb 128K Dec 15 10:08 influxd.bolt -rw-r----- 1 influxdb influxdb 4 Dec 15 10:07 influxd.pid -rw-r----- 1 influxdb influxdb 120K Dec 2 15:20 influxd.sqlite drwxrwxrwx 2 influxdb influxdb 16K Nov 6 14:52 lost+found -rwxrwxrwx 1 influxdb influxdb 22 Nov 6 15:30 test.txt iobroker@iobroker:~ $
Ich würde sagen, das ist weit weg von voll...
-
@stealthangel sagte in Zu viele Daten in InfluxDB? ioBroker nicht mehr erreichbar.:
Mein Backup-System hat leider kein zugriff zum Internet.
Wie sieht denn dieses Backup-System aus?
@stealthangel sagte in Zu viele Daten in InfluxDB? ioBroker nicht mehr erreichbar.:
iobroker@iobroker
ich denke mal, dass es kritisch ist, einen user iobroker einzurichten, wenn bei der Installation von ioBroker ohnehin ein Systemuser iobroker eingerichtet wird.
Da gibt es möglicherweise schon per se eine Kutzel in die Rechteverwaltung.
Ich würde das schnell rückgängig machen.
-
@meister-mopper said in Zu viele Daten in InfluxDB? ioBroker nicht mehr erreichbar.:
Wie sieht denn dieses Backup-System aus?
Ist eine exakte Kopie des Produktiv Systems und liegt normaler Weise in der Schublade.
Zum Testen betreibe ich es manchmal ein einem extra Netzwerk ohne Sensoren / Aktoren und auch ohne Zugriff zum Internet, damit das Backup System das Produktiv System nicht beeinflussen kann.@stealthangel sagte in Zu viele Daten in InfluxDB? ioBroker nicht mehr erreichbar.:
iobroker@iobroker
ich denke mal, dass es kritisch ist, einen user iobroker einzurichten, wenn bei der Installation von ioBroker ohnehin
Ich glaube nicht, dass das der Grund sein wird. Das System ist vorher gut 6 Monate fehlerfrei gelaufen.
Wäre es ein Rechte Problem hätte es bestimmt schon öfter Probleme gegeben.... -
@stealthangel sagte in Zu viele Daten in InfluxDB? ioBroker nicht mehr erreichbar.:
sudo: unable to resolve host iobroker: Temporary failure in name resolution
Du hast eh ein Problem in deinem Netzwerk. Hast du den hostname von der Kiste mal versucht zu ändern?
ich denke mal, dass es kritisch ist, einen user iobroker einzurichten, wenn bei der Installation von ioBroker ohnehin ein Systemuser iobroker eingerichtet wird.
Der systemuser 'iobroker' ist etwas anders aufgesetzt als ein Standarduser.
cat /etc/passwd | sort
zeigt dir die user und wie die ticken.
-
@thomas-braun said in Zu viele Daten in InfluxDB? ioBroker nicht mehr erreichbar.:
@stealthangel sagte in Zu viele Daten in InfluxDB? ioBroker nicht mehr erreichbar.:
sudo: unable to resolve host iobroker: Temporary failure in name resolution
Du hast eh ein Problem in deinem Netzwerk. Hast du den hostname von der Kiste mal versucht zu ändern?
In meinem Produktiv System habe ich kein Netzwerk Problem. (Dieser Fehler tritt nur beim Backup System auf, da da die Komponenten mit einem "dummen" Netzwerk Hub verbunden sind)
ich denke mal, dass es kritisch ist, einen user iobroker einzurichten, wenn bei der Installation von ioBroker ohnehin ein Systemuser iobroker eingerichtet wird.
Ich bin dieser Anleitung gefolgt:
ioBroker installieren in nur 5 MinutenDer systemuser 'iobroker' ist etwas anders aufgesetzt als ein Standarduser.
cat /etc/passwd | sort
zeigt dir die user und wie die ticken.
Liefert bei mir:
iobroker@iobroker:~ $ cat /etc/passwd | sort _apt:x:42:65534::/nonexistent:/usr/sbin/nologin avahi:x:104:110:Avahi mDNS daemon,,,:/run/avahi-daemon:/usr/sbin/nologin backup:x:34:34:backup:/var/backups:/usr/sbin/nologin bin:x:2:2:bin:/bin:/usr/sbin/nologin daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin dnsmasq:x:105:65534:dnsmasq,,,:/var/lib/misc:/usr/sbin/nologin games:x:5:60:games:/usr/games:/usr/sbin/nologin influxdb:x:999:992::/var/lib/influxdb:/bin/false iobroker:x:1000:1000:,,,:/home/iobroker:/bin/bash irc:x:39:39:ircd:/run/ircd:/usr/sbin/nologin list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin mail:x:8:8:mail:/var/mail:/usr/sbin/nologin man:x:6:12:man:/var/cache/man:/usr/sbin/nologin messagebus:x:100:107::/nonexistent:/usr/sbin/nologin news:x:9:9:news:/var/spool/news:/usr/sbin/nologin nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin polkitd:x:996:996:polkit:/nonexistent:/usr/sbin/nologin proxy:x:13:13:proxy:/bin:/usr/sbin/nologin root:x:0:0:root:/root:/bin/bash _rpc:x:101:65534::/run/rpcbind:/usr/sbin/nologin sshd:x:102:65534::/run/sshd:/usr/sbin/nologin statd:x:103:65534::/var/lib/nfs:/usr/sbin/nologin sync:x:4:65534:sync:/bin:/bin/sync systemd-network:x:998:998:systemd Network Management:/:/usr/sbin/nologin systemd-timesync:x:997:997:systemd Time Synchronization:/:/usr/sbin/nologin sys:x:3:3:sys:/dev:/usr/sbin/nologin uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
Aber meine Linux Kenntnisse reichen nicht aus um das zu interpretieren
-
@stealthangel sagte in Zu viele Daten in InfluxDB? ioBroker nicht mehr erreichbar.:
Da fehlt ein default user abseits von
iobroker
Und die yt-Anleitung ist mal wieder freundlich gesagt 'ungünstig', weil da nicht die Lite-Version sondern der volle Desktop-Zirkus installiert wird. Die eigentliche Installation hab ich mir dann schon gar nicht mehr angeschaut, genug gesehen...
-
@thomas-braun said in Zu viele Daten in InfluxDB? ioBroker nicht mehr erreichbar.:
Und die yt-Anleitung... weil da nicht die Lite-Version sondern der volle Desktop-Zirkus installiert wird...
Ich habe schon drauf geachtet das "Raspberry Pi OS Lite (64-bit) Bullseye with no desktop enviroment zu nehmen.
Aber wie schon geschrieben, wenn es ein Rechte oder Netzwerk Problem wäre, hätte das System wohl nicht 6 Monate fehlerfrei gelaufen...
-
Die Rechte/die User sind jedenfalls nicht wie vorgesehen.
6 Monate irgendwas hin oder her.