Redis Cluster: (ошибка) MOVED

23

У меня есть кластер Redis со следующими узлами:

192.168.0.14:6379 master (slots from 0 to 16383)
192.168.0.15:6379 slave (slots from 0 to 16383)
192.168.0.16:6379 master (without slots)

Документация говорит, что любой узел может перенаправить запросы на соответствующий узел. Но я не могу перенаправить запросы с 192.168.0.16:6379 главного узла. Вот что я попробовал:

192.168.0.16:6379> set myKey myValue
(error) MOVED 16281 192.168.0.14:6379
192.168.0.16:6379> get myKey
(error) MOVED 16281 192.168.0.14:6379

Он не пишет и не читает. Когда я пытаюсь получить "myKey" из 192.168.0.14:6379, он показывает следующее:

127.0.0.1:6379> get myKey
(nil)

Что не так с моими запросами? Я использую Redis Server версии 3.2.5

Александр
источник

Ответы:

36

Узел действительно перенаправил вас.

Как объясняется в документации , ожидается, что клиент подключится к указанному узлу, чтобы повторить запрос. Сервер не делает этого.

Если вы используете redis-cli, то вы должны использовать -cопцию, если вы хотите, чтобы он следовал этим перенаправлениям.

Майкл Хэмптон
источник