DBAtlas · 数据库运维图谱

使用 Redis Sentinel 实现高可用(master + replica + 3 个 Sentinel)

Redis难度: 中级耗时: 45–60 分钟

从零搭建三台服务器的 Redis 7.2 / 8.2 或 Valkey 高可用架构:一个 master、两个 replica,每台服务器各运行一个 Sentinel。按步骤配置按 RAM 计算的 maxmemory、持久化(RDB/AOF)、密码、内核参数、quorum 与超时、计划内 failover 测试以及支持 Sentinel 的客户端连接;最终得到一套受密码保护、master 宕机后数秒内自动选出新 master 的架构。如果数据放不进单台服务器的内存,或写入负载超出单个 master 的能力,请使用 Redis Cluster 指南;已部署架构的日常运维、备份和安全加固见其他 Redis 指南。

架构: 3 台服务器:每台运行 Redis(1 个 master + 2 个 replica)和 Sentinel

开始之前

  • 所有服务器操作系统版本相同且已更新;时间通过 NTP(chrony)同步。
  • RAM 与表单中的值一致;已配置少量 swap(防止 fork 时 OOM)。磁盘可用空间至少为 RAM 的 2 倍(用于 RDB/AOF 重写)。
  • 服务器之间可通过 IP 互访(Redis 配置中使用 IP)。
  • 服务器之间已开放 …、… 端口;这些端口未被其他服务占用。
  • ……服务器可以访问操作系统的 AppStream 仓库(或 EPEL)…服务器可以访问 rpms.remirepo.net 和 EPEL(dl.fedoraproject.org)仓库………服务器可以访问 Ubuntu universe 仓库…服务器可以访问 packages.redis.io 仓库……,或已配置内部镜像。
  • 服务器上没有其他 Redis/Valkey 安装(避免版本冲突)。
  • 已以 root 或具有 sudo 权限的用户登录;维护窗口已获批准。

指南阶段

  • 操作系统准备(所有服务器) — 主机名:… · 系统更新和工具 · 内核参数(sysctl) · 应用 sysctl 设置
  • 安装(所有服务器) — 添加 Remi 和 EPEL 仓库 · 添加 packages.redis.io 仓库 · 安装 … 软件
  • Redis 配置 — …: … · 设置密码 · 启动 Redis · 在防火墙中开放端口 · 验证复制
  • Sentinel 配置 — …: … · 设置 Sentinel 密码 · 启动 Sentinel · 验证 Sentinel 已互相发现
  • failover 测试 — 计划内 failover(SENTINEL FAILOVER) · 检查所有服务器上的角色 · 应用连接
  • 安装后 — 备份 · 监控 · 安全建议
按您的环境打开分步计划 →