安装

centos7 安装 最新redis


yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
yum --enablerepo=remi install redis


搭建Cluster

创建6个节点的配置文件。分别为:

  • redis-7000.conf
  • redis-7001.conf
  • redis-7002.conf
  • redis-7003.conf
  • redis-7004.conf
  • redis-7005.conf

后面的7000,7001等是redis启动的端口号。接下来编辑文件的内容:


#该集群阶段的端口
port 7000
#为每一个集群节点指定一个pid_file
pidfile /var/run/redis_7000.pid
#在bind指令后添加本机的ip
bind 10.6.20.145
#找到Cluster配置的代码段,使得Redis支持集群
cluster-enabled yes
#每一个集群节点都有一个配置文件,这个文件是不能手动编辑的。确保每一个集群节点的配置文件不通
cluster-config-file nodes-7000.conf
#集群节点的超时时间,单位:ms,超时后集群会认为该节点失败
cluster-node-timeout 3000
#最后将appendonly改成yes
appendonly yes 
#密码
requirepass pswdmaster
#主备密码
masterauth pswdmaster


这样一个节点的配置就完成,其他的5个节点也做同样的配置。之后将6个节点的Redis实例启动:


$ nohup redis-server redis-7000.conf &
$ nohup redis-server redis-7001.conf &
$ nohup redis-server redis-7002.conf &
$ nohup redis-server redis-7003.conf &
$ nohup redis-server redis-7004.conf &
$ nohup redis-server redis-7005.conf &


使用这6个节点创建集群:


$ redis-cli --cluster create 10.6.20.145:7000 10.6.20.145:7001 10.6.20.145:7002 10.6.20.145:7003 10.6.20.145:7004 10.6.20.145:7005 --cluster-replicas 1 --cluster-yes -a pswdmaster


执行命令后显示


>>> Performing hash slots allocation on 6 nodes...
Master[0] -> Slots 0 - 5460
Master[1] -> Slots 5461 - 10922
Master[2] -> Slots 10923 - 16383
Adding replica 10.6.20.145:7004 to 10.6.20.145:7000
Adding replica 10.6.20.145:7005 to 10.6.20.145:7001
Adding replica 10.6.20.145:7003 to 10.6.20.145:7002
>>> Trying to optimize slaves allocation for anti-affinity
……
[OK] All nodes agree about slots configuration.
>>> Check for open slots...
>>> Check slots coverage...
[OK] All 16384 slots covered.


参考:


Redis Cluster(集群)的搭建www.jianshu.com

redis bind ip redis bind ipv6_配置文件