ERR FAILOVER requires connected replicas.: FAILOVER requires connected replicas
RedisЧто это значит?
FAILOVER выполнен для запуска скоординированной (плавной) отработки отказа, но отклонён, так как нет подходящей подключённой к primary реплики, способной принять роль. Без цели, которой можно передать роль, отработка отказа невозможна.
Почему возникает?
У primary в данный момент нет подключённых реплик (реплики остановлены, отключены от сети или не синхронизированы), либо указанная целевая реплика не подходит/не подключена. При вызове ручного FAILOVER (Redis 6.2+) топология репликации не удовлетворяет необходимому условию. Примечание: FAILOVER работает только с автономной репликацией (master/replica); в Redis Cluster на реплике используется CLUSTER FAILOVER.
Как исправить
Убедитесь, что существует хотя бы одна исправная, подключённая и актуальная реплика (проверьте connected_slaves и состояние синхронизации с помощью INFO replication). Устраните проблемы сети/доступа на репликах, чтобы они подключались к primary. Для отработки отказа на конкретную цель используйте FAILOVER TO host port и убедитесь, что эта реплика подходит.
Ещё по этой СУБД
- ERR Background append only file rewriting already in progressAOF rewrite already in progress
- IOERR error or timeout reading from target instanceMIGRATE: I/O error or timeout to target
- ERR Error compiling script (new function)Error compiling Lua script
- ERR invalid expire time in 'set' commandinvalid expire time in SET