Maison > Article > base de données > Comment garantir la haute disponibilité de Redis
haute disponibilité redis : si vous déployez une architecture maître-esclave, il vous suffit d'ajouter des sentinelles, et vous pouvez y parvenir sans qu'aucune instance ne soit vers le bas, la commutation active et veille sera effectuée automatiquement.
Mécanisme Sentinelle Le serveur est surveillé et un mécanisme « sentinelle » est fourni après redis2.6. Comme son nom l'indique, la signification de sentinel est de surveiller l'état de fonctionnement du système Redis. Plusieurs sentinelles peuvent être démarrées pour surveiller l'état d'exécution de la base de données Redis. Ses fonctions principales comportent deux points :
a. Surveiller si toutes les bases de données de nœuds fonctionnent normalement.Le système Sentinel de Redis est utilisé pour gérer plusieurs serveurs Redis. Le système effectue les trois tâches suivantes :
Surveillance :
La sentinelle vérifiera en permanence si votre maître et votre esclave fonctionnent normalement.
Notification :Lorsqu'il y a un problème avec un Redis surveillé, la sentinelle peut envoyer des notifications à l'administrateur ou à d'autres applications via l'API.
Basculement automatique :Lorsqu'un maître ne fonctionne pas correctement, la sentinelle lancera une opération de basculement automatique et mettra à niveau l'un des esclaves du maître défaillant en tant que nouveau maître. et laissez les autres esclaves du maître défaillant changer pour copier le nouveau maître ; lorsque le client essaie de se connecter au maître défaillant, le cluster renverra également l'adresse du nouveau maître au client, afin que le cluster puisse utiliser le maître pour Remplacez le maître défaillant.
Sentinel est un système distribué. Vous pouvez exécuter plusieurs processus sentinelles dans une architecture. Ces processus utilisent des protocoles de potins pour recevoir des informations indiquant si le maître est hors ligne et utilisent des protocoles de vote (accord). protocoles) pour décider s'il faut effectuer un basculement automatique et quel esclave choisir comme nouveau maître.
Chaque sentinelle fera rapport aux autres sentinelles, le maître et l'esclave envoient régulièrement des messages pour confirmer si l'autre partie est "en vie" . Si l'autre partie ne répond pas dans le délai spécifié (configurable), l'autre partie est temporairement considérée comme étant en panne (ce que l'on appelle le « temps d'arrêt subjectif »).Si la plupart des sentinelles du « Groupe Sentinelle » signalent qu'un certain maître ne répond pas, le système considérera le maître comme « complètement mort » (c'est-à-dire : objectivement en panne, Objectif en panne, appelé odown) ), via un certain vote algorithme, sélectionnez l'un des nœuds esclaves restants à promouvoir au rang de maître, puis modifiez automatiquement la configuration appropriée.
Bien que sentinel soit publié sous la forme d'un fichier exécutable distinct redis -sentinel, mais en fait ce n'est qu'un Redis serveur fonctionnant dans un mode spécial Vous pouvez démarrer sentinel en donnant l'option --sentinel lors du démarrage d'un serveur Redis normal.Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!