Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Redis, wat issn dat[Gelöst]

    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

    Redis, wat issn dat[Gelöst]

    This topic has been deleted. Only users with topic management privileges can see it.
    • Homoran
      Homoran Global Moderator Administrators last edited by

      Da halte ich gegen!

      ich wechsel nicht regelmäßig selber, aber habe auch bei diesen Geräten noch nie ein lowbat gehabt:
      144_lowbat.png

      :ganzvorsichtigfrag: vielleicht ein Feature von hm-con?

      Gruß

      Rainer

      1 Reply Last reply Reply Quote 0
      • paul53
        paul53 last edited by

        @Homoran:

        vielleicht ein Feature von hm-con? `
        Ich vermute eher, es liegt an einer fehlenden ReGaHss und dem zugehörigen Adapter.

        @Homoran:

        Da müsste ich dann mal über eine Backupstrategie nachdenken `
        Habe mal in die Redis-Konfiguration /etc/redis/redis.conf geschaut. Ab Zeile 236 steht das:

        # The filename where to dump the DB
        dbfilename dump.rdb
        
        # The working directory.
        #
        # The DB will be written inside this directory, with the filename specified
        # above using the 'dbfilename' configuration directive.
        #
        # The Append Only File will also be created inside this directory.
        #
        # Note that you must specify a directory here, not a file name.
        dir /var/lib/redis
        
        ################################# REPLICATION #################################
        
        

        Mein Vorschlag zur Anpassung:

        dbfilename states.rdb
        
        dir /opt/iobroker/iobroker-data
        

        Dann wird die DB beim Backup mit gesichert.

        1 Reply Last reply Reply Quote 0
        • Homoran
          Homoran Global Moderator Administrators last edited by

          @paul53:

          Mein Vorschlag zur Anpassung: `
          klingt selbst für mich durchführbar

          @paul53:

          Dann wird die DB beim Backup mit gesichert. `
          Das hört sich dann noch besser an.

          Werde ich mal ausprobieren und wenn es klappt in den Images übernehmen.

          EDIT:

          Meine Anleitung sieht jetzt so aus:
          ` > redis installieren

          apt-get install redis-server

          redis neu konfigurieren:

          in /etc/redis/redis.conf ab Zeile 236

          The filename where to dump the DB

          dbfilename dump.rdb

          ändern in:

          dbfilename states.rdb

          und

          Note that you must specify a directory here, not a file name.

          dir /var/lib/redis

          ändern in:

          dir /opt/iobroker/iobroker-data `
          ich frage mich nur, ob diese Datei dann auch angelegt wird.

          Wir werden sehen - habe gerade zwei VMs laufen um anderes zu testen

          Danke mal wieder

          Rainer

          1 Reply Last reply Reply Quote 0
          • paul53
            paul53 last edited by

            Habe gerade beim Durchsehen des RPi-Images vom 1.4.2018 festgestellt, dass Redis fleißig in die Datei /var/log/redis/redis-server.log schreibt. Das dürfte der Performance von Redis und der Lebensdauer des Flash Speichers nicht sehr zuträglich sein.

            1 Reply Last reply Reply Quote 0
            • Homoran
              Homoran Global Moderator Administrators last edited by

              Noch ne Baustelle - Danke!

              Aber mit der ersten kommt es schon nicht weiter:
              144_redis_patch.png
              da kommt nichts an.

              Gruß

              Rainer

              1 Reply Last reply Reply Quote 0
              • Homoran
                Homoran Global Moderator Administrators last edited by

                Nachtrag.

                Dank deines Hinweises auf das log habe ich gefunden:

                 Failed opening the RDB file states.rdb (in server root dir /opt/iobroker/iobroker-data) for saving: Read-only file system
                

                ich fürchte dass der Hinweis beim Installieren von Redis, der besagt, dass redis unter dem User redis angelegt wird hier zu diesem Problem führt, dass der User redis keine Schreibrechte auf das Verzeichnis /opt/iobroker/iobroker-data hat

                Gruß

                Rainer

                1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 last edited by

                  @Homoran:

                  dass der User redis keine Schreibrechte auf das Verzeichnis /opt/iobroker/iobroker-data hat `
                  Das kann ich mir nicht vorstellen, denn normalerweise haben alle User alle Rechte in diesem Verzeichnis (rwxrwxrwx).

                  1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators last edited by

                    Daran verzweifel ich auch gerade.

                    Habe nochmals ein chmod -R 777 /opt/iobroker gemacht.

                    jetzt sind definitiv alle Dateien rwxrwxrwx

                    aber diese blöde Meldung kommt immer noch.

                    das ist aber die einzige Meldung - sonst müllt nichts das log voll.

                    Ich weiss dass in den Anfängen von ioBroker Couch und redis drin waren und wegen Problemen mit den Rechten erst mal wieder rausfielen.

                    Aber ich bin mit meinem arg begrenzten Wissen im Moment am Ende.

                    Kann es daran liegen, dass ich in einer VM arbeite???

                    Gruß

                    Rainer

                    1 Reply Last reply Reply Quote 0
                    • Homoran
                      Homoran Global Moderator Administrators last edited by

                      @paul53:

                      dass Redis fleißig in die Datei /var/log/redis/redis-server.log schreibt. `

                      Habe jetzt auch gefunden was:

                      705:M 24 Apr 20:40:52.076 * 10 changes in 300 seconds. Saving...
                      705:M 24 Apr 20:40:52.078 * Background saving started by pid 16516
                      16516:C 24 Apr 20:40:52.163 * DB saved on disk
                      16516:C 24 Apr 20:40:52.164 * RDB: 0 MB of memory used by copy-on-write
                      705:M 24 Apr 20:40:52.178 * Background saving terminated with success
                      705:M 24 Apr 20:45:53.035 * 10 changes in 300 seconds. Saving...
                      705:M 24 Apr 20:45:53.036 * Background saving started by pid 16997
                      16997:C 24 Apr 20:45:53.116 * DB saved on disk
                      16997:C 24 Apr 20:45:53.118 * RDB: 0 MB of memory used by copy-on-write
                      705:M 24 Apr 20:45:53.137 * Background saving terminated with success
                      
                      

                      Also alle 5 Minuten die States auf die "Disk".

                      so sieht es also mit den default-Werten aus

                      Gruß

                      Rainer

                      1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 last edited by

                        Habe gerade gelesen, dass Redis eine eigene mount Verwaltung hat: In der Datei /lib/systemd/redis-server.service mit Inhalt:

                        [Unit]
                        Description=Advanced key-value store
                        After=network.target
                        Documentation=http://redis.io/documentation, man:redis-server(1)
                        
                        [Service]
                        Type=forking
                        ExecStart=/usr/bin/redis-server /etc/redis/redis.conf
                        PIDFile=/var/run/redis/redis-server.pid
                        TimeoutStopSec=0
                        Restart=always
                        User=redis
                        Group=redis
                        RunTimeDirectory=redis
                        
                        ExecStartPre=-/bin/run-parts --verbose /etc/redis/redis-server.pre-up.d
                        ExecStartPost=-/bin/run-parts --verbose /etc/redis/redis-server.post-up.d
                        ExecStop=-/bin/run-parts --verbose /etc/redis/redis-server.pre-down.d
                        ExecStop=/bin/kill -s TERM $MAINPID
                        ExecStopPost=-/bin/run-parts --verbose /etc/redis/redis-server.post-down.d
                        
                        UMask=007
                        PrivateTmp=yes
                        LimitNOFILE=65535
                        PrivateDevices=yes
                        ProtectHome=yes
                        ReadOnlyDirectories=/
                        ReadWriteDirectories=-/var/lib/redis
                        ReadWriteDirectories=-/var/log/redis
                        ReadWriteDirectories=-/var/run/redis
                        CapabilityBoundingSet=~CAP_SYS_PTRACE
                        
                        # redis-server writes its own config file when in cluster mode so we allow
                        # writing there (NB. ProtectSystem=true over ProtectSystem=full)
                        ProtectSystem=true
                        ReadWriteDirectories=-/etc/redis
                        
                        [Install]
                        WantedBy=multi-user.target
                        Alias=redis.service
                        
                        

                        Vielleicht genügt es

                        ReadWriteDirectories=-/opt/iobroker/iobroker-data
                        

                        hinzuzufügen und den Redis-Service neu zu starten ?

                        1 Reply Last reply Reply Quote 0
                        • apollon77
                          apollon77 last edited by

                          @paul53:

                          Habe gerade gelesen, dass Redis eine eigene mount Verwaltung hat: In der Datei /lib/systemd/redis-server.service mit Inhalt:

                          [Unit]
                          Description=Advanced key-value store
                          After=network.target
                          Documentation=http://redis.io/documentation, man:redis-server(1)
                          
                          [Service]
                          Type=forking
                          ExecStart=/usr/bin/redis-server /etc/redis/redis.conf
                          PIDFile=/var/run/redis/redis-server.pid
                          TimeoutStopSec=0
                          Restart=always
                          User=redis
                          Group=redis
                          RunTimeDirectory=redis
                          
                          ExecStartPre=-/bin/run-parts --verbose /etc/redis/redis-server.pre-up.d
                          ExecStartPost=-/bin/run-parts --verbose /etc/redis/redis-server.post-up.d
                          ExecStop=-/bin/run-parts --verbose /etc/redis/redis-server.pre-down.d
                          ExecStop=/bin/kill -s TERM $MAINPID
                          ExecStopPost=-/bin/run-parts --verbose /etc/redis/redis-server.post-down.d
                          
                          UMask=007
                          PrivateTmp=yes
                          LimitNOFILE=65535
                          PrivateDevices=yes
                          ProtectHome=yes
                          ReadOnlyDirectories=/
                          ReadWriteDirectories=-/var/lib/redis
                          ReadWriteDirectories=-/var/log/redis
                          ReadWriteDirectories=-/var/run/redis
                          CapabilityBoundingSet=~CAP_SYS_PTRACE
                          
                          # redis-server writes its own config file when in cluster mode so we allow
                          # writing there (NB. ProtectSystem=true over ProtectSystem=full)
                          ProtectSystem=true
                          ReadWriteDirectories=-/etc/redis
                          
                          [Install]
                          WantedBy=multi-user.target
                          Alias=redis.service
                          
                          

                          Vielleicht genügt es

                          ReadWriteDirectories=-/opt/iobroker/iobroker-data
                          

                          hinzuzufügen und den Redis-Service neu zu starten ? `
                          Wäre einen Versuch eert

                          1 Reply Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators last edited by

                            @paul53:

                            dass Redis eine eigene mount Verwaltung hat: In der Datei /lib/systemd/redis-server.service `
                            Ich habe diese Datei nicht.

                            Habe allerdings ioBroker noch nicht auf redis umgestellt.

                            Vielleicht wird die dann erst erstellt???

                            Gruß

                            Rainer

                            1 Reply Last reply Reply Quote 0
                            • Homoran
                              Homoran Global Moderator Administrators last edited by

                              Habe die Datei gefunden - liegt unter
                              > /lib/systemd/****system/****redis-server.service

                              Habe gerade geändert, und da ich nicht weiß wie man den service neu startet habe ich rebootet 😉

                              Gruß

                              Rainer

                              1 Reply Last reply Reply Quote 0
                              • Homoran
                                Homoran Global Moderator Administrators last edited by

                                zuerst gab es weiter den Fehler mit dem permission Error.

                                Ein erneutes

                                chmod 777 -R /opt/iobroker
                                

                                brachte dann
                                144_rdb02.png

                                und da war dann die Datei:
                                144_rdb01.png

                                Gruß

                                Rainer

                                1 Reply Last reply Reply Quote 0
                                • paul53
                                  paul53 last edited by

                                  @Homoran:

                                  Habe die Datei gefunden - liegt unter /lib/systemd/system/redis-server.service `
                                  Entschuldige die falsche Pfadangabe :oops:
                                  @Homoran:

                                  und da war dann die Datei: `
                                  Funktioniert es jetzt mit der rdb-Datei in /opt/iobroker/iobroker-data ?

                                  1 Reply Last reply Reply Quote 0
                                  • Homoran
                                    Homoran Global Moderator Administrators last edited by

                                    @paul53:

                                    Funktioniert es jetzt mit der rdb-Datei in /opt/iobroker/iobroker-data ? `
                                    Ja!

                                    alle 5 Minute werden die states da hineingeschrieben.

                                    Gruß

                                    Rainer

                                    1 Reply Last reply Reply Quote 0
                                    • frankjoke
                                      frankjoke last edited by

                                      Hab früher immer redis verwendet und bei den Installationen die ich jetzt neu gemacht habe auf meinen Test-Rechnern hab ich das natürlich auch versucht.

                                      Redis -server installiert und dann

                                      sudo iobroker setup custom

                                      So, leider läuft iobroker dann nicht mehr. Mit redis-cli kann ich auf den server mit den default-parametern zugreifen, aber iobroker startet nicht und gibt auch nichts ins log. Wenn ich auf file zurückgehe gehts wieder!

                                      Eine Konfig-Änderung im Admin wäre besser, dann könnte man die Einstellungen testen und eventuell auch per admin re-starten!

                                      p.s.:

                                      p.s.: Muss auch immer beim Testen re-booten da````
                                      (sudo) iobroker stop

                                      iobroker controller daemon is not running

                                      liefert. 'iobroker status' bringt aber 'iobroker is running' …
                                      1 Reply Last reply Reply Quote 0
                                      • frankjoke
                                        frankjoke last edited by

                                        Update: Hab's geschafft, man darf nur nicht beides, objects db und states db auf redis umstellen, nur die states-DB funktioniert (bei mir)!

                                        Wäre trotzdem nicht schlecht das im Admin einstellen zu können und nur im Fall von fehlfunktion auf die Kommandozeile zurück zu müssen!

                                        1 Reply Last reply Reply Quote 0
                                        • AlCalzone
                                          AlCalzone Developer last edited by

                                          @fsjoke: Wenn du eh gerade am neu aufsetzen bist, probier bitte die neueste Version des Installers ==> http://www.iobroker.net/docu/?page_id=8 … n_ioBroker

                                          Und bitte kein "sudo" in Kombination mit iobroker-Befehlen mehr verwenden, das ist dann nicht mehr nötig.

                                          1 Reply Last reply Reply Quote 0
                                          • frankjoke
                                            frankjoke last edited by

                                            AlCalZone,

                                            gut dass du das schreibst! Hab iobroker mit dem neuen script installiert, aber nicht die Hinweise auf der Webseite gesehen!

                                            Hinweis:
                                            mit der neuen installationsroutine funktionieren zur Zeit die Befehle:
                                            
                                            iobroker stop
                                            
                                            iobroker start
                                            
                                            iobroker restart
                                            
                                            iobroker status
                                            
                                            nicht mehr. Das ist ein Feature von Linux – nicht ioBroker!
                                            
                                            statt dessen muss
                                            
                                            sudo systemctl stop iobroker
                                            
                                            bzw. die anderen Entsprechungen benutzt werden
                                            
                                            Wir arbeiten an einem Workaround
                                            

                                            Das ist der Grund dass iobroker stop nicht mehr funktioniert!

                                            Ich wundere mich nur, soweit ich weiß ist iobroker ein Aufruf des js-controllers und er erledigt das start/stop/…

                                            Er sollte doch wissen wie ich installiert habe und damit ob alte oder neue Befehle verwendet werden sollen!

                                            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

                                            930
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            9
                                            50
                                            12219
                                            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