Redis
 sql >> Base de données >  >> NoSQL >> Redis

Meilleure pratique pour mettre à niveau Redis avec Sentinels ?

Je suis surpris par le manque de réponse à cela, mais je comprends que le type de sujet chevauche quelque chose comme stackoverflow et quelque chose comme stack exchange. Je suis aussi surpris du manque de documentation que j'ai pu trouver sur le sujet.

J'ai effectué des tests approfondis dans un environnement de mise en scène, puis je suis passé à notre production et la procédure que j'ai suivie a semblé fonctionner pour la plupart :

  • La mise à niveau de 3.0.6 à 5.0.5 dans notre cas semble fonctionner sans accroc. Comme je l'ai dit dans le message d'origine, nous utilisons les bases de Redis et il n'y a pas eu beaucoup de changement du point de vue du client.

  • J'ai poursuivi la mise à niveau dans cet ordre :

    1. Les deux premiers pairs sentinelles, puis la sentinelle actuellement dans le leader statut.
    2. Chacun des nœuds redis répertoriés comme slaves (maintenant connu sous le nom de replicas ).
      • Après la mise à niveau de chaque nœud, il voudra copier son dump.rdb du maître
      • Une synchronisation peut être effectuée sur un nœud 5 à partir d'un nœud 3, mais une fois qu'un nœud 5 est le maître, un nœud 3 ne peut pas se synchroniser, donc une fois que vous avez basculé vers un nœud mis à niveau, vous ne pouvez pas revenir en arrière à la version antérieure.
    3. Utilisez enfin les sentinelles pour basculer vers un nœud mis à niveau en tant que maître et mettre à niveau l'ancien maître

J'espère que quelqu'un trouvera cela utile à l'avenir.