Redis
 sql >> Datenbank >  >> NoSQL >> Redis

Best Practice zum Aktualisieren von Redis mit Sentinels?

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:

    1. Die ersten beiden Sentinel-Peers und dann der Sentinel, der sich derzeit im leader befindet Status.
    2. Jeder der Redis-Knoten wird als slaves aufgelistet (jetzt bekannt als replicas ).
      • 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.
    3. Verwenden Sie schließlich die Sentinels für ein Failover auf einen aktualisierten Knoten als Master und aktualisieren Sie den vorherigen Master

Hoffentlich findet das jemand für die Zukunft nützlich.