centos7上 redis主从配置和哨兵模式配置

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wudinaniya/article/details/82626285

1 先在主从机上安装好redis,安装步骤参见:https://blog.csdn.net/wudinaniya/article/details/82591329

主redis配置

无需特殊配置。

从redis配置

修改从redis服务器上的redis.conf文件,添加slaveof 主redisip  主redis端口

上边的配置说明当前该从redis服务器所对应的主redis是192.168.101.3,端口是6379

注意事项:

从机是不可以写数据的,当你尝试写的时候会报错,因为配置文件里默认参数设置是只读(slave-read-only yes),所以主从复制也同样实现读写分离,读数据走从机,写数据走主机。

eg: 当往从机上写数据时,报错:

127.0.0.1:6379> set name3 马陆
(error) READONLY You can't write against a read only slave.
127.0.0.1:6379> get name3
(nil)

如果修改主、从机 redis.conf 配置文件, slave-read-only 值 设为 no, 则虽然从机 可写,但从机写入的数据无法 同步到主机。除非开启哨兵模式,主机故障,该从机提升为主机。



哨兵模式

前面我们详细的讲解了Redis的主从集群模式,其实这个集群模式配置很简单,只需要在Slave的节点上进行配置,Master主节点的配置不需要做任何更改,但是有一点,Master和Slave两个节点的持久化配置尽量保持一致,否则会有奇怪的问题出现。从今天开始我们开始讲Redis集群模式的第二模式,也就是“哨兵”模式。

Redis-sentinel的哨兵灾备切换配置

两台机器安装redis

例如

192.168.0.242

192.168.0.243

修改该sentinel配置文件

vi /usr/local/redis/redis-3.2.10/sentinel.conf

protected-mode no

daemonize yes     (在sentinel.conf 文件中默认没有该项,需手动添加,以开启redis的sentinel(士兵守护)进程的后台启动模式

sentinel monitor mymaster 192.168.0.242 6379 1

sentinel down-after-milliseconds mymaster 5000

sentinel failover-timeout mymaster 15000

sentinel parallel-syncs mymaster 1

mymaster 后面跟master的ip 和端口 最后一个1 代表只要有一个sentienl认为master下线就认为该master 客观下线 启动failover 并选举新的master 通常最后一个参数不能多于启动的sentinel实例数

down-after-milliseconds 服务器不可靠的判断依据

parallel-syncs 在故障转移成功后,马上将切到新的master的slave数量

启动sentinel 服务

[root@solr1 src]# ./redis-sentinel /usr/local/redis/redis-3.2.10/sentinel.conf
或
[root@solr2 bin]# ./redis-sentinel /usr/local/redis/redis-3.2.10/sentinel.conf

哨兵模式的优缺点

       优点:

          1、哨兵集群模式是基于主从模式的,所有主从的优点,哨兵模式同样具有。

          2、主从可以切换,故障可以转移,系统可用性更好。

          3、哨兵模式是主从模式的升级,系统更健壮,可用性更高。

       缺点:
        
          1、Redis较难支持在线扩容,在集群容量达到上限时在线扩容会变得很复杂。为避免这一问题,运维人员在系统上线时必须确保有足够的空间,这对资源造成了很大的浪费

猜你喜欢

转载自blog.csdn.net/wudinaniya/article/details/82626285