...
- Мастер-нода (Master-node) — основной мастер при запуске кластера до падения БД на нем;
- Слейв-нода (Slave-node) — резервный мастер, к которому переходит мастерство. Слейв-нод может быть более одной;
- Витнесс-нода (Witness-node) — узел-наблюдатель, на котором расположены только сервисы Redis Sentinel и Repmgr. Витнесс-нод может быть более одной.
...
Для обеспечения отказоустойчивой системы в ЕССМ предусмотрено использование механизма Keepalived. Его использование позволяет на одном виртуальном IP-адресе (VIP) продолжать работу даже при ошибках на одном из узлов при помощи распределения нагрузки между ними. Для . Для переключения мастерства в кластере должно быть не менее двух узловдва узла:
- Мастер-нода (Master-node) — основной мастер при запуске кластера;
- Слейв-нода (Slave-node) — резервный мастер, к которому переходит мастерство. Слейв-нод может быть более одной;
На каждом из узлов должен быть установлен механизм Keepalived.
...
Если мастер перестал отвечать или несколько сервисов на нем перестали функционировать, то происходит переключение VIP с мастера на резервный узел. Мастером становится узел с наименьшим количеством ошибок. Если резервных узлов больше одного и они будут равны между собой, то выбирается резервный узел с наибольшим значением IP-адресанаибольшим приоритетом.
Поведение ролей при смене мастера
В Keepalived после смены мастерства новый мастер забирает VIP на свою систему. В случае, если изначально выставленный мастер будет восстановлен, то мастерство и VIP автоматически сменится и отправится к нему
Поведение ролей изменяется в зависимости от настроек конфигурации Keepalived. За характер изменения поведения отвечает выставленный приоритет на узле в конфигурационном файле:
- Если на узлах выставлен одинаковый приоритет, то при смене мастерства новый мастер будет оставаться мастер-узлом до тех пор, пока на нем не произойдут ошибки;
- Если на узлах выставлен различный приоритет, то при смене мастерства новый мастер станет резервным, если изначальный будет восстановлен.