Не удалось подключиться к Redis Sential от Lettuce в JAVA Spring Boot.JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Не удалось подключиться к Redis Sential от Lettuce в JAVA Spring Boot.

Сообщение Anonymous »

Я пытаюсь подключиться к Redis Sentinel в JAVA Spring Boot, используя салат. Но я получаю сообщение об ошибке Требуется проверка подлинности NOAUTH.

Код: Выделить всё

exception message :: Unable to connect to Redis; nested exception is io.lettuce.core.RedisException: java.util.concurrent.ExecutionException: io.lettuce.core.RedisCommandExecutionException: NOAUTH Authentication required.
Но я передаю пароль правильно. Когда я тестирую автономное соединение Redis, оно работает. Ниже приведен код для автономного подключения.

Код: Выделить всё

    @Bean
public LettuceConnectionFactory lettuceConnectionFactory() {

RedisStandaloneConfiguration rs = new RedisStandaloneConfiguration("redis-host.svc.cluster.local", 6379);
rs.setPassword(RedisPassword.of("original_password"));
return new LettuceConnectionFactory(rs);

}

@Bean
public CacheManager cacheManager(LettuceConnectionFactory lettuceConnectionFactory) {
RedisCacheConfiguration redisCacheConfiguration = RedisCacheConfiguration.defaultCacheConfig()
.disableCachingNullValues();
return RedisCacheManager.builder(lettuceConnectionFactory).cacheDefaults(redisCacheConfiguration).build();
}

@Bean
public RedisTemplate redisTemplate() {
final RedisTemplate redisTemplate = new RedisTemplate();
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setValueSerializer(new JdkSerializationRedisSerializer());
redisTemplate.setConnectionFactory(lettuceConnectionFactory());
return redisTemplate;
}
Ниже приведен код для подключения к Redis Sentinel

Код: Выделить всё

    @Bean
public LettuceConnectionFactory lettuceConnectionFactory() {

String pwd = "original_password";

RedisSentinelConfiguration sentinelConfiguration = new RedisSentinelConfiguration().master("master");
sentinelConfiguration.sentinel("redis-host.svc.cluster.local", 26379);
sentinelConfiguration.setPassword(RedisPassword.of(pwd));

return new LettuceConnectionFactory(sentinelConfiguration);

}

@Bean
public CacheManager cacheManager(LettuceConnectionFactory lettuceConnectionFactory) {
RedisCacheConfiguration redisCacheConfiguration = RedisCacheConfiguration.defaultCacheConfig()
.disableCachingNullValues();
return RedisCacheManager.builder(lettuceConnectionFactory).cacheDefaults(redisCacheConfiguration).build();
}

@Bean
public RedisTemplate redisTemplate() {
final RedisTemplate redisTemplate = new RedisTemplate();
redisTemplate.setKeySerializer(new StringRedisSerializer());
redisTemplate.setValueSerializer(new JdkSerializationRedisSerializer());
redisTemplate.setConnectionFactory(lettuceConnectionFactory());
return redisTemplate;
}
Я мог бы правильно подключиться к тому же Redis Sentinel с Node.js. Ниже приведен код правильного подключения Node.js к Redis Sentinel.

Код: Выделить всё

const Redis = require('ioredis');

const redisClient = new Redis({
sentinels: [
{
host: "redis-host.svc.cluster.local",
port: 26379
},
],
password: 'original_password',
sentinelPassword: 'original_password',
name: 'master',
});

(async function() {
await redisClient.set('key', 'value');
const value = await redisClient.get('key');
console.log(value);
})();
В node.js (io-redis) кажется, что нам нужно передать и password, и sendinelPassword, чтобы соединиться с Redis Sentinel. Исключение любого из них приведет к той же ошибке, которую я получаю для JAVA.
Но в Java (luttece) я не увидел никакой функции для установки пароля, есть только возможность установите пароль SentinelPassword.
Пожалуйста, помогите решить эту проблему.

Подробнее здесь: https://stackoverflow.com/questions/784 ... pring-boot
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»