redis主从同步配置和哨兵机制监控master主从切换配置

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: 搭建好redis单机后,开始研究redis集群配置 两台VM虚拟机,都安装了redis程序,一台作为master 一台作为slave 首先配置redis主从配置 配置在redis.conf文件中 主机上需要设置masterauth(光主从同步不需要配置这个,但是后续配置哨兵机制的时候...

搭建好redis单机后,开始研究redis集群配置

两台VM虚拟机,都安装了redis程序,一台作为master 一台作为slave

首先配置redis主从配置

配置在redis.conf文件中

主机上需要设置masterauth(光主从同步不需要配置这个,但是后续配置哨兵机制的时候需要配置这个属性)

从机上需要配置slaveof 主机IP 主机端口,同样也许配置masterauth,密码和主机一样

启动主机,启动从机

在主机上set key value后

在从机上get key 

能正常得到主机设置的值


但是要实现主从容错自动切换,就需要配置redis哨兵,

redis-sentinel 是一个守护进程,作用有,监控,管理主从机,通知,主从切换功能

首先设置主机sentinel.conf

sentinel monitor mymaster 127.0.0.1 6379 1   

这句话的意思是监控集群名为mymaster的主机IP,端口,最后一个数字表示,当有几台哨兵监控到主机出错后执行主从切换

sentinel auth-pass mymaster  密码

这个密码需要和redis.conf中的masterauth一致

sentinel down-after-milliseconds mymaster 15000  

这个配置设置的是当哨兵每秒对mymaster主机执行Ping操作时,超过15000毫秒后认为主机宕机

sentinel failover-timeout mymaster 900000 

和当主从切换多久后认为主从切换失败


sentinel leader-epoch mymaster 1

sentinel config-epoch mymaster  1

这两个配置后面的数量主从机需要一样


请注意,当主机启动过redis-sentinel 后,哨兵会根据各丛机配置自动查找丛机,会在主机的sentinel.conf文件中自动生成丛机IP,所以不需要将所有丛机IP 列出来

当启动过redis-sentinel时,会在主机sentinel.conf和从机sentinel.conf中生成myid,建议重启redis-sentinel时将两个sentinel.conf中生成的myid删除,不然主从切换时,会根据myid去找对应的从机,当新生成的myid和原来的myid不一致,将无法切换



设置从机sentinel.conf

和主机的sentinel.conf保持一致,


先启动主机redis-server ,在启动从机redis-server,再启动主机redis-sentinel 再启动从机redis-sentinel


将主机master的进程杀掉,可以看到下图的日志,右边为主机,左边为从机




相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore     ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库 ECS 实例和一台目标数据库 RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
8天前
|
存储 NoSQL Redis
08- 什么是 Redis 主从同步?
Redis主从同步是种数据备份机制,Slave从Master获取全量数据,之后持续接收增量更新。全量复制阶段包括Slave请求同步、Master拒绝增量并发送RDB到Slave、Slave加载RDB。增量复制阶段,Master使用repl_backlog存储命令并发送给Slave,Slave执行这些命令以保持与Master同步。该机制确保主从数据一致性,支持多个Slave和一个Master。
22 0
|
1月前
|
存储 缓存 NoSQL
【Redis】Redis魔法:揭秘Key的自动消失术——过期删除机制解析
【Redis】Redis魔法:揭秘Key的自动消失术——过期删除机制解析
93 0
|
1月前
|
NoSQL 算法 安全
Redlock 算法-主从redis分布式锁主节点宕机锁丢失的问题
Redlock 算法-主从redis分布式锁主节点宕机锁丢失的问题
152 0
|
1月前
|
NoSQL Java Redis
Springboot从2.x升级到3.x以后redis默认配置调整
Springboot从2.x升级到3.x以后redis默认配置调整
44 0
|
1月前
|
NoSQL Redis Sentinel
【怒怼大厂面试官】听说你精通Redis?说说Redis哨兵
面试官:Redis哨兵知道吧?知道的,Sentinel哨兵本质是一个运行在特殊模式下的Redis服务器。面试官:嗯然后呢?它的主要作用是通过检测Redis主从服务器的下线状态,选举出新Redis主服务器,也就是故障转移,来保证Redis的高可用性。
75 4
【怒怼大厂面试官】听说你精通Redis?说说Redis哨兵
|
1月前
|
NoSQL Linux Redis
Linux系统中安装redis+redis后台启动+常见相关配置
Linux系统中安装redis+redis后台启动+常见相关配置
|
20天前
|
NoSQL Java Redis
【Redis深度专题】「踩坑技术提升」一文教会你如何在支持Redis在低版本Jedis情况下兼容Redis的ACL机制
【Redis深度专题】「踩坑技术提升」一文教会你如何在支持Redis在低版本Jedis情况下兼容Redis的ACL机制
52 0
|
20天前
|
缓存 NoSQL Shell
【Redis深度专题】「核心技术提升」探究Redis服务启动的过程机制的技术原理和流程分析的指南(持久化功能分析)
【Redis深度专题】「核心技术提升」探究Redis服务启动的过程机制的技术原理和流程分析的指南(持久化功能分析)
25 0
|
20天前
|
存储 缓存 NoSQL
【Redis深度专题】「核心技术提升」探究Redis服务启动的过程机制的技术原理和流程分析的指南(集群功能分析)(一)
【Redis深度专题】「核心技术提升」探究Redis服务启动的过程机制的技术原理和流程分析的指南(集群功能分析)
41 0
|
30天前
|
NoSQL 应用服务中间件 Linux
Redis的内存回收机制
Redis的内存回收机制
23 2

热门文章

最新文章