sql >> Databasteknik >  >> NoSQL >> Redis

Bästa praxis för att uppgradera Redis med Sentinels?

Jag är förvånad över bristen på respons på detta, men jag förstår att ämnet på något sätt sträcker sig över något som stackoverflow och något som stack exchange. Jag är också förvånad över bristen på dokumentation jag kunde hitta i ämnet.

Jag gjorde några omfattande tester i en iscensättningsmiljö och fortsatte sedan till vår produktion och proceduren jag följde verkade fungera för det mesta:

  • Uppgradering från 3.0.6 till 5.0.5 i vårt fall verkar fungera utan problem. Som jag sa i det ursprungliga inlägget använder vi grunderna i redis och det har inte förändrats mycket ur klientperspektivet.

  • Jag fortsatte med att uppgradera i denna ordning:

    1. De första två vaktposterna och sedan vaktposten som för närvarande är leader status.
    2. Var och en av redis-noderna listade som slaves (nu känd som replicas ).
      • Efter att varje nod har uppgraderats vill den kopiera sin dump.rdb från mästaren
      • En synkronisering kan göras till en 5-nod från en 3-nod, men när en 5-nod är mastern kan en 3-nod inte synkronisera, så när du väl har misslyckats till en uppgraderad nod kan du inte gå tillbaka till den tidigare versionen.
    3. Använd slutligen vaktposterna för att failover till en uppgraderad nod som master och uppgradera den tidigare mastern

Förhoppningsvis kan någon ha nytta av detta framöver.




  1. MongoDB $indexOfCP

  2. MongoDB $setEquals

  3. Java+Redis vs vanlig Java-effektivitet för dataintensiva applikationer?

  4. Fem tips för bättre MongoDB-värd på Azure