redis哨兵模式搭建

先搭建主从结构

当需要运行多个Redis实例时,可以通过为每个实例使用不同的配置文件的方式来实现。

复制redis目录下的redis.conf 文件将其重命名为redis6380.confredis6381.conf,或者将其放到单独文件夹中,这里为了偷懒,简单实现一下选择直接将其复制到与redis.conf同一目录下。然后修改刚刚复制的配置文件。

命令格式:info replication

作用:检查redis节点的状态信息

  • 节点划分策略:根据业务需要要求。
    • 示例:以6379为主机、6380、6381为从机
  • 实现主从挂载
    • 方法通过主从挂载命令完成。
    • 主从挂载命令:slaveof host port
    • 实现过程:
      • 第一步:进入从机客户端,执行主从挂载命令

主从挂载特点:

  • 一个主机可以有多个从机。
  • 一个从机只有一个主机。从机多次执行slaveof命令,每次执行都是更换主机,而不是从机挂载。
  • 主机可以知道所有从机信息、而从机也知道所属主机的信息,而同属一个主机的多台从机之间互不知道。
  • 主从之间的通信只在主--从之间进行,而从--从之间没有通信。
  • 从机只接受主机的写操作,其它的写操作一律不接受;从机可接受所有的读操作。

哨兵机制

  • 原理:
    • 当哨兵工作时会连接redis主机,并通过主机,获取所有从机的信息。
    • 监控主机运行状况
      • 通过心跳检测(ping<---->pong)机制,定时向主机发ping命令,当达到规定次数仍然没有得到主机的pong结果,认定主机宕机。
    • 通过随机算法将从所有从机选举出新主机。
    • 负责剩下的从机重新挂载到新主机上。
    • 当主机恢复后,会做为从机挂载到当前主机上。
  • 哨兵机制的实现
    • 编辑redis.conf文件
    • 编辑sentinel.conf文件
      • 位置:

将此配置文件复制到哨兵的工作目录。

基础配置方法:

另外注意:如果主机有密码的情况下需要找到下面这行配置取消注释并填上主机的密码

复制代码
# masterauth <master-password>
  • 哨兵启动
    • 哨兵的启动
      • 前置条件:sentinel.conf
      • 启动命令:redis-sentinel sentinel.conf
      • 示例:
相关推荐
码哥字节2 小时前
AI一天出百本书,写不出我被Redis坑的那三天三夜
redis·ai编程工具
莫得感情 o10 小时前
Redis 10 · 集群:16384槽、扩缩容与请求路由
redis·缓存
乐观的Terry10 小时前
Redis生产环境redis-conf配置教程
数据库·redis
SeaTunnel10 小时前
Redis 数据迁移不用写脚本:SeaTunnel 支持 String、Hash、Set、ZSet 四种数据类型
数据库·redis·哈希算法·数据迁移·seatunnel·数据同步
莫得感情 o10 小时前
Redis 11 · 缓存问题:穿透、击穿与雪崩
redis·缓存
kiss strong11 小时前
redis服务器登录(内网环境,无法使用客户端)
数据库·redis·缓存
hweiyu001 天前
Redis命令:UNLINK
redis·缓存
Shaoxi Zhang1 天前
Redis基础——五种核心数据结构(“容器”)
redis
载数而行5201 天前
redis集群
redis
云雀衔光1 天前
多个 MCP Server 怎么编排:数据库 / Redis / Git / 飞书一把梭
java·数据库·人工智能·redis·git·语言模型·飞书