Ошибка команды кластеризации Redis Enterprise 'CLUSTER' - PullRequest
0 голосов
/ 04 марта 2020

Мы только что установили Redis Enterprise и настроили некоторую конфигурацию в базе данных.

enter image description here

Мы создали простой скрипт, поскольку в нашем приложении команда cluster не выполняет команду не работает, и это правильно, это не работает:

var RedisClustr = require('redis-clustr');
var redis = new RedisClustr({
  servers: [
    {
      host: 'URL',
      port: 18611
    }
  ],
  redisOptions: {
    password: 'ourpassword'
  }
});

redis.get('KSHJDK', function(err, res) {
  console.log(res, err);
});

Ошибка оболочки:

undefined Error: couldn't get slot allocation'
    at tryClient (/Users/machine/Sites/redis-testing/node_modules/redis-clustr/src/RedisClustr.js:194:17)
    at /Users/machine/Sites/redis-testing/node_modules/redis-clustr/src/RedisClustr.js:205:16
    at Object.callbackOrEmit [as callback_or_emit] (/Users/machine/Sites/redis-testing/node_modules/redis-clustr/node_modules/redis/lib/utils.js:89:9)
    at RedisClient.return_error (/Users/machine/Sites/redis-testing/node_modules/redis-clustr/node_modules/redis/index.js:706:11)
    at JavascriptRedisParser.returnError (/Users/machine/Sites/redis-testing/node_modules/redis-clustr/node_modules/redis/index.js:196:18)
    at JavascriptRedisParser.execute (/Users/machine/Sites/redis-testing/node_modules/redis-clustr/node_modules/redis-parser/lib/parser.js:572:12)
    at Socket.<anonymous> (/Users/machine/Sites/redis-testing/node_modules/redis-clustr/node_modules/redis/index.js:274:27)
    at Socket.emit (events.js:321:20)
    at addChunk (_stream_readable.js:297:12)
    at readableAddChunk (_stream_readable.js:273:9) {
  errors: [
    ReplyError: ERR command is not allowed
        at parseError (/Users/machine/Sites/redis-testing/node_modules/redis-clustr/node_modules/redis-parser/lib/parser.js:193:12)
        at parseType (/Users/machine/Sites/redis-testing/node_modules/redis-clustr/node_modules/redis-parser/lib/parser.js:303:14) {
      command: 'CLUSTER',
      args: [Array],
      code: 'ERR'
    }
  ]
}

Мы что-то упустили в конфигурации? Мы не знаем, была ли это ошибка в кластеризации или в Redis Enterprise.

1 Ответ

1 голос
/ 05 марта 2020

Redis Enterprise поддерживает два варианта кластеризации. С обычным кластером OSS вам нужен клиент с поддержкой кластера, такой как тот, который вы используете. Тот, который вы используете, предназначен для клиентов, не поддерживающих кластер, вы должны использовать его с обычным клиентом (как если бы вы подключались к одному процессу Redis).

...