Load & RAM steigt mit der Zeit, nach Neustart fhem deutlich niedriger

Begonnen von FhemPiUser, 14 Februar 2021, 18:34:12

Vorheriges Thema - Nächstes Thema

FhemPiUser

Bei mir steigt langsam Load und insbesondere RAM von fhem über die Zeit (mehrere Wochen). Nach einem Neustart ("shutdown restart") von fhem kann man deutlich eine Reduzierung erkennen.

Anbei ein Screenshot von Load und RAM nach einem Neustart um 17 Uhr nachdem fhem ca. 2 Monate lief.

Der Screenshot der RAM-Nutzung über mehrere Wochen zeigt einen scheinbar langsamen, aber stetigen Anstieg.

Hat jemand eine Idee, wie man die Ursache herausfinden kann?

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

FhemPiUser

#2
ok, wenn das normal ist kann ich mich ja wieder hinlegen.
Aber gefühlt reagiert fhem auch wieder schneller nach einem Neustart.

Wernieman

Das der Load Steigt, kann ich nicht sehen. Eher wäre die Frage, wie sieht es mit der CPU-Auslastung aus?
der "load" bedeutet nur, die Anzahl der auf IO Wartenden Prozesse https://de.wikipedia.org/wiki/Load
Damit sagt die Load nichts über die Belastung eines Systemes aus.

Wegen Speichermanagment hat CoolTux schon etwas geschrieben, habe nichts weiter zuzufügen

Zitatgefühlt reagiert fhem auch wieder schneller
Da solltest Du lieber Messen. Schon das man etwas Tut, kann ein positives Feedback bei einem hervorrufen.

Was Du leider nicht schreibst, was ist es denn für ein System und was läuft da alles drauf?
- 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

FhemPiUser

Das ist ein Raspberry 3B+, auf dem fhem mit 1160 entities läuft.

Wernieman

Und sonst nichts?
Und auch kein betriebsystem?

Bitte um Input für Output
- 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

FhemPiUser

#6
nein, nur fhem (aber eben mit >1000 devices inkl ca 15 presence/ping devices, mailcheck/sendmail, viele httpmods, doifs, frm, hmuartlgw/hmlan etc), sonst nichts. Das OS ist raspian.

Wernieman

- 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

FhemPiUser

#8
raspian 10 (buster)

cpu auslastung geht nach dem neustart auch etwas runter, aber die reduzierung des loads ist noch deutlicher (siehe screenshots).

den peak um kurz vor 19 uhr bitte ignorieren, da habe ich fhem stark belastet durch rauszoomen in graphen.

Wernieman

Das hört sich nach einem anderen Problem an ... hast Du DNS-Server in Deinem FHEM gesetzt?
- 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

FhemPiUser

#10
ja, in dhcpcd.conf steht:

static domain_name_servers=212.82.226.212 194.150.168.168

ersteren zeigt auch nslookup auf dem raspberry als aktuelle dns server an

ansonsten wird ein pihole als dns server über dhcp vom router im netz verteilt, aber ich wollte fhem nicht vom pihole abhängig machen...

inwiefern kann das provlem mit dns zusammenhängen?

MadMax-FHEM

Wernieman sprach vom Attribut dnsServer bei global in fhem...
https://wiki.fhem.de/wiki/Global

Nicht von Einstellungen auf OS-Ebene... ;)

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)

FhemPiUser

#12
ahh, ok.

Ja, das attr dnsServer in global ist auch gesetzt auf die Adresse meines Openwrt-Routers.

Hatte ich mal gesetzt, um blocking Aufrufe zu vermeiden.

Wernieman

Du könntest nmal gucken, wie viele Prozesse auf Deinem Server laufen ...
- 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

FhemPiUser

Die Anzahl fhem-Prozesse schwankt zwischen 1 bis 10 und scheinen ursächlich hauptsächlich die ping-Prozesse von den presence / lan-ping devices zu sein.

Ansonsten liefert ein

ps ax | wc -l

Werte zwischen ca. 100 und 115

PID TTY      STAT   TIME COMMAND
    1 ?        Ss     2:27 /lib/systemd/systemd --system --deserialize 18
    2 ?        S      0:09 [kthreadd]
    3 ?        I<     0:00 [rcu_gp]
    4 ?        I<     0:00 [rcu_par_gp]
    8 ?        I<     0:00 [mm_percpu_wq]
    9 ?        S     11:46 [ksoftirqd/0]
   10 ?        I     52:50 [rcu_sched]
   11 ?        I      0:00 [rcu_bh]
   12 ?        S      3:13 [migration/0]
   13 ?        S      0:00 [cpuhp/0]
   14 ?        S      0:00 [cpuhp/1]
   15 ?        S      3:02 [migration/1]
   16 ?        S      1:55 [ksoftirqd/1]
   19 ?        S      0:00 [cpuhp/2]
   20 ?        S      2:51 [migration/2]
   21 ?        S      2:05 [ksoftirqd/2]
   24 ?        S      0:00 [cpuhp/3]
   25 ?        S      2:42 [migration/3]
   26 ?        S      3:33 [ksoftirqd/3]
   29 ?        S      0:00 [kdevtmpfs]
   30 ?        I<     0:00 [netns]
   34 ?        S      0:05 [khungtaskd]
   35 ?        S      0:00 [oom_reaper]
   36 ?        I<     0:00 [writeback]
   37 ?        S      0:33 [kcompactd0]
   38 ?        I<     0:00 [crypto]
   39 ?        I<     0:00 [kblockd]
   40 ?        S      0:00 [watchdogd]
   41 ?        I<     0:00 [rpciod]
   42 ?        I<     0:00 [kworker/u9:0]
   43 ?        I<     0:00 [xprtiod]
   46 ?        S      3:25 [kswapd0]
   47 ?        I<     0:00 [nfsiod]
   58 ?        I<     0:00 [kthrotld]
   60 ?        I<     0:00 [iscsi_eh]
   61 ?        I<     0:00 [dwc_otg]
   62 ?        I<     0:00 [DWC Notificatio]
   63 ?        S<     0:00 [vchiq-slot/0]
   64 ?        S<     0:00 [vchiq-recy/0]
   65 ?        S<     0:00 [vchiq-sync/0]
   66 ?        S      0:00 [vchiq-keep/0]
   68 ?        S      0:00 [irq/86-mmc1]
   70 ?        I<     0:00 [mmc_complete]
   75 ?        S      2:44 [jbd2/mmcblk0p2-]
   76 ?        I<     0:00 [ext4-rsv-conver]
   78 ?        I<     0:00 [ipv6_addrconf]
  125 ?        S      0:00 [irq/166-usb-001]
  302 ?        Ssl    0:19 /usr/sbin/rsyslogd -n -iNONE
  304 ?        Ss     0:46 /usr/sbin/thd --triggers /etc/triggerhappy/triggers.d/ --socket /run/thd.socket --user nobody --deviceglob /dev/input/event*
  308 ?        SNs    0:01 /usr/sbin/alsactl -E HOME=/run/alsa -s -n 19 -c rdaemon
  309 ?        Ss     0:18 /lib/systemd/systemd-logind
  310 ?        Ss    10:41 avahi-daemon: running [rasp3fhem.local]
  314 ?        Ss     1:34 /usr/bin/dbus-daemon --system --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
  332 ?        S      0:00 avahi-daemon: chroot helper
  335 ?        I<     0:00 [cfg80211]
  342 ?        I      0:00 [kworker/3:0-events_freezable]
  361 ?        Ss     8:57 /sbin/dhcpcd -q -w
  377 ?        I<     0:00 [cifsiod]
  378 ?        I<     0:00 [cifsoplockd]
  400 ?        Ss     0:00 /usr/sbin/sshd -D
  441 ?        Ss     0:24 /usr/sbin/cron -f
  443 ?        SLsl 116:46 /usr/sbin/rngd -r /dev/hwrng
  466 tty1     Ss+    0:00 /sbin/agetty -o -p -- \u --noclear tty1 linux
  581 ?        I<     0:00 [kworker/0:0H]
  697 ?        I      0:00 [kworker/2:1-mm_percpu_wq]
  701 ?        Ss     5:30 sendmail: MTA: accepting connections
  808 ?        Ss     0:00 sshd: ... [priv]
  818 ?        I      0:00 [kworker/0:0-events]
  819 ?        Ss     0:00 /lib/systemd/systemd --user
  822 ?        S      0:00 (sd-pam)
  838 ?        R      0:00 sshd: ...@pts/0
  841 pts/0    Ss     0:00 -bash
  893 ?        I<     0:00 [kworker/1:2H]
1234 ?        I      0:00 [kworker/1:0-mm_percpu_wq]
1374 ?        I<     0:00 [kworker/2:2H]
1379 ?        I      0:00 [kworker/3:1-mm_percpu_wq]
1565 ?        I      0:00 [kworker/2:0-events]
1631 ?        I<     0:00 [kworker/3:0H]
1740 ?        I      0:00 [kworker/0:1-events_power_efficient]
1817 ?        I<     0:00 [kworker/0:1H]
1825 ?        I<     0:00 [kworker/1:0H]
1850 ?        S      0:00 /usr/bin/perl fhem.pl fhem.cfg
1851 ?        S      0:00 ping -c 4 192.168....
1852 ?        S      0:00 /usr/bin/perl fhem.pl fhem.cfg
1853 ?        S      0:00 ping -c 4 8.8.8.8
1854 pts/0    R+     0:00 ps ax
6145 ?        I<     0:00 [kworker/3:2H-kblockd]
9196 ?        I<     0:01 [kworker/1:1H-kblockd]
13658 ?        Ssl    0:00 /lib/systemd/systemd-timesyncd
13662 ?        Ss     0:04 /lib/systemd/systemd-journald
13956 ?        Ss     0:00 /lib/systemd/systemd-udevd
15984 ?        I<     0:00 [kworker/2:0H-kblockd]
16196 ?        I<     0:00 [kworker/0:2H-mmc_complete]
21658 ?        I      0:00 [kworker/u8:2-events_unbound]
22360 ?        S    207:16 /usr/bin/perl fhem.pl fhem.cfg
28466 ?        S      1:01 [cifsd]
29624 ?        I      0:00 [kworker/0:2-events_power_efficient]
29718 ?        I      0:02 [kworker/u8:1-events_unbound]
31076 ?        I      0:00 [kworker/3:2-mm_percpu_wq]
31240 ?        I      0:00 [kworker/1:2-mm_percpu_wq]
31351 ?        I<     0:00 [kworker/3:1H]
31804 ?        I      0:00 [kworker/2:3-mm_percpu_wq]
32469 ?        I<     0:00 [kworker/2:1H]
32602 ?        I      0:00 [kworker/1:1-events]