Effectuer un basculement manuel avec Sentinel et nettoyer la topologie
RedisSentinelCommande
# First check quorum and an eligible replica:
redis-cli -p 26379 SENTINEL CKQUORUM mymaster
redis-cli -p 26379 SENTINEL REPLICAS mymaster
# Manual failover without waiting for agreement from other sentinels:
redis-cli -p 26379 SENTINEL FAILOVER mymaster
# Verify the new master (must be the same on all sentinels):
redis-cli -p 26379 SENTINEL GET-MASTER-ADDR-BY-NAME mymaster
# If old/removed replicas remain listed, reset sentinels one at a time, 30 s apart:
redis-cli -p 26379 SENTINEL RESET mymasterCe que fait la commande
Transfère le rôle de master au réplica le plus adapté même lorsque le master est sain ; vérifie ensuite le nouveau master et efface de la mémoire des sentinels les réplicas qui n'existent plus.
Quand l'utiliser
Avant une maintenance planifiée sur l'hôte du master, lors d'un exercice de basculement, ou pour déplacer le master vers un autre data center.
Attention
Une interruption des écritures de quelques secondes se produit pendant le basculement, et les données écrites sur le master mais pas encore répliquées peuvent être perdues. Les réplicas avec replica-priority 0 ne sont jamais choisis ; si aucun réplica éligible n'existe, la commande renvoie une erreur. Si SENTINEL RESET s'exécute sur tous les sentinels en même temps, les informations de topologie sont temporairement perdues ; exécutez-le sur chacun séparément et de façon espacée. Assurez-vous que les clients utilisent un driver qui demande l'adresse du master à Sentinel.