参考地址:redis集群
安装ruby
yum -y install ruby
yum -y install rubygems
gem install redis
gem install redis安装异常问题
-- 执行curl -L get.rvm.io | bash -s stable 包错 curl: (35) SSL connect error问题处理
-- 原因 无法在服务器使用curl命令访问https域名,原因是nss版本有点旧了
yum -y update nss
-- 其中 gem install redis命令执行时出现了:
-- redis requires Ruby version >= 2.2.2的报错,查了资料发现是Centos默认支持ruby到2.0.0,可---- gem 安装redis需要最低是2.2.2
--解决办法是 先安装rvm,再把ruby版本提升至2.3.3
--1.安装curl
sudo yum install curl
--2. 安装RVM
curl -L get.rvm.io | bash -s stable
--3.
source /usr/local/rvm/scripts/rvm
--4. 查看rvm库中已知的ruby版本
rvm list known
--5. 安装一个ruby版本
rvm install 2.3.3
--6. 使用一个ruby版本
rvm use 2.3.3
--7. 设置默认版本
rvm remove 2.0.0
--8. 卸载一个已知版本
ruby --version
--9. 再安装redis就可以了
gem install redis
redis.conf配置文件修改以下几个位置、port和pidfile端口可变
#bind 127.0.0.1
# requirepass 123456
daemonize yes
cluster-enabled yes
protected-mode no
port 7001
pidfile /var/run/redis_7001.pid
配置集群
./redis-trib.rb create --replicas 1 10.10.0.204:7001 10.10.0.204:7002 10.10.0.204:7003 10.10.0.204:7004 10.10.0.204:7005 10.10.0.204:7006
配置集群失败
Creating cluster
[ERR] Sorry, can't connect to node 10.10.0.204:7002
原因1:密码
find / -name client.rb
vi /usr/local/rvm/gems/ruby-2.3.3/gems/redis-4.0.3/lib/redis/client.rb
去掉密码或者设置redis中密码到这里
原因2:
在redis3.2之后,redis增加了protected-mode,在这个模式下,即使注释掉了bind 127.0.0.1,再访问redisd时候还是报错
修改办法:protected-mode no
原因3:
防火墙一定要开放监听的端口,否则会创建失败
springboot连接集群配置
spring.redis.cluster.nodes=10.10.0.204:7001,10.10.0.204:7002,10.10.0.204:7003,10.10.0.204:7004,10.10.0.204:7005,10.10.0.204:7006
#spring.redis.host=10.10.0.204
#spring.redis.password=root
#spring.redis.port=6379
spring.redis.jedis.pool.max-idle=100
spring.redis.jedis.pool.min-idle=1
spring.redis.jedis.pool.max-active=1000
spring.redis.jedis.pool.max-wait=-1