1. 程式人生 > >無法連接redis問題

無法連接redis問題

服務 resources dport character true nal redis-cli valid pass

今天加入redis但連接一直報無法獲取到連接,看配置

今天加入redis但連接一直報無法獲取到連接,看配置


```
<bean id="redisResources" class="java.util.ArrayList">
<constructor-arg>
<list>
<value>classpath*:jedis.properties</value>
</list>
</constructor-arg>
</bean>

<bean id="redisProp" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="order" value="11" />
<property name="ignoreUnresolvablePlaceholders" value="true" />
<property name="locations" ref="redisResources" />
</bean>
<bean id="sentinelConfig" class="org.springframework.data.redis.connection.RedisSentinelConfiguration">
<constructor-arg name="master" value="mymaster" />
<constructor-arg name="sentinelHostAndPorts">
<set>
<!-- <value>abcd</value> -->
<value>192.168.82.242</value>
</set>
</constructor-arg>
</bean>

jedis.properties
redis.ip=192.168.82.224
#Port
redis.port=6379
redis.timeout=5000
redis.password=chelizi

都是正確的


登錄242服務器,查看sentinal的配置
# The valid charset is A-z 0-9 and the three characters ".-_".
sentinel monitor mymaster 127.0.0.1 6379 2


也是對的,怎麽連不進了?


用wireshark跟蹤一下網絡包,發現連接redis的時候竟然是去連192.168.63.247, why?
趕緊登錄服務器
./redis-cli -p 26379
執行命令
SENTINEL masters
返回
1) 1) "name"
2) "mymaster"
3) "ip"
4) "192.168.63.247"
5) "port"
6) "6379"

shit, 看來是改了配置之後沒有重啟sentinal, 執行命令
先移除之前的監控
127.0.0.1:26379> SENTINEL REMOVE mymaster
OK

再添加監控

127.0.0.1:26379> SENTINEL MONITOR mymaster 192.168.82.242 6379 2
OK
127.0.0.1:26379> SENTINEL masters
1) 1) "name"
2) "mymaster"
3) "ip"
4) "192.168.82.242"
5) "port"
6) "6379"

問題解決

無法連接redis問題