参考之前的文章:
Redis小总结
Redis主从复制
使用Docker来搭建Redis集群
Redis哨兵模式之前这一块,那一块,有点散乱。现在放一起总结一下 Redis的模式。
master、slave
首先,你要明白的是。
、redis 有两种模式:master、slave。其中 master可读可写,slave只读(也可配置从可写,不建议)。
、redis 默认启动方式 master。
主从模式
配置文件自动认主:replicaof 172.22.0.79 6379
(当79的从机,重启仍有效)
命令行手动认主:SLAVEOF 172.22.0.79 6379
(当79的从机,重启则无效)
命令行手动变主:SLAVEOF no one
(自己由从机变为主机)
总结:重启按照配置文件生效,配置文件中有,就当从,没有就默认当主。
创建集群
搭建 Redis 机器,6台已经启动,这时候创建集群,副本1,也就是 3主3从。会把 16384分配3个范围槽位。设置的 key 与 16384取余,定位到那个机器,数据就放入那个机器。redis-cli --cluster create 172.22.0.11:6379 172.22.0.12:6379 172.22.0.13:6379 172.22.0.14:6379 172.22.0.15:6379 172.22.0.16:6379 --cluster-replicas 1
》Master[0] -> Slots 0 - 5460
》Master[1] -> Slots 5461 - 10922
》Master[2] -> Slots 10923 - 16383
也可以 6台主。无从。这时候,主挂了,就用其他的主。
哨兵监控
哨兵模式,采用 raft 算法。关于 raft算法可参考:Raft算法
可配置多个主节点。只要主挂了,就从主下面的salve下面,选一个主。超过 2票即可。2可自行配置。
1 | # 主机1 |
即使主挂了,也会让2台从机中选出一个当做主机。
原本雄心壮志的想写好一篇文章,当写的时候才发现,如果写全的话,就是相当于把之前的复制过来。最后,只是把此篇文章简要的提一下重点。