Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Swap Space wächst trotz freiem Speicher

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Swap Space wächst trotz freiem Speicher

    This topic has been deleted. Only users with topic management privileges can see it.
    • M
      Marty56 last edited by Marty56

      Irgendetwas ist faul.

      Ich habe ioBroker auf einem NUC mit 16 GB Ram mit Promox.
      Der ioBroker LVM habe ich 4 GB zugewiesen und Promox zeigt eine Nutzung von 1,5 GB. Dennoch wächst der genutzte Swap Speicher, was zu Folge hat, dass die Promox Admin Oberfläche immer langsam öffnet. Ich muss alle 20 Tag die iobroker LVM neu starten, weil das System dann zu träge wird.
      Was ich auch bemerkt habe, ist das die object.jsonl ziemlich riesig ist.

      -rw-rw-r--+  1 iobroker iobroker   9996078 Jun 19 06:07 objects.json
      -rw-rw-r--+  1 iobroker iobroker   9996078 Jun 19 06:05 objects.json.bak
      -rw-rw-r--+  1 iobroker iobroker 117730184 Oct 11 06:06 objects.jsonl
      drwxrwxr-x+  2 iobroker iobroker      4096 Oct 11 06:14 objects.jsonl.lock
      drwxrwxr-x+  2 iobroker iobroker      4096 Feb 22  2021 sayit
      drwxrwxr-x+  6 root     root          4096 Mar  9  2021 scripts
      drwxrwxr-x+  2 iobroker iobroker      4096 Jul 28  2020 sonosCache
      drwxrwxr-x+  2 iobroker iobroker      4096 Jun 14 10:46 sqlite
      -rw-rw-r--+  1 iobroker iobroker   4806632 Jun 19 06:25 states.json
      -rw-rw-r--+  1 iobroker iobroker   4806632 Jun 19 06:20 states.json.bak
      -rw-rw-r--+  1 iobroker iobroker   5172822 Oct 11 06:13 states.jsonl
      drwxrwxr-x+  2 iobroker iobroker      4096 Oct 11 06:14 states.jsonl.lock
      

      Außerdem habe ich alle 5 Minuten ein Diskwrite von 1 MB, was definitiv zu viel ist.
      Ich habe jetzt mal testhalber den History Adapter abgeschaltet.
      Mal sehn, wie sich das auswirkt.

      Ich habe alle Updates aus dem staple Repro installiert.

      M Chaot 2 Replies Last reply Reply Quote 0
      • M
        Marty56 @Marty56 last edited by

        Jetzt habe ich "iobroker restart" gemacht und der Swap Speicher ist von 70 % auf ca. 25 % abgesunken.

        1 Reply Last reply Reply Quote 0
        • Chaot
          Chaot @Marty56 last edited by

          @marty56 Ich habe den ioBroker nicht als VM sondern als Container. Dort mit 6 GB und das Swap komplett abgeschaltet. Das läuft seit längerer Zeit ohne Probleme.

          W 1 Reply Last reply Reply Quote 0
          • W
            Wildbill @Chaot last edited by

            @chaot SWAP komplett deaktivieren würde ich und sollte man eigentlich auch nicht. Wenn ein Prozess doch mal mehr Speicher anfordert als verfügbar ist, werden ansonsten andere Prozesse abgeschossen. Und das kann dann auch mal die treffen, die man eigentlich durchlaufen haben möchte (iobroker-Prozesse zum Beispiel). Wenn bei @Marty56 der Swap angefasst wird, dann wäre das ansonsten bereits ein Zustand, bei dem das System ohne SWAP Prozesse wegen Speichermangel beenden würde.
            @Marty56 Es wäre sinnvoller zu schauen, was Dir da den RAM aufzehrt. Beliebte Stellen sind Scripte, in denen Timeouts und Schleifen nicht "sauber" sind und immer wieder neue Loops starten, aber auch Adapter, die beim Start viel Ram anfordern, z.B. der Backitup. Bevor Du also die Symtome bekämpfst, solltest Du die Ursachen beheben. Meinem iobroker-Master (LXC unter Proxmox) habe ich 5GB Ram zugewiesen und 5GB Swap für "Notfälle". Der läuft aber wochenlang ohne den Swap anzuknabbern. Und auf dem laufen aktuell 37 Instanzen/Adapter und sehr viele Scripte (Blockly und JS).
            Gruss, Jürgen

            M 1 Reply Last reply Reply Quote 0
            • David G.
              David G. last edited by

              Die letzte Zeit habe ich ein paar mal gelesen, dass User dem swap recht voll haben.

              Ist das überhaupt so schlimm?
              Ist dixh eigentlich eine sinnsige Sache oder?

              Habe grad mal geschaut. Meiner ist zu 99% voll obwohl nur 50% RAM in Nutzung sind.
              Merke aber nichts von einer langsamen Bedienung.

              W 1 Reply Last reply Reply Quote 0
              • W
                Wildbill @David G. last edited by Wildbill

                @david-g Wie ich eben schrieb. Der SWAP wird normalerweise erst angefasst, wenn ein Prozess mehr Speicher anfordert, als aktuell verfügbar ist. Dafür gibt es normalerweise Gründe (siehe oben).
                Man kann bei den meisten Linuxoiden einstellen, wie schnell der SWAP angefasst wird, Google-Stichwort wäre hier swappiness.
                Ein stabiles und sauberes System mit genügend RAM sollte im Normalfall den SWAP wirklich nur im Notfall nutzen, da es eben immer langsamer ist, Daten von der Festplatte (aus dem SWAP) wieder ins RAM zu holen und dafür andere zu swappen, als alles direkt im viel schnelleren RAM zu halten. SWAP erzeugt halt Systemlast, bremst aus und, je nach Hardware, verschleissen die Datenträger viel schneller. Auf einem Raspi mit SD-Karte beispielsweise killt extensive SWAP-Nutzung diese recht schnell.
                Gruss, Jürgen

                David G. 1 Reply Last reply Reply Quote 1
                • David G.
                  David G. @Wildbill last edited by

                  @wildbill

                  Danke für die Antwort, hab das grad mal gegoogelt und die swapiness von 60 auf 35 gesetzt.

                  Hier sind die Einstellungen ganz gut beschrieben, falls es jmd. interessiert.

                  https://www.howtoforge.com/tutorial/linux-swappiness/

                  W 1 Reply Last reply Reply Quote 0
                  • W
                    Wildbill @David G. last edited by

                    @david-g Bei mir ist swappiness unverändert auf 60 ohne dass der Swap angefasst wird. Das Anpassen der Swappiness ist eben auch eher so etwas wie reagieren auf Symptome, als Ursachen angehen. Es muss einen Grund haben, warum Swap benötigt wird, beziehungsweise, dass mehr RAM angefragt wird, als verfügbar ist. Gründe dafür siehe oben.
                    Gruss, Jürgen

                    David G. 1 Reply Last reply Reply Quote 1
                    • David G.
                      David G. @Wildbill last edited by

                      @wildbill

                      Das stimmt natürlich.
                      Hab grad nochmal genauer geschaut.
                      In meiner Visu stimmt was nicht ^^.
                      RAM liegt permanent bei ca 62-63%.
                      Ausschläge nach oben gibt es nicht.
                      Logge dem RAM alle 5 Minuten.

                      Da wird natürlich der swap bei 60 benutzt.
                      Hab aber auch nur 4GB RAM.

                      J 1 Reply Last reply Reply Quote 0
                      • J
                        Jan1 @David G. last edited by

                        @david-g sagte in Swap Space wächst trotz freiem Speicher:

                        Hab aber auch nur 4GB RAM.

                        Das sollte eigentlich locker reichen und wenn es das nicht tut, hast entweder noch was anderes außer IOBroker laufen, oder ein Speicherfresser drin 😉

                        David G. 1 Reply Last reply Reply Quote 0
                        • David G.
                          David G. @Jan1 last edited by David G.

                          @jan1

                          Kleine Kleinigkeiten.
                          Einen Nut-Server läuft noch und eine Maria-DB fürs logging.

                          Und wenn mich hier vermutlich alle für "steinigen" ist der Desktop mit installiert. Boot aber ins cli.

                          Finde es einfach zu praktisch mit dem im Raspian integrierte Tool vor Systemuodates ein Image zu erstellen (über vnc).
                          Natürlich auch ein tägliches Backup mit BackupIt.
                          Von 128gb ssd auf eine 64gb sd.
                          Dann kann ich bei einem Problem einfach die sd einstecken und alles läuft.

                          Thomas Braun 1 Reply Last reply Reply Quote 0
                          • Thomas Braun
                            Thomas Braun Most Active @David G. last edited by

                            @david-g sagte in Swap Space wächst trotz freiem Speicher:

                            Desktop und dann noch vnc...
                            Da musst du dich auch nicht wundern.

                            Schalt den Quatsch aus.

                            David G. 1 Reply Last reply Reply Quote 1
                            • David G.
                              David G. @Thomas Braun last edited by

                              @thomas-braun

                              Mit so Reaktionen hab ich gerechnet.
                              Für mich war es Abwägung und ein Test ob es klappt.

                              Das System läuft seit 2 Jahren absolut stabil.
                              Wenn der Ramverbrauch von 62% da der "einzige" Nachteil ist, nehme ich den in Kauf. Ist ja noch Luft nach oben.

                              Sollte ich das System irgendwann komplett neu aufsetzen, werde ich es vermutlich ohne Desktop machen (mit der Hoffnung, ein Backuokonzept zu finden, was ähnlich simpel ist).

                              IoBroker läuft schnell wieder, jedoch habe ich mich bei dem nut sehr schwer getan, da dort einiges bei Verwendung am pi angepasst werden muss.

                              Thomas Braun J 2 Replies Last reply Reply Quote 0
                              • Thomas Braun
                                Thomas Braun Most Active @David G. last edited by

                                @david-g sagte in Swap Space wächst trotz freiem Speicher:

                                Das System läuft seit 2 Jahren absolut stabil.

                                Dein Swap ist jedenfalls nicht 'stabil'.

                                1 Reply Last reply Reply Quote 1
                                • J
                                  Jan1 @David G. last edited by

                                  @david-g
                                  Da gibts ne idiotensichere Anleitung für den Pi und das dauert keine 30 Minuten bis der sauber wieder eingerichtet ist. Dann mit Backitup den Rest und Du hast ein sauberes System.

                                  https://www.raspifun.de/viewtopic.php?t=4

                                  Ein Image ist immer nur so sauber wie man es erstellt hat 😉

                                  David G. 1 Reply Last reply Reply Quote 0
                                  • David G.
                                    David G. @Jan1 last edited by

                                    @jan1

                                    Das raspbian in wenigen Minuten samt iobroker läuft weiß ich.
                                    Das ist nicht das Ding.

                                    Mir geht's bei dem Backup um die Sachen neben iobroker (wie gesagt besonders diese doofe nut).

                                    Abgesehen von runlevel ist das System sehr clean. Würde das ganze Backup nur nehmen, wenn die ssd kaputt geht oder irgendwelche Systemuodates schief laufen. Wenn irgendwo der Wurm drinnen ist natürlich nicht.

                                    Wenn ich das System dann wirklich mal neu aufsetze (ohne Desktop), dokumentiere ich mir alles. Das habe ich damals nicht gemacht was ich sehr bereue.

                                    Langsam wird es aber sehr off topic. Wollte den Thread nicht kapern.

                                    Thomas Braun 1 Reply Last reply Reply Quote 0
                                    • Thomas Braun
                                      Thomas Braun Most Active @David G. last edited by

                                      @david-g
                                      Die conf-Datei für den nut noch sichern, fertig.

                                      David G. 1 Reply Last reply Reply Quote 0
                                      • David G.
                                        David G. @Thomas Braun last edited by

                                        @thomas-braun

                                        Musste auch noch bei der system.d glaube was machen. Nut ist immer zu früh gestartet und hat noch nicht alle resourcen bekommen die es wollte und hat sich dann beendet.

                                        Müsste das Problem aber auch noch hier im Forum finden.

                                        1 Reply Last reply Reply Quote 0
                                        • M
                                          Marty56 @Wildbill last edited by

                                          @wildbill
                                          Natürlich möchte ich die Ursachen beheben, weiß aber nicht wie ich das machen soll

                                          W 1 Reply Last reply Reply Quote 0
                                          • W
                                            Wildbill @Marty56 last edited by

                                            @marty56 Einiges wurde hier im Thread ja bereits genannt:

                                            • Läuft auf dem Server ein völlig unnötiger Desktop?

                                            • Läuft auf dem Server abseits iobroker noch anderes (Homematic, Phoscon, irgendwelche Datenbanken wie mySQL, InfluxDB,...)

                                            • Backitup-Adapter, wenn der Swap immer zu bestimmten Zeiten angegriffen wird

                                            • Scripte, die Loops aufbauen, da Schleifen oder Timeouts nicht korrekt sind (dann sollte der SWAP sich nach und nach aufbauen, evtl. auch zu bestimmten Zeiten, in denen Scripte getriggert werden)

                                            Wie Du dahinter kommst, gibt es unterschiedliche Ansätze. Die Punkte 1-3 kannst Du Dir ja direkt mit ja/nein beantworten. Generell schadet es sicher auch nichts, mal mit htop zu schauen, welcher Prozess wieviel Speicher belegt, dann weisst Du auch ungefähr die Richtung. Wenn Scripte in Betracht kommen, mal alle anhalten, einzeln starten und über einen (gegebenenfalls längeren) Zeitraum beobachten, ob der Speicher immer weniger wird bzw. SWAP angegriffen wird. Keiner kennt Dein System besser als Du, also solltest Du mit diesen Angaben einen Anhaltspunkt haben, wo Du schauen kannst.
                                            Und, ganz wichtig, nicht zu viel auf einmal ändern. Immer schön eine Änderung und beobachten. Sonst hast Du irgendwann zwar das gewünschte Ergebnis, weisst aber immer noch nicht, was der Auslöser war.

                                            Gruss, Jürgen

                                            M 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            388
                                            Online

                                            31.9k
                                            Users

                                            80.3k
                                            Topics

                                            1.3m
                                            Posts

                                            memoryleak
                                            10
                                            46
                                            1337
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo