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
      • 示例:
相关推荐
凯子坚持 c28 分钟前
Redis 核心数据结构:String 类型深度解析与 C++ 实战
数据结构·c++·redis
半夏知半秋1 小时前
基于跳跃表的zset实现解析(lua版)
服务器·开发语言·redis·学习·lua
二掌柜,酒来!8 小时前
完美解决:应用版本更新,增加字段导致 Redis 旧数据反序列化报错
redis·spring·bootstrap
小熊h11 小时前
redis 集群——redis cluster(去中心化)
redis·去中心化
得意霄尽欢12 小时前
Redis之底层数据结构
数据结构·数据库·redis
吐泡泡_14 小时前
Redis(集群)
redis
爱吃烤鸡翅的酸菜鱼14 小时前
【Redis】常用数据结构之Hash篇:从常用命令到使用场景详解
数据结构·数据库·redis·后端·缓存·哈希算法
不良人天码星15 小时前
Redis单线程模型为什么快?
数据库·redis·缓存
爱吃烤鸡翅的酸菜鱼15 小时前
【Redis】常用数据结构之List篇:从常用命令到典型使用场景
数据结构·redis·后端·缓存·list
沐雨风栉17 小时前
自建云音乐服务器:Navidrome+cpolar让无损音乐随身听
运维·服务器·redis·缓存·docker·容器