1、概述
redis 集群可以在一组 redis 节点之间实现高可用性和 sharding。在集群中会有 1 个 master 和多个 sl*e 节点。当 master 节点失效时,应选举出一个 sl*e 节点作为新的 master。然而 redis 本身(包括它的很多客户端)没有实现自动故障发现并进行主备切换的能力,需要外部的监控方案来实现自动故障恢复。
redis sentinel 是官方推荐的高可用性解决方案。它是 redis 集群的监控管理工具,可以提供节点监控、通知、自动故障恢复和客户端配置发现服务。
2、遇到的问题
1、docker host网络
docker使用host网络时对于windows 、mac不生效(没找到解决方案),最后放弃了windows 使用centos部署集群。
2、不使用host网络的情况下sentinel 连接问题
不使用host网络的情况下连接sentinel集群时可以指定主节点端口故可以正常联通, 但在主节点故障时 sentinel 从主节点获取到的 ip 是容器内的虚拟 ip 导致集群无法正常连接。
3、搭建过程
1、目录结构
2、sentinel 配置文件
1、sentinel1.conf
#端口号 port 26379 dir /tmp # mymaster:自定义集群名,2:投票数量必须2个sentinel才能判断主节点是否失败 sentinel monitor mymaster <ip> <port> 2 # 指的是超过5000秒,且没有回复,则判定主节点不可达 sentinel down-after-milliseconds mymaster 5000 # 表示在故障转移的时候最多有numsl*es在同步更新新的master sentinel parallel-syncs mymaster 1 # 故障转移超时时间 sentinel failover-timeout mymaster 5000
2、sentinel2.conf
Mootion
Mootion是一个革命性的3D动画创作平台,利用AI技术来简化和加速3D动画的制作过程。
232
查看详情
#端口号 port 26380 dir /tmp # mymaster:自定义集群名,2:投票数量必须2个sentinel才能判断主节点是否失败 sentinel monitor mymaster <ip> <port> 2 # 指的是超过5000秒,且没有回复,则判定主节点不可达 sentinel down-after-milliseconds mymaster 5000 # 表示在故障转移的时候最多有numsl*es在同步更新新的master sentinel parallel-syncs mymaster 1 # 故障转移超时时间 sentinel failover-timeout mymaster 5000
3、sentinel3.conf
#端口号 port 26381 dir /tmp # mymaster:自定义集群名,2:投票数量必须2个sentinel才能判断主节点是否失败 sentinel monitor mymaster <ip> <port> 2 # 指的是超过5000秒,且没有回复,则判定主节点不可达 sentinel down-after-milliseconds mymaster 5000 # 表示在故障转移的时候最多有numsl*es在同步更新新的master sentinel parallel-syncs mymaster 1 # 故障转移超时时间 sentinel failover-timeout mymaster 5000
3、docker-compose.yml
version: '2' services: master: image: redis:4.0 restart: always container_name: redis-master #使用主机网络 network_mode: "host" command: redis-server --port 16379 sl*e1: image: redis:4.0 restart: always container_name: redis-sl*e-1 network_mode: "host" # 指定端口并指定master ip 端口 command: redis-server --port 16380 --sl*eof <master ip> 16379 sl*e2: image: redis:4.0 restart: always container_name: redis-sl*e-2 network_mode: "host" command: redis-server --port 16381 --sl*eof <master ip> 16379 sentinel1: image: redis:4.0 restart: always container_name: redis-sentinel-1 network_mode: "host" # 指定sentinel文件位置 command: redis-sentinel /usr/local/etc/redis/sentinel.conf # 使用数据卷映射文件到指定sentinel位置 volumes: - ./sentinel/sentinel1.conf:/usr/local/etc/redis/sentinel.conf sentinel2: image: redis:4.0 restart: always container_name: redis-sentinel-2 network_mode: "host" command: redis-sentinel /usr/local/etc/redis/sentinel.conf volumes: - ./sentinel/sentinel2.conf:/usr/local/etc/redis/sentinel.conf sentinel3: image: redis:4.0 restart: always container_name: redis-sentinel-3 network_mode: "host" command: redis-sentinel /usr/local/etc/redis/sentinel.conf volumes: - ./sentinel/sentinel3.conf:/usr/local/etc/redis/sentinel.conf
4、使用centos 部署集群测试效果
1、测试通过sentinel1连接集群

2、测试主节点子节点数据同步


3、关闭master查看主备切换

sentinel 正常联通

主节点从16379 切换 至16381

以上就是基于docker如何搭建redis-sentinel集群的详细内容,更多请关注其它相关文章!
# redis
# Docker
# 镜像
# 同步更新
# 可用性
# 端口号
# 指的是
# 可达
# 自定义
# 最多
# sentinel
# 滨江网站推广营销价格
# 网络营销推广直播
# 产品营销推广渠道策略
# 鞍山seo外包打造企业
# wordpress如何配置seo
# 大屯网站建设
# 公众号营销推广费用高吗
# 营销推广未来前景
# 口碑好的网站seo优化
# 黄山公司网站优化公司
# 客户端
# 案例分析
相关栏目:
【
Google疑问12 】
【
Facebook疑问10 】
【
优化推广96088 】
【
技术知识133117 】
【
IDC资讯59369 】
【
网络运营7196 】
【
IT资讯61894 】
相关推荐:
Win10如何关闭开机锁屏界面_Windows10跳过锁屏直接登录设置
C++ priority_queue怎么用_C++优先队列底层实现与自定义比较器
创建您的便携版VS Code:让配置随身携带
电脑没有声音了怎么办 电脑声音问题的全面排查与修复指南【详解】
苹果手机怎么合并照片_苹果手机合并多张照片的操作方法
《大周列国志》皇帝律令功能介绍
word页码灰色不能用如何解决
稻壳阅读器官方直达网址链接 稻壳阅读器文档阅读平台主页资源入口
Win10锁屏时间怎么设置 Win10调整自动锁屏时间方法
金牛福袋获取攻略
圆通快递包裹轨迹查询 圆通速递快件实时位置跟踪
百度小说看书时如何翻页_百度小说手动翻页与自动翻页设置
惠普电脑BIOS界面看不懂怎么办_HP电脑BIOS功能选项解读与设置
CodeIgniter 3 连接 SQL Server:正确获取查询结果的教程
铁路12306怎么申请退票_铁路12306退票申请操作流程
鲨鱼剧场app金币获取方法
Selenium自动化:利用键盘模拟解决复杂日期输入框输入问题
Win11如何分屏操作_Win11多窗口分屏技巧
如何在Podman容器中运行Composer_Docker替代品Podman的PHP与Composer容器化实践
iSpring三分屏制作教程
yy漫画登录页面官方入口_yy漫画在线阅读网址入口
《狐友》联系客服方法
Excel宏怎么删除_Excel中删除宏的详细操作流程
《三国:谋定天下》平民全阶段通用阵容
yy漫画官方网站登录入口_yy漫画在线阅读页面地址
口腔诊所管理软件推荐
12306不能订票的时间段是固定的吗? | 节假日购票时间有无变化
聚水潭ERP后台管理系统登录 聚水潭ERP官方登录通道
Animex动漫社正版在线入口 Animex动漫社动漫官方观看网
KFC邀请码怎么使用领额外优惠_KFC邀请码输入方式与额外优惠代码获取方法
如何在vscode中关闭it环境
纯CSS实现自适应宽度与响应式布局的水平按钮组
抖音号已注销怎么解绑企业认证?不解绑企业认证会怎样?
自定义你的VS Code状态栏,监控关键信息
如何在CSS中实现盒模型多列间距_grid-gap与padding结合
谷歌学术论文搜索引擎 谷歌学术官网入口论坛永久链接
《火影忍者:木叶高手》快速升级攻略
苹果电脑如何快速查看电池状态 苹果电脑电池信息快捷方法
2025考研成绩查询时间入口分享
PHP 4 函数中引用参数的默认值限制与解决方案
CSS过渡与滚动滚动事件结合应用_scroll与transition动画
Mac怎么关闭按键声音_Mac键盘打字音效设置
顺丰快递怎么查物流_顺丰快递物流信息实时查询操作指南
学习通网页版个人登录_学习通网页版个人账户登录入口
抖音猜你想搜能说明对方搜过吗
Python自动化抓取GBGB赛狗比赛结果:日期范围与赛道筛选教程
《虎扑》取消评分记录方法
申通快递物流信息查询 申通快递包裹状态追踪
C++二维数组动态分配方法_C++指针与数组内存布局
QQ邮箱PC端登录页面_QQ邮箱网页版登录界面
2023-06-02
运城市盐湖区信雨科技有限公司是一家深耕海外推广领域十年的专业服务商,作为谷歌推广与Facebook广告全球合作伙伴,聚焦外贸企业出海痛点,以数字化营销为核心,提供一站式海外营销解决方案。公司凭借十年行业沉淀与平台官方资源加持,打破传统外贸获客壁垒,助力企业高效开拓全球市场,成为中小企业出海的可靠合作伙伴。