Redis主从复制哨兵模式

在上一篇博客说到主从复制的简陋实现Redis主从复制,这样在正在的生产上是可能不行的。

1.那么主从复制到底有什么用呢?

1.读写分离:比如在大型的网站下,数据量非常庞大如果写和读操作,全部在一台机器库上操作每秒上亿的数据量(或者还要大)这样就机器、数据库肯定会挂掉,这时候就有主从复制实现读、写分离,主机上写操作、从机实现

  读操作。分开行动避免系统资源的消耗。

2.容灾恢复:比如说是用一台数据库在跑,万一哪天这台库爆炸、挂掉了怎么办,数据没了、数据库多挂了你依靠的项目是不是也挂掉了。这时候用主从复制,就避免了,万一主机爆炸挂掉了,我从机就能马上上位继承主机的功能以维持项目正常跑这就是叫容灾恢复(可能我说的比较抽象大笑)。

2.哨兵模式是什么?有什么用呢?

1.哨兵,意思就是巡逻。假如在生产上数据库挂掉,你是不是可以人员操作把从库操作上位,但是万一它半夜2、3   点挂掉,你去哪里找人操作。这时候就要哨兵模式,自动巡逻,万一主库挂掉,它就在自动选举从库上位。从而     代替人为操作(说白了就是自动)。

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

3.哨兵模式配置实现:

1.自定义的/myredis(我是在这个目录下)目录下新建sentinel.conf文件,名字绝不能错。

2.配置哨兵模式核心文件,sentinel monitor 被监控数据库名字(自己起名字) 127.0.0.1 6379 1(主机IP端口):

  上面最后一个数字1,表示主机挂掉后salve(从机)投票看让谁接替成为主机,得票数多少后升为主机

 

3.启动哨兵模式redis-sentinel /myredis/sentinel.conf :

  


4.换一种形式来实现主从复制:

 


好,可以来看看三台机器的角色变换:


这就是实现一传一,传一形式,减轻主机负担。

5.在来试试哨兵模式下主从复制,假如主机挂掉了它还发生什么变化:

   先把主机关掉:


看看从机的角色状态会发生什么变化:


6.如果6379主机又重新开启回来了,那么它的角色会是什么呢?会不会双master(主机)冲突??


这就像是,老领导走了,咱们小弟们就重新投票选一个新领导,然后老领导突然回来了,但是它不会直接变成领导而是从小弟干起。微笑

7.最后哨兵监听、日志什么也发生信息的变化:


猜你喜欢

转载自blog.csdn.net/lifupingcn/article/details/68942133