前言:在前面讲到了Redis分片机制可实现内存数据的扩容来提高执行速率—Redis分片机制,可是Redis分片依旧有一些问题,如果redis分片的节点如果有一个服务器宕机,则直接影响用户的使用.Redis分片机制没有实现高可用功能(HA)。----我所使用的Linux系统是dsCentOS-empty
1.Redis高可用哨兵机制
1.1主从同步配置
1.1.1 主从同步说明
说明:如果需要实现redis的高可用(HA),则必须先实现主从的同步。
当用户操作主节点时,由程序内部自动的实现数据的同步,将数据同步给从节点.这时主机和从机拥有相同的数据。
1.1.2 准备哨兵的Redis节点
说明:
1.首先将redis的分片服务器全部关闭。
2.复制分片的文件目录,并且改名为sentinel
cp -r shards sentinel
3.删除多余的持久化文件
rm -f dump.rdb
4.分别启动redis
redis-server 6379.conf & redis-server 6380.conf & redis-server 6381.conf &
检查Redis启动是否正常.
1.1.3检查Redis节点状态
命令: 要求在redis的客户端中执行
info replication
role:master
说明是主机,connevted_slaves:0
说明暂无从机
1.1.4实现主从挂载
设计方案: 6379当主机 6380/6381当从机。
在6380/6381中执行如下命令:
slaveof 主机的IP地址 主机的端口号
2.检查主从的状态
role:slave
以为着它是从机,master_host/port
是主机信息
3.向Redis的主机中添加数据,之后检查6380/6381中是否有数据 是否实现数据的同步.
1.2Redis哨兵实现
1.2.1 哨兵工作原理
工作原理说明:
-
当哨兵启动时,会根据配置文件监听当前的主机.获取主机