Ich bin überrascht über die fehlende Reaktion darauf, aber ich verstehe, dass das Thema so etwas wie Stackoverflow und so etwas wie Stack Exchange überspannt. Ich bin auch überrascht über den Mangel an Dokumentation, die ich zu diesem Thema finden konnte.
Ich habe einige umfangreiche Tests in einer Staging-Umgebung durchgeführt und bin dann zu unserer Produktion übergegangen, und das Verfahren, dem ich gefolgt bin, schien größtenteils zu funktionieren:
-
Das Upgrade von 3.0.6 auf 5.0.5 scheint in unserem Fall reibungslos zu funktionieren. Wie ich im ursprünglichen Beitrag sagte, verwenden wir die Grundlagen in Redis und es hat sich aus der Client-Perspektive nicht viel geändert.
-
Ich habe das Upgrade in dieser Reihenfolge fortgesetzt:
- Die ersten beiden Sentinel-Peers und dann der Sentinel, der sich derzeit im
leader
befindet Status. - Jeder der Redis-Knoten wird als
slaves
aufgelistet (jetzt bekannt alsreplicas
).- Nachdem jeder Knoten aktualisiert wurde, möchte er seine
dump.rdb
kopieren vom Meister - Eine Synchronisierung kann von einem 3-Knoten zu einem 5-Knoten durchgeführt werden, aber sobald ein 5-Knoten der Master ist, kann ein 3-Knoten nicht mehr synchronisiert werden, sodass Sie nach einem Failover auf einen aktualisierten Knoten nicht mehr zurückkehren können zur früheren Version.
- Nachdem jeder Knoten aktualisiert wurde, möchte er seine
- Verwenden Sie schließlich die Sentinels für ein Failover auf einen aktualisierten Knoten als Master und aktualisieren Sie den vorherigen Master
- Die ersten beiden Sentinel-Peers und dann der Sentinel, der sich derzeit im
Hoffentlich findet das jemand für die Zukunft nützlich.