文章目录
- 一、添加配置文件
- 二、启动服务和集群
- 三、集群操作
- 四、故障恢复
一、添加配置文件
一共8个文件
- 创建6个redisXXX.conf文件
6个文件的内容和下面的一样,但是要修改端口数值。例如:把下面的6379全部改为6380# 路径为redis.conf的绝对路径 include /redis集群/redis.conf pidfile "/var/run/redis_6379.pid" # 端口 port 6379 # 持久化文件名字 dbfilename "dump6379.rdb" cluster-enabled yes # 打开集群模式 cluster-config-file nodes-6379.conf #设定节点配置文件 cluster-node-timeout 15000 # 设定节点失联时间,超过该时间(毫秒),集群自动进行主从切换
- redis.conf文件
redis.conf文件从redis的安装目录下面复制过来,并把appendonly
参数改为no
六百多行,可以用/appendonly 或 ?appendonly来查找内容
- sentinel.conf文件
创建sentinel.conf文件并添加以下内容# 以6379为主节点 sentinel monitor mymaster 127.0.0.1 6379 1
二、启动服务和集群
-
用redis-server redisXXX.conf命令启动6个
服务
会生成nodes配置文件
-
将6个节点nodes合成一个集群
去redis安装路径下面的src文件夹里面#执行 redis-cli --cluster create --cluster-replicas 1 192.168.121.133:6379 192.168.121.133:6380 192.168.121.133:6381 192.168.121.133:6389 192.168.121.133:6390 192.168.121.133:6391 命令启动集群
输入yes确定主从分配
集群启动成功
-
连接redis
连接集群 redis-cli -p -c 6379 查看节点 cluster nodes
三、集群操作
数据会按插槽分配
set k1 k1
查看key在集群中的插槽值
cluster keyslot key
查看插槽中有几个key
cluster getkeysinslot 插槽值
查看插槽的第几个key
cluster getkeysinslot 插槽值 第几个
四、故障恢复
- 把某个主机挂掉
- 再次启动会变从机
一段主从都挂掉,集群不可用
cluster-require-full-coverage yes
一段主从都挂掉,集群可用,但这一段插槽不可用
cluster-require-full-coverage no