高可用集群之(2)redis哨兵模式


Redis 的哨兵模式

Sentinel(哨兵)是用于监控Redis集群中Master状态的工具,是 Redis 高可用解决方案,哨兵可以监视一个或者多个redis master服务
某个master服务宕机后,会把这个master下的某个从服务升级为master来替代已宕机的master继续工作
  • 配置哨兵监控master
  • 普通配置
port 26379
pidfile "/usr/local/redis/sentinel/redis-sentinel.pid"
dir "/usr/local/redis/sentinel"
daemonize yes
protected-mode no
logfile "/usr/local/redis/sentinel/redis-sentinel.log"
  • 核心配置
     
# 配置哨兵
sentinel monitor mymaster 127.0.0.1 6379 2
# 密码
sentinel auth-pass <master-name> <password>
# master被sentinel认定为失效的间隔时间
sentinel down-after-milliseconds mymaster 30000
# 剩余的slaves重新和新的master做同步的并行个数
sentinel parallel-syncs mymaster 1
# 主备切换的超时时间,哨兵要去做故障转移,这个时候哨兵也是一个进程,如果他没有去执行,超过这个时间后,会由其他哨兵执行
sentinel failover-timeout mymaster 180000

三主三从集群配置

redis.conf 配置

# 开启集群模式 
    cluster-enabled yes 
# 每一个节点需要有一个配置文件,需要6份。每个节点处于集群的角色都需要告知其他所有节点,彼此知道,这 
#  个文件用于存储集 
    cluster-config-file nodes-201.conf 
# 超时时间,超时则认为master宕机,随后主备切换 
    cluster-node-timeout 5000
 # 开启AOF 
    appendonly yes

启动6个redis实例 
1. 启动6台 
2. 如果启动过程出错,把rdb等文件删除清空

创建集群
##### # 注意1:如果你使用的是redis3.x版本,需要使用redis-trib.rb来构建集群,最新版使用C语言来构建了,这个要注意 # 注意2:以下为新版的redis构建方式 #####

# 创建集群,主节点和从节点比例为1,1-3为主,4-6为从,1和4,2和5,3和6分别对应为主从关系,这也是最经典用的最多的集群

redis-cli --cluster create ip1:port1 ip2:port2 ip3:port3 ip4:port4 ip5:port5 ip6:port6 --cluster-replicas 1

slots:槽,用于装数据,主节点有,从节点没有

 

一般master数据无法同步给slave的方案检查为如下:

1. 网络通信问题,要保证互相 ping 通,内网互通。
2. 关闭防火墙,对应的端口开发(虚拟机中建议永久关闭防火墙,云服务器的话需要保证内网互通)。
3. 统一所有的密码,不要漏了某个节点没有设置
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值