NEWS
Redis - parallel zwei ioBroker single host
-
Hallo zusammen,
aktuell ist meine ioBroker Umgebung folgendermaßen aufgebaut.
Es sind drei Container (LXD/LXC) vorhanden.- iobroker - 192.168.78.132 - (single host) Produktiv Umgebung
- iobrokertest - 192.168.78.135 - (single host) Test Umgebung
- redis - 192.168.78.133 - (Standard Installation)
Container 1. iobroker ist erfolgreich auf Redis Datenbank umgestellt.
Wenn ich jetzt Container 2. iobrokertest ebenfalls auf die Redis Datenbank umstelle, Ablauf siehe unten, dann ist der Container nicht mehr über die IP-Adresse erreichbar. Er wird jetzt unter Hosts der Admin Oberfläche des ersten Containers aufgeführt.
Mein Ziel ist es die beiden ioBroker Admin Oberflächen unabhängig von einander über die jeweilige IP-Adresse aufzurufen. Kann ich das überhaupt so realisieren, und wenn ja, was habe ich bei der Umstellung auf die Redis Datenbank übersehen?Vorab schon einmal Dankeschön für eure Unterstützung.
Gruß, Karsten -
Hallo zusammen,
aktuell ist meine ioBroker Umgebung folgendermaßen aufgebaut.
Es sind drei Container (LXD/LXC) vorhanden.- iobroker - 192.168.78.132 - (single host) Produktiv Umgebung
- iobrokertest - 192.168.78.135 - (single host) Test Umgebung
- redis - 192.168.78.133 - (Standard Installation)
Container 1. iobroker ist erfolgreich auf Redis Datenbank umgestellt.
Wenn ich jetzt Container 2. iobrokertest ebenfalls auf die Redis Datenbank umstelle, Ablauf siehe unten, dann ist der Container nicht mehr über die IP-Adresse erreichbar. Er wird jetzt unter Hosts der Admin Oberfläche des ersten Containers aufgeführt.
Mein Ziel ist es die beiden ioBroker Admin Oberflächen unabhängig von einander über die jeweilige IP-Adresse aufzurufen. Kann ich das überhaupt so realisieren, und wenn ja, was habe ich bei der Umstellung auf die Redis Datenbank übersehen?Vorab schon einmal Dankeschön für eure Unterstützung.
Gruß, Karsten@hydrotec
warum willst du ein gemeinsames redis haben?
ich weiß nicht wie iobroker intern mit den states umgeht und ob es davon ausgeht, das in redis die einzige wahrheit steht. dann würde es gehen.wenn redis nur für das persistente speichern der werte zuständig ist, aber die states in einem cache im speicher in iobroker steht, dann weiß dieser nix davon, wenn eine andere iobroker instanz einen schlüssel ändert.
das würde dann zu einem inkonsistenten datenstand führen. -
@hydrotec
warum willst du ein gemeinsames redis haben?
ich weiß nicht wie iobroker intern mit den states umgeht und ob es davon ausgeht, das in redis die einzige wahrheit steht. dann würde es gehen.wenn redis nur für das persistente speichern der werte zuständig ist, aber die states in einem cache im speicher in iobroker steht, dann weiß dieser nix davon, wenn eine andere iobroker instanz einen schlüssel ändert.
das würde dann zu einem inkonsistenten datenstand führen.So wie ich das verstanden habe, verwaltet Redis die Datenbank in memory, und ioBroker bedient sich dieser Datenbank Einträge. Es steht auch nirgends etwas darüber, das zu jedem Programm/Prozess ein eigenes Redis installiert werden müsste. Und während der Umstellung durch
iobroker setup customwird ja extra gefragt ob es sich um ein Single oder Slave Host handelt.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.Deswegen bin ich ja etwas verwirrt, das die Auswahl
mnicht greift, und die zweite ioBroker Installation als weiterer Host auf der Admin Oberfläche der ersten ioBroker Installation erscheint. -
So wie ich das verstanden habe, verwaltet Redis die Datenbank in memory, und ioBroker bedient sich dieser Datenbank Einträge. Es steht auch nirgends etwas darüber, das zu jedem Programm/Prozess ein eigenes Redis installiert werden müsste. Und während der Umstellung durch
iobroker setup customwird ja extra gefragt ob es sich um ein Single oder Slave Host handelt.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.Deswegen bin ich ja etwas verwirrt, das die Auswahl
mnicht greift, und die zweite ioBroker Installation als weiterer Host auf der Admin Oberfläche der ersten ioBroker Installation erscheint.@hydrotec redis ist eine in memory DB.. die wird unabhängig von der iobroker installation installiert
@hydrotec sagte in Redis - parallel zwei ioBroker single host:
Deswegen bin ich ja etwas verwirrt, das die Auswahl m nicht greift, und die zweite ioBroker Installation als weiterer Host auf der Admin Oberfläche der ersten ioBroker Installation erscheint.
ja weil iobroker muss sicher stellen dass es nicht 2 mal die gleiche instanz auf 2 hosts läuft. connsectest du einen weiteren host mit der db ohne dsa dem sysem mitzuteilen kann es böse nebeneffecte geben
-
@hydrotec redis ist eine in memory DB.. die wird unabhängig von der iobroker installation installiert
@hydrotec sagte in Redis - parallel zwei ioBroker single host:
Deswegen bin ich ja etwas verwirrt, das die Auswahl m nicht greift, und die zweite ioBroker Installation als weiterer Host auf der Admin Oberfläche der ersten ioBroker Installation erscheint.
ja weil iobroker muss sicher stellen dass es nicht 2 mal die gleiche instanz auf 2 hosts läuft. connsectest du einen weiteren host mit der db ohne dsa dem sysem mitzuteilen kann es böse nebeneffecte geben
@arteck sagte in Redis - parallel zwei ioBroker single host:
redis ist eine in memory DB.. die wird unabhängig von der iobroker installation installiert
Das ist soweit klar.
@arteck sagte in Redis - parallel zwei ioBroker single host:
...connsectest du einen weiteren host mit der db ohne dsa dem sysem mitzuteilen...
Das wird hiermit doch übermittelt, oder sehe ich das falsch?
Host name of this machine [iobrokertest]: -
@arteck sagte in Redis - parallel zwei ioBroker single host:
redis ist eine in memory DB.. die wird unabhängig von der iobroker installation installiert
Das ist soweit klar.
@arteck sagte in Redis - parallel zwei ioBroker single host:
...connsectest du einen weiteren host mit der db ohne dsa dem sysem mitzuteilen...
Das wird hiermit doch übermittelt, oder sehe ich das falsch?
Host name of this machine [iobrokertest]: -
@arteck sagte in Redis - parallel zwei ioBroker single host:
redis ist eine in memory DB.. die wird unabhängig von der iobroker installation installiert
Das ist soweit klar.
@arteck sagte in Redis - parallel zwei ioBroker single host:
...connsectest du einen weiteren host mit der db ohne dsa dem sysem mitzuteilen...
Das wird hiermit doch übermittelt, oder sehe ich das falsch?
Host name of this machine [iobrokertest]: -
Das hieße ja dann, das für jede Master/single host Installation jeweils Redis installiert werden müsste, oder?
Also das der dritte Container (3. redis) bei mir entfernt werden kann, und innerhalb der anderen beiden Container (1. iobroker / 2. iobrokertest) jeweils Redis installieren muss. -
multihost/singlehost bezieht sich nicht auf die redis installation, sondern
ob iobroker mit anderen iobroker-instanzen auf anderen rechnern kommunizieren muss. -
Dafür steht doch dann eigentlich die Umstellung auf Slave.
Das möchte ich ja nicht.@hydrotec
musst du ja nicht, diese einstellung hat mit redis nichts zu tun.
mach einfach für jeden iobroker einen eigene redis instanz.leider kann ich dir nicht sagen wie das unter einer normalen installation läuft, da ich das alles in docker containern voneinander separiere und mir das docker/portainer automatisch macht.
-
Das hieße ja dann, das für jede Master/single host Installation jeweils Redis installiert werden müsste, oder?
Also das der dritte Container (3. redis) bei mir entfernt werden kann, und innerhalb der anderen beiden Container (1. iobroker / 2. iobrokertest) jeweils Redis installieren muss.@hydrotec sagte in Redis - parallel zwei ioBroker single host:
- iobroker / 2. iobrokertest
ja genau.. pro system also in deinem Fall 1. iobrker (prod system) ein redis
und für dein Testsystem auch ein redis .. -
@hydrotec
musst du ja nicht, diese einstellung hat mit redis nichts zu tun.
mach einfach für jeden iobroker einen eigene redis instanz.leider kann ich dir nicht sagen wie das unter einer normalen installation läuft, da ich das alles in docker containern voneinander separiere und mir das docker/portainer automatisch macht.
OK, dankeschön für die klärende Unterstützung. :-)
Dann werde ich mein System umstellen.
Verstehe dann zwar immer noch nicht, warum das nicht über einen Redis Server gestaltet werden kann, aber ich beuge mich der aktuellen Situation. ;-) Für mich ist halt der Sinn der Datenbankverwaltung (Redis) verloren, wenn ich für jede Datenbank ein eigenes Redis hochziehen muss.Angenehmen Tag noch, und Danke nochmals :-)
Gruß, Karsten -
OK, dankeschön für die klärende Unterstützung. :-)
Dann werde ich mein System umstellen.
Verstehe dann zwar immer noch nicht, warum das nicht über einen Redis Server gestaltet werden kann, aber ich beuge mich der aktuellen Situation. ;-) Für mich ist halt der Sinn der Datenbankverwaltung (Redis) verloren, wenn ich für jede Datenbank ein eigenes Redis hochziehen muss.Angenehmen Tag noch, und Danke nochmals :-)
Gruß, Karsten@hydrotec sagte in Redis - parallel zwei ioBroker single host:
wenn ich für jede Datenbank ein eigenes Redis hochziehen muss.
redis ist die Datenbank...
und in der Parxi vermischt du auch nicht alle Systeme PROD/RC/DEV auf einer datenbank (egal ob DB, Oracle oder oder)
es geht nur um Systemtrennung..DU kannst natürlich alles in eine rein kloppen.. mit der gefahr dass wenn DU was vermurkst im Test belibt die bude dunkel im PROD..
-
OK, dankeschön für die klärende Unterstützung. :-)
Dann werde ich mein System umstellen.
Verstehe dann zwar immer noch nicht, warum das nicht über einen Redis Server gestaltet werden kann, aber ich beuge mich der aktuellen Situation. ;-) Für mich ist halt der Sinn der Datenbankverwaltung (Redis) verloren, wenn ich für jede Datenbank ein eigenes Redis hochziehen muss.Angenehmen Tag noch, und Danke nochmals :-)
Gruß, Karsten@hydrotec Ich verstehe das so:
Jeder ioBroker single Host braucht einen dedizierten Redis Server.
Auch jeder ioBroker Master Host braucht einen dedizierten Redis Server. Da die Verwaltung der Slaves im Multihost durch den Master erfolgt, ist kein(e) weiterer(er) Redis Server für Slave(s) notwendig.Korrigiert mich, wenn ich das falsch sehe :man-getting-haircut:
-
@hydrotec sagte in Redis - parallel zwei ioBroker single host:
wenn ich für jede Datenbank ein eigenes Redis hochziehen muss.
redis ist die Datenbank...
und in der Parxi vermischt du auch nicht alle Systeme PROD/RC/DEV auf einer datenbank (egal ob DB, Oracle oder oder)
es geht nur um Systemtrennung..DU kannst natürlich alles in eine rein kloppen.. mit der gefahr dass wenn DU was vermurkst im Test belibt die bude dunkel im PROD..
@arteck sagte in Redis - parallel zwei ioBroker single host:
redis ist die Datenbank...
Jetzt weiß ich woher mein Denkfehler herrührt.
Ich bin davon ausgegangen, das Redis eine Datenbankverwaltung ist, und nicht die Datenbank selber. Hatte das mit MariaDB, oder ähnlichem, verglichen. Anfängerfehler, hätte mich im Vorfeld doch etwas mehr mit Redis beschäftigen sollen.@fredf sagte in Redis - parallel zwei ioBroker single host:
@hydrotec Ich verstehe das so:
Jetzt verstehe ich das genauso.
Vielen lieben Dank noch einmal für eure Aufklärung

Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden