NEWS
Verständnisfrage(n) zu redis sentinel und backitup
-
Ich habe vor gut einer Woche meinen iob auf redis sentinel umgestellt, heute ist mir aufgefallen, dass seitdem keine backups mehr gleaufen sind. Ok war mein Fehler, ich hatte redis neu aufgesetzt mit neuen IP Adressen und natürlich vergessen dass im Backup-Adapter anzupassen.
Folgendes Szenario
HA Umgebung mit 3 Intel NUC und Proxmox (Debian12) Containern für iobroker und redis.
redis läuft auf allen 3 Nodes mit den IP Adressen 192.168.1.60, ...61, ...62.
jeweils 2 getrennte redis Instanzen für objects und states.Jetzt stellen sich mir folgende Fragen
- Wie sichere ich überhaupt redis im backup-Adapter? Ich habe in der backitup Instanz jetzt bei redis Host-Typ "remote", Host Name "192.168.1.61" und Port "6379" eingegeben.
Manuell angestoßenes Backup läuft auch sauber durch, aber das ist doch nur Port 6379, also objects, für states müsste ich doch auch noch Port 6380 angeben ??? - Ich habe im backitup jetzt willkürlich die 192.168.1.61 eingegeben, was ist, wenn genau dieser redis Container abrauscht? Sentinel "würfelt" dann einen neuen Master aus, aber wenn das dann z.B. 192.168.1.62 ist, dann würde backitup nicht funktionieren (???)
Kann mir zu diesen Fragen jemand auf die Sprünge helfen ?
- Wie sichere ich überhaupt redis im backup-Adapter? Ich habe in der backitup Instanz jetzt bei redis Host-Typ "remote", Host Name "192.168.1.61" und Port "6379" eingegeben.
-
@amg_666 sagte in Verständnisfrage(n) zu redis sentinel und backitup:
Wie sichere ich überhaupt redis im backup-Adapter?
garnicht.. du musst dir jetzt eine andere strategie entwickeln
du brauchst die dump datei.. aber nicht nur von einem Node sondern von mehreren falls der eine den du sicherst dir abraucht..
ich mach das ganze per PBS von proxmox.. alle stunde wird die datei gesichert von 3 Nodes (hab 5 davon)
und zusätzlich einmal die Woche der LXC.sieht dann so aus
ich halte 40 Versionen als stunden backup
und das sind meine LXC
-
@arteck sagte in Verständnisfrage(n) zu redis sentinel und backitup:
ich mach das ganze per PBO von proxmox
Du hängst mich ab
Wo richte ich das in proxmox ein? Sorry, bin da noch relativer Newbie...
-
@amg_666 wie ich das sehe hast du 2 Redis-Instanzen auf 2 verschiedenen Ports?
Damit kann der Backitup-Adapter vermutlich nicht um.
Pack beides in eine Instanz und du könntest normal sichern und wiederherstellen.Ist nun mal so. MYSQL und Co. kannst du auch immer nur eine Quell-Instanz einstellen. Auch wenn du 2. Instanzen vom SQL-Adapter laufen hast auf 2. verschiedenen Servern, geht auch nicht
-
@amg_666 sagte in Verständnisfrage(n) zu redis sentinel und backitup:
@arteck sagte in Verständnisfrage(n) zu redis sentinel und backitup:
ich mach das ganze per PBO von proxmox
Du hängst mich ab
Wo richte ich das in proxmox ein? Sorry, bin da noch relativer Newbie...
wenn ich den Screenschot so sehe, sichert @arteck per "Proxmox Backup Server", schau dir den einmal an.
Damit sicherst du den ganzen Container.
Was genau er mit PBO meint weis ich auch nicht -
@bananajoe Danke, ja ich arbeite mich da grade ein und werde auf einer getrennten Maschine einen proxmox backup server installieren. Bei deinem anderen Vorschlag (1 Redis Instanz mit 1 port und dann über backitup sichern), sehe ich immer noch das (theoretische?) Problem, dass ich ja eine IP des redis angeben muss und wenn ausgerechnet diese redis instanz abschmiert, würde backup nicht funktionieren, oder?
-
@amg_666 sollte natürlich PBS heissen.. sry
@amg_666 sagte in Verständnisfrage(n) zu redis sentinel und backitup:
Problem, dass ich ja eine IP des redis angeben muss und wenn ausgerechnet diese redis instanz abschmiert, würde backup nicht funktionieren, oder?
genau..ist ja auch logisch.. nix hardware nix software
wir können uns mal im discord treffen.. dann zeig ich dir wie ich das gelöst habe.. ist glaube einfacher als hier zu schreiben..
für alle die es auch wissen wollen.. wie es geht.. können dazu kommen..
-
@amg_666 sagte in Verständnisfrage(n) zu redis sentinel und backitup:
Bei deinem anderen Vorschlag (1 Redis Instanz mit 1 port und dann über backitup sichern), sehe ich immer noch das (theoretische?) Problem, dass ich ja eine IP des redis angeben muss und wenn ausgerechnet diese redis instanz abschmiert, würde backup nicht funktionieren, oder?
Nein, das habe ich nicht vorgeschlagen. Du nutzt für Objects und States 2 verschiedenen Instanzen (zumindest habe ich das so interpretiert), wenn beides eine Instanz nutzt kann der Backitup-Adapter auch wieder alles sichern.
Wenn der Redis weg ist hast du eh ganz andere Probleme, dann macht ioBroker erst einmal gar nichts mehr, schließlich sind die Objekte und States die Grundlage für alles in ioBroker.Statt 2 oder 3 Redis-Instanzen würde ich eine Instanz in einer VM betreiben. Die Hochverfügbarkeit hast du dann durch Proxmox, Replikation und HA (High Availablity). Zur Wartung kannst du dann die VM(!) Live zwischen zwei Proxmox-Hosts verschieben und den Host dann patchen. HA startet dir den Server wieder wenn das ganze System ausfällt (was aber ein paar Minuten, so 2 bis 4, dauern kann).
Da kannst du auch gleich beides auf einem Host laufen lassen, dann fällt es auch zusammen aus, Redis dann vor der ioBroker VM starten. Oder gleich in einer VM.VMs deshalb weil nur diese Live-Migration beherrschen. LXC-Container werden gestoppt und gestartet.
Für einen Kunden habe ich neulich ein 3 Knoten-Redis Master/Slave/Slave gebaut. Eigentlich wollten wir einen Cluster bauen, die Firma hinter Redis hat es aber nicht geschafft uns zeitnah eine Lizenz zu verkaufen. Also die Sentinel-Lösung.
Vor die 3 Redis-Knoten haben wir einen Loadbalancer gesetzt da die Applikation (die Redis nutzt) das nicht selbst kann. Der Loadbalancer prüft alle x Sekunden die Verfügbarkeit und schaltet dann ggf. um, von den 3 Redis Systemen ist also immer eines grün und 2 rot.
Der Loadbalancer selbst muss natürlich auch wieder hochverfügbar sein.
Sprich, das ist im Normalbetrieb gar nicht so einfach. Das mit einem Loadbalancer davor wäre aber die Lösung deines Problems -
@amg_666 sagte in Verständnisfrage(n) zu redis sentinel und backitup:
Danke, ja ich arbeite mich da grade ein und werde auf einer getrennten Maschine einen proxmox backup server installieren.
Ein kurzer Einschub, weil ich es echt praktisch finde.
Bei tuxis kannst du dir recht günstig (oder ich meine auch 150gb gratis) einen pbs in der cloud mieten.
Ist mein "worst case" Backup falls zu Hause, warum auch immer, alles abraucht.