Redis主从复制、哨兵模式

1、主从复制是什么?

主从复制就是主机数据更新后根据配置和策略,自动同步到备机的master/slave机制,Master以写为主,Slave以读为主,这样能更好地实现读写分离,性能扩展,容灾快速恢复

2、准备,拷贝多个redis.conf,开启daemonize yes改写pid文件名指定端口log文件名,dump.rdb名

分别配置端口6379 6380 6381 并更改其他配置 如下:

    

    

      

 3、用 info replication 的命令查看主从复制的相关信息(这里79是主机,80,81是从机)slaveof <ip><port>命令成为某个实例的服务器

  

4、一主二仆模式演示:常见现象一,主机写,从机读

  

从机是否能写?(从机只读)

 从机是否能复制主机之前已经写入的数据?(从机宕机,主机写入数据,从机再重启)

 

 主机宕机,从机上位还是原地待命?(待命)

 

 主机恢复,新增记录,从机是否还能顺利复制?(是,主机恢复之后,依然是主机,恢复原来的一主二从体系)

 

 如果从机宕机,恢复后,数据还能是否能跟上?(不能,从机宕机,恢复后是自己的主机,数据跟不上)

  

 

 5、复制原理

每次从机联通后,都会给主机发送sync指令

主机立刻进行存盘操作,发送RDB文件给从机

从机接收到RDB文件后,进行全盘加载

之后每次主机写操作,都会立刻发送给从机,从机执行相同的命令

 6、薪火相传

上一个slave可以是下一个slave的Master,slave同样可以接收到其他slaves的链接和同步请求,那么该slave作为了链条中的下一个的master。可以有效减轻master的写压力,去中心化降低风险

  

 7、哨兵模式

能够后台监控主机是否故障,如果故障了根据投票数自动将从库转换为主库

配置哨兵模式:调整为一主二仆,新建一个sentinel.conf文件,在配置文件中写入:

 

 启动哨兵模式:执行redis-sentinel /usr/local/redis-5.0.5/sentinel.conf 命令

主机 6379宕机后,查看哨兵模式选举,6381晋升为主机,6379恢复后默认为从机

 

 

posted on 2020-07-10 17:04  hi梨涡  阅读(232)  评论(0编辑  收藏  举报

导航