Redis-Cluster集群

集群配置

打开redis配置文件,找到 REDIS CLUSTER 配置块。修改以下配置:

# 开启redis-cluster集群配置
cluster-enabled yes
# 每一个节点在集群中的配置文件, 该文件有redis自己去维护 
cluster-config-file nodes-6379.conf
# 超时时间,超时自动切换
cluster-node-timeout 5000
# aof模式
appendonly yes
# aof日志文件名
appendfilename "appendonly.aof"

构建集群时,需要将.rdb文件和.aof文件删除或者清空,否则会报错。

构建集群

早期,构建redis集群使用的是ruby去构建的,在redis源码目录下,进入到src目录,下面有一个.rb的ruby脚本,通过这个脚本来构建集群,新版本不在使用这个方式。

新版本构建方法

redis-cli --cluster help 回车,可以查看命令使用方法

# create 后面的地址是集群所有节点的地址,--cluster-replicas表示slave节点和master节点的比值,1就是1个master对应1个slave
redis-cli --cluster create 192.168.1.201:6379 192.168.1.202:6379 192.168.1.203:6379 192.168.1.204:6379 192.168.1.205:6379 192.168.1.206:6379 --cluster-replicas 1

创建集群时,如果报错没有权限,在命令开头加上:-a 密码,即可

检查集群是否创建成功

redis-cli --cluster 192.168.1.201:6379 
# 会输出集群各个节点信息

slot槽节点

槽节点是在master节点上平均分配的,slave节点是没有槽节点的,数据就是保存在这个槽位里面的。 slot节点

槽slot怎么存储

当我们存储一个key的时候,redis会根据这个key去hash一个值,然后取余槽节点总数,计算出来的值就是这个槽位的位置。 slot存储

查看集群信息,cluster info 查看节点信息,cluster nodes