Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. Ausfallssicherheit IoBroker - maximale Verfügbarkeit

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Ausfallssicherheit IoBroker - maximale Verfügbarkeit

    This topic has been deleted. Only users with topic management privileges can see it.
    • arteck
      arteck Developer Most Active @etzeste13 last edited by

      @etzeste13 sagte in Ausfallssicherheit IoBroker - maximale Verfügbarkeit:

      per iobroker setup custom nicht auf redis umstellen kann

      logs ??

      E 1 Reply Last reply Reply Quote 0
      • E
        etzeste13 @arteck last edited by etzeste13

        @arteck ```

        set@VM-IOBroker:~$ iobroker setup custom
        Current configuration:
        - Objects database:
          - Type: jsonl
          - Host/Unix Socket: 127.0.0.1
          - Port: 9001
        - States database:
          - Type: jsonl
          - Host/Unix Socket: 127.0.0.1
          - Port: 9000
        - Data Directory: ../../iobroker-data/
        
        Type of objects DB [(j)sonl, (f)ile, (r)edis, ...], default [jsonl]: r
        
        When Objects and Files are stored in a Redis database please consider the following:
        1. All data will be stored in RAM, make sure to have enough free RAM available!
        2. Make sure to check Redis persistence options to make sure a Redis problem will not cause data loss!
        3. The Redis persistence files can get big, make sure not to use an SD card to store them.
        
        Host / Unix Socket of objects DB(redis), default[127.0.0.1]: 192.168.1.62
        Port of objects DB(redis), default[6379]:
        Type of states DB [(j)sonl, (f)file, (r)edis, ...], default [redis]:
        Host / Unix Socket of states DB (redis), default[192.168.1.62]:
        Port of states DB (redis), default[6379]:
        Host name of this machine [VM-IOBroker]:
        Please choose if this is a Master/single host (enter "m") or a Slave host (enter "S") you are about to edit. For Slave hosts the data migration will be skipped. [S/m]: m
        
        Important: Using redis for the Objects database is only supported
        with js-controller 2.0 or higher!
        When your system consists of multiple hosts please make sure to have
        js-controller 2.0 or higher installed on ALL hosts *before* continuing!
        
        
        Important #2: If you already did the migration on an other host
        please *do not* migrate again! This can destroy your system!
        
        
        Important #3: The process will migrate all files that were officially
        uploaded into the ioBroker system. If you have manually copied files into
        iobroker-data/files/... into own directories then these files will NOT be
        migrated! Make sure all files are in adapter directories inside the files
        directory!
        
        
        Do you want to migrate objects and states from "jsonl/jsonl" to "redis/redis" [y/N]: y
        
        Migrating the objects database will overwrite all objects! Are you sure that this is not a slave host and you want to migrate the data? [y/N]: y
        
        Connecting to previous DB "jsonl/jsonl"...
        Creating backup ...
        This can take some time ... please be patient!
        host.VM-IOBroker 77 states saved
        host.VM-IOBroker 144 objects saved
        Backup created: /opt/iobroker/backups/2024_01_26-13_27_47_backupiobroker-migration.tar.gz
        updating conf/iobroker.json
        
        Connecting to new DB "redis/redis" (can take up to 20s) ...
        No connection to objects 192.168.1.62:6379[redis]
        
        New Database could not be connected. Please check your settings. No settings have been changed.
        restoring conf/iobroker.json
        No connection to states 192.168.1.62:6379[redis]
        set@VM-IOBroker:~$
        
        set@VM-IOBroker:/$ ping 192.168.1.62
        PING 192.168.1.62 (192.168.1.62) 56(84) bytes of data.
        64 bytes from 192.168.1.62: icmp_seq=1 ttl=63 time=0.800 ms
        64 bytes from 192.168.1.62: icmp_seq=2 ttl=64 time=0.590 ms
        64 bytes from 192.168.1.62: icmp_seq=3 ttl=64 time=0.608 ms
        64 bytes from 192.168.1.62: icmp_seq=4 ttl=64 time=0.757 ms
        64 bytes from 192.168.1.62: icmp_seq=5 ttl=64 time=0.672 ms
        ^C
        
        
        

        und hier der Auszug aus der redis.conf vom LXC Container

        # You will also need to set a password unless you explicitly disable protected
        # mode.
        # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        bind 0.0.0.0
        
        # By default, outgoing connections (from replica to master, from Sentinel to
        #
        
        # you are sure you want clients from other hosts to connect to Redis
        # even if no authentication is configured.
        protected-mode no
        
        # Redis uses default hardened security configuration directives to reduce the
        # attack surface on innocent users. Therefore, several sensitive configuration
        # directives are immutable, and some potentially-dangerous commands are blocked.
        #
        
        W 1 Reply Last reply Reply Quote 0
        • W
          Wildbill @etzeste13 last edited by

          @etzeste13 Hast Du den redis-service nach dem Ändern der redis.conf auch einmal neu gestartet, damit das übernommen wird?

          Gruss, Jürgen

          1 Reply Last reply Reply Quote 0
          • E
            etzeste13 last edited by etzeste13

            @wildbill
            Ja habe ich natürlich gemacht. Lokal über die Container-Console läuft der redis-server auch und ich kann daten eingeben.
            Was mir noch aufgefallen ist:
            Wenn ich mich über meinen produktiven IOBroker Host (RasPi4 mit lokalem Redis) über folgendem Befehl auf den Redix LXC verbinden will, geht das zwar, aber bei der eingabe des ersten Befehl schmeist es mich wieder raus...

            pi@RasPi41:~ $ redis-cli -h 192.168.1.62 -p 6379
            192.168.1.62:6379> info
            Error: Connection reset by peer
            pi@RasPi41:~ $ 
            
            

            nachtrag: Hier noch der Status vom Redis-Container

            root@RedisMaster:~# systemctl status redis-server
            * redis-server.service - Advanced key-value store
                 Loaded: loaded (/lib/systemd/system/redis-server.service; enabled; preset: enabled)
                 Active: active (running) since Fri 2024-01-26 09:08:19 UTC; 5h 5min ago
                   Docs: http://redis.io/documentation,
                         man:redis-server(1)
               Main PID: 2676 (redis-server)
                 Status: "Ready to accept connections"
                  Tasks: 5 (limit: 9434)
                 Memory: 3.3M
                    CPU: 43.954s
                 CGroup: /system.slice/redis-server.service
                         `-2676 "/usr/bin/redis-server 0.0.0.0:6379"
            
            Jan 26 09:08:18 RedisMaster systemd[1]: Starting redis-server.service - Advanced key-value store...
            Jan 26 09:08:19 RedisMaster systemd[1]: Started redis-server.service - Advanced key-value store.
            root@RedisMaster:~# ^C
            root@RedisMaster:~# 
            

            vG Etze

            1 Reply Last reply Reply Quote 0
            • arteck
              arteck Developer Most Active last edited by

              @etzeste13 sagte in Ausfallssicherheit IoBroker - maximale Verfügbarkeit:

              New Database could not be connected. Please check your settings. No settings have been changed.

              na steht doch da. firewall regeln ??
              port ist anders..

              zumindest kann keine verbindung zum redis (nicht zu der maschiene) hergestellt werden

              1 Reply Last reply Reply Quote 0
              • E
                etzeste13 last edited by

                @arteck
                sry für die späte antwort, war ein paar tage nicht da...
                also ich habe keine firewall -regeln eingetragen und port ist auch 6379 also standard...
                ich glaube ich werden den redis-container nochmals aufsetzen und mein glück versuchen...

                noch eine frage: ich bin bei der weiteren suche nach wie ich das am besten umsetze über die anleitung von darkiop gestolpert, https://github.com/darkiop/doku-iobroker-ha/blob/main/20211113_ioBroker_auf_Proxmox_HA_v1.40.pdf und das scheint ja deinem Setup sehr ähnlich zu sein. Wenn ja, würdest du sagen mann kann diese Anlietung nach wie vor als Guide nehmen?

                Ich frage nur, weil mit das Thema mit GlusterFS nichts sagt... und ich der meinung war Proxmox in den aktuellen Versionen, hat ähnliche Funktionen bereits integriert...

                Vlt noch eine Frage: Mein aktuelles Produktivsystem läuft ja auf einem RasPi4 mit Redis direkt am Host. Bei den ersten Versuchen ein Backup auf die Proxmox VM aufzuspielen hat das nie funktioniert, weil beim Einspielen des Backups der Redis-Server ja nicht mehr auf 127.0.0.1 liegt. Muss ich für die Migration auf die Proxmox-Umgebung ein Backup erstellen, das auf Basis File oder json ist?

                vG Etze

                1 Reply Last reply Reply Quote 0
                • arteck
                  arteck Developer Most Active last edited by arteck

                  @etzeste13 sagte in Ausfallssicherheit IoBroker - maximale Verfügbarkeit:

                  GlusterFS

                  kannst auch ceph nehmen.. der ist in proxmox direkt intergriert

                  ja die liebe migration....

                  mach so

                  du brauchst die dump datei des redis.. diesen kopierst du auf das neue redis was du installiert hast..und startest es

                  dann iobroker verzeichniss zippen vom pi4..

                  auf dem proxmox eine vm erstellen und nackten iobroker installieren
                  das gezippte rüber auf die VM

                  dann den installierten ordner löschen.. (nix deinstallieren nur löschen)
                  das zip entpacken

                  somit hast du eine version auf dem proxmox dass deiner pi4 umgebung entspricht ..ist aber nich nicht lauffähig
                  erstmal die konfig änder zum neuen redis (ip anpassen)

                  dann nochmal

                  iob host this
                  

                  damit machst du dem iobroker bekannt das der diese neue maschiene als standard nehmen soll

                  iob start
                  

                  und fertig ist die laube

                  E 2 Replies Last reply Reply Quote 1
                  • E
                    etzeste13 @arteck last edited by

                    @arteck
                    Hallo, danke für die Anleitung, habe das gerade mal probiert.
                    Kann es sein, dass der Benutzer auf der VM und am Pi gleich sein müssen?
                    Ich kann nämlich nachdem ich das iobroker Verzeichnis ( /opt/iobroker) vom Pi in das der VM kopiert habe den iob nicht mehr starten, angeblich augrund fehlender berechtigungen.

                    Muss aber gleich dazu sagen, dass ich den iob schon einige tage zuvor auf der VM installiert hatte und nur mal in betrieb genommen habe, und nicht wie du beschrieben hast die VM gänzlich jungfräulich aufgesetzt habe. sonst habe ich aber das /opt/iobroker verzeichnis auf der VM komplett gelöscht und mit den Daten vom PI getauscht.

                    vG Etze

                    arteck 1 Reply Last reply Reply Quote 0
                    • arteck
                      arteck Developer Most Active @etzeste13 last edited by

                      @etzeste13 dann mach noch

                      iob fix
                      

                      bevor du startest

                      1 Reply Last reply Reply Quote 1
                      • D
                        darkiop Most Active @arteck last edited by

                        @arteck sagte in Ausfallssicherheit IoBroker - maximale Verfügbarkeit:

                        vielleicht findet sich einer der ein QUorum mit einem PI macht.. und kann berichten

                        Link zu meiner Doku wurde ja bereits gepostet - der PI als Quorum Device war eigentlich unauffällig.

                        @arteck sagte in Ausfallssicherheit IoBroker - maximale Verfügbarkeit:

                        kannst auch ceph nehmen.. der ist in proxmox direkt intergriert

                        Ja, Ceph wäre auch eine Option. Meine allerdings gelesen zu haben deutlich Hardware (RAM) hungriger. Wie sind da deine Erfahrungen?

                        arteck 1 Reply Last reply Reply Quote 0
                        • arteck
                          arteck Developer Most Active @darkiop last edited by

                          @darkiop sagte in Ausfallssicherheit IoBroker - maximale Verfügbarkeit:

                          Wie sind da deine Erfahrungen?

                          meine kisten haben alle 32 GB als Arbeitsspeicher.. ich merk da kein Unterschied. ich hatte früher auch gluster installiert
                          hab nur gewechselt da ceph mit im proxmox intergriert ist

                          1 Reply Last reply Reply Quote 0
                          • amg_666
                            amg_666 @arteck last edited by

                            @arteck sagte in Ausfallssicherheit IoBroker - maximale Verfügbarkeit:

                            p.s: lass die Finger von einem PI fürs Quorum..

                            Hallo
                            kurze Verständnisfrage dazu: Ich habe iob bislang in einem Container unter proxmox laufen (proxmox auf einem intel nuc) Im "standby" läuft ein 2. nuc auf dem auch proxmox mit iob ist, wenn ein System die Grätsche machen sollte, müsste ich manuell das backup (den container) starten.
                            Ich will das als nächste Projekt meiner Hausautomatisierung auch auf nodes verteilen mit dem Ziel, dass es stabil auch ohne manuelles Eingreifen im Fehlerfall weiterläuft.
                            Dazu würde ich iob wohl von Container auf VM umziehen.
                            Frage: Warum keinen Pi fürs Quorum, bzw was würdest du da mind. empfeheln oder hast du selber im Einsatz. Ich tendiere da bei mir zu einem 3. nuc, spricht da was gegen?
                            2. Frage: zigbee - Wie machst du das mit dem USB Stick, das wäre doch weiterhin ein single point of failure? Oder kann man auf 2 iob Instanzen jeweils zigbee laufen lassen? Die Devices würden doch nur mit einem Stick/einem Adapter reden?

                            arteck 1 Reply Last reply Reply Quote 0
                            • arteck
                              arteck Developer Most Active @amg_666 last edited by

                              @amg_666 der pi macht nur das quorum.. mehr nicht.dan bi ich bei dir.. im meisten Fällen installieren sich die Leute noch was da drauf.. und dann fängt der Schlamasel an

                              ich habe 5 Nuc's... laufen
                              obs VM oder LXC ist egal.. LXC wird bei migration durchgestartet VM läuft weiter.. also ohne abbruch.

                              mein Zigbee Stick wie auch der Zwave steckt in einem rock64.. und der gibt die Port per ser2net raus..
                              das ist der einzie POF bei mir.. wobei ich daneben ein OrnagePi liegen habe mit der gleichen IP und den gleichen Einstellungen..
                              sollte der Rock abrauchen..warum auch immer...

                              und wozu soll ich jetzt 2 iob instanzen laufen haben.. ??

                              amg_666 1 Reply Last reply Reply Quote 0
                              • amg_666
                                amg_666 @arteck last edited by

                                @arteck sagte in Ausfallssicherheit IoBroker - maximale Verfügbarkeit:

                                und wozu soll ich jetzt 2 iob instanzen laufen haben.. ??

                                ich meinte 2 Instanzen (oder Slaves ??) um wirklich 2 zigbee sticks aktiv zu haben, aber das scheint ja nicht zu gehen, also muss man da wohl mit single pooint of failure leben

                                arteck 1 Reply Last reply Reply Quote 0
                                • arteck
                                  arteck Developer Most Active @amg_666 last edited by

                                  @amg_666 sagte in Ausfallssicherheit IoBroker - maximale Verfügbarkeit:

                                  also muss man da wohl mit single pooint of failure leben

                                  jep leider

                                  1 Reply Last reply Reply Quote 0
                                  • E
                                    etzeste13 @arteck last edited by

                                    @arteck Ich habe das Thema mit der Migration mal getestet, so wie du beschrieben hast...
                                    Also Redis dump auf den LXC Container kopiert, und alle dateien von /opt/iobroker vom RasPi in das gleiche Verzeichnis der neu aufgesetzten VM kopiert.
                                    wenn ich dann "iob setup custom" oder jeden anderen iob Befehl starten möchte, funktioniert das nicht und zwar mit folgender Fehlermeldung

                                    55bc2884-071c-473c-85e6-b1f296d9ac36-grafik.png

                                    hast du eine Ahnung was ich da noch falsch gemacht haben könnte?
                                    Hier noch ein Screenshot des iobroker verzeichnises der VM

                                    a389a0a9-0338-4a73-9f3e-43106a098947-grafik.png

                                    was mache ich da falsch?

                                    lg Etze

                                    arteck 1 Reply Last reply Reply Quote 0
                                    • arteck
                                      arteck Developer Most Active @etzeste13 last edited by arteck

                                      @etzeste13 sagte in Ausfallssicherheit IoBroker - maximale Verfügbarkeit:

                                      was mache ich da falsch?

                                      aufmerksam lesen... aber nochmal

                                      zuerst da rein ein iob installieren und nicht direkt kopieren..
                                      damit alles so ist wie es soll..

                                      dann den iobroker Verzeichniss löschen und deinen anstatt reinkopieren
                                      dann zuerst

                                      iob host this
                                      iob fix
                                      

                                      dann sollte es laufen

                                      E 1 Reply Last reply Reply Quote 0
                                      • E
                                        etzeste13 @arteck last edited by etzeste13

                                        @arteck said in Ausfallssicherheit IoBroker - maximale Verfügbarkeit:

                                        iob host this

                                        Das ist ja das Problem, das ich zu diesen Befehlen gar nicht komme, weil überhaupt kein iob xxx Befehl funktioniert.
                                        Bevor ich ja

                                        iob host this  
                                        iob fix
                                        

                                        ausführen kann müsste ich ja laut deiner Beschreibung

                                        iob setup custom
                                        

                                        machen damit ich den neuen LXC-Redis-Server einstellen kann
                                        ich befürchte wenn ich

                                        iob host this  
                                        iob fix
                                        

                                        vor

                                        iob setup custom
                                        

                                        das es dann nicht funktioniert, weil er ja noch nicht den neuen Redis-Server kennt...., oder verstehe ich da was falsch?

                                        Wäre die Migration vielleicht leichter, wenn ich den aktiven host auf json oder File umstelle und dann ein Backup erstelle, bzw. die Daten aus /opt/iobroker in die VM kopiere?
                                        Müsste ich dann während dieser Zeit auch alle Slaves entsprechend umstellen und den Master-Pi als Datenquelle angeben...?

                                        arteck 1 Reply Last reply Reply Quote 0
                                        • arteck
                                          arteck Developer Most Active @etzeste13 last edited by arteck

                                          @etzeste13

                                          lesen BITTE LESEN..sonst bin ich hier raus.. wenn du nur die hälfte machst

                                          zuerst da rein ein iob installieren und nicht direkt kopieren..
                                          damit alles so ist wie es soll..

                                          dann den iobroker Verzeichniss löschen und deinen anstatt reinkopieren

                                          E 1 Reply Last reply Reply Quote 0
                                          • E
                                            etzeste13 @arteck last edited by

                                            @arteck
                                            Hallo Arteck,

                                            sorry ich will wirklich nicht lästig sein. Und ich glaube auch, das ich keinen strukturellen fehler gemacht habe.Ich liste meine Schritte also nochmals auf die zu dem Ergebniss führen, dass iob- Befehle inkl iob-setup custom nicht mehr funktionieren.

                                            1: debian VM aufgesetzt
                                            2: Iobroker auf der nackten VM mit Befehlen

                                            sudo apt-get install curl
                                            curl -sLf https://iobroker.net/install.sh | bash -
                                            

                                            installiert.
                                            3:) Auf dieser "nackten IOB-VM" habe ich dann den Inhalt aus dem Orner /opt/iobroker gelöscht und mit den Dateien von meinem PI aus dem Ordner /opt/iobroker ersetzt.

                                            und ab diesem Zeitpunkt, kann ich keinen iob-Befehl auf der IOB-VM mehr absetzen. Ich bin das mehrere Male durchgegangen ist aber immer das gleiche ergebnis

                                            Muss ich vielleicht beim Kopieren der Daten vom PI auf die VM auf was spezielles aufpassen? Ich habe es bisher einfach mit WinSCP vom RasPi auf meinen PC kopiert und von da wieder per WinSCP auf die VM....

                                            Vg Etze

                                            arteck 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

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

                                            528
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            15
                                            99
                                            7422
                                            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