Где бегать редис-сентинел
Для управления отказоустойчивостью главного и подчиненного устройств Redis имеет дозорного в руках. Два сервера я использую. Один для главного сервера, а другой для подчиненного. И master, и slave являются удаленным сервером и работают как демон. Как настроить дозорный с главным и подчиненным IP. Куда сторож нужно бежать. Как запустить дозорного в качестве демона.
Для деталей:
Мой мастер работает в
Port: 6379
IP: 192.168.56.101
Мой раб работает в
Port: 6379
IP: 192.168.56.102
Мой узел работает в
IP: 192.168.0.140
Примечание. Серверы Redis запускаются на виртуальной машине в Windows. Где узел также работает локально на той же машине.
Обновление В документации указана команда для запуска часового. Мой вопрос о дозорном сервере нужно запускать на моей локальной машине или на виртуальной машине, на которой работает master, или как отдельный дозорный сервер. Как один redis-сервер для master и один для slave и еще один для sentinel.
3 ответа
"Мой вопрос: дозорный нужно запускать на моей локальной машине или на виртуальной машине, где работает мастер, или как отдельный дозорный сервер. Например, один редис-сервер для главного, один для подчиненного и еще один для дозорного".
Я также начал исследовать конфигурации Redis-Sentinel.
До сих пор у нас был экземпляр стража, работающий на каждой виртуальной машине, на которой запущен redis-сервер (главный и подчиненный), но для того, чтобы правильно настроить кворум для экземпляров, необходимо иметь как минимум 3 стража и кворум 2. Вот почему в моем случае я добавил 3-й запущенный redis-сервер виртуальной машины в качестве подчиненного для главного (так что у нас есть 1 главный и 2 подчиненных) - в случае, если мастер выйдет из строя, у вас все равно будет 1 мастер и 1 раб доступен.
Я не вижу смысла в работе автономной машины с одним экземпляром часового - кажется, что это пустая трата доступных ресурсов.
Обратите внимание, что здесь у вас есть установка, которая фактически выполняется на одном хосте, поэтому с помощью Sentinel вы добавляете только HA, который может улучшить доступность в случае сбоя сервера Redis и / или при возникновении других программных ошибок, вы не добавляете никакого реального HA с точки зрения аппаратных сбоев. Но, наверное, это уже очевидно.
В вашей настройке лучше всего ИМХО создать дополнительную виртуальную машину Linux и запустить Sentinel в трех узлах: две виртуальные машины Linux, которые у вас уже есть, и дополнительная виртуальная машина, установив кворум на 2, так что вы сможете переключаться при сбое, если процессы Redis завершатся с ошибкой, но также и в случае сбоя всей виртуальной машины, на которой работает мастер Redis.
Эта документация redis на страже http://redis.io/topics/sentinel может помочь.