При запуске загрузочного приложения Spring: redis.clients.jedis.exceptions.JedisDataException: NOAUTH Требуется аутентификация - PullRequest
0 голосов
/ 21 января 2019

Я пытаюсь реализовать аутентификацию на основе пароля для дозорного. Я добавил requirepass в sentinal.conf У моего RedisConfig.java есть боб

@Bean
    JedisConnectionFactory jedisConnectionFactory() {
        JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
        jedisPoolConfig.setMaxTotal(maxActive);
        jedisPoolConfig.setMaxIdle(maxIdle);
        jedisPoolConfig.setMinIdle(minIdle);
        jedisPoolConfig.setTestOnBorrow(testOnBorrow);

        RedisSentinelConfiguration redisSentinelConfiguration = new RedisSentinelConfiguration(
                masterNode, nodes);
        if (isNotEmpty(password)) {
            RedisPassword redisPassword = RedisPassword.of(password);
            redisSentinelConfiguration.setPassword(redisPassword);
        }

        return new JedisConnectionFactory(redisSentinelConfiguration, jedisPoolConfig);
    }

Итак, я вижу, что пароль устанавливается с помощью RedisSentinelConfiguration.

Но при запуске весеннего загрузочного приложения оно пытается создать JedisSentinelPool с помощью jedisPoolConfig. Это происходит сбой из-за ошибки ниже

redis.clients.jedis.JedisSentinelPool: Невозможно получить главный адрес от работающего дозорного @ 127.0.1.1:16379. Причина: redis.clients.jedis.exceptions.JedisDataException: NOAUTH Требуется аутентификация ..

Я вижу, что исключение происходит из JedisSentinelPool.class

в методе HostAndPort initSentinels (Установить дозорные, конечное строковое masterName)

Она не принимает команду AUTH с паролем, поэтому аутентификация не удалась. Любая помощь приветствуется

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...