redis哨兵模式说明与搭建详解

哨兵模式是redis高可用的一种解决方案。

哨兵必须用三个实例取保证自己的高可用,但是哨兵+主从模式是不能保证消息不丢失的。

为什么用三个来保证呢?

假设现在有两个服务器,第一台有redis主节点M1,和哨兵S1,第二台有redis从节点S2,哨兵S2。

如果M1宕机,S1和S2中只要有1个哨兵认为master宕机就可以还行切换,此时哨兵大多数(我理解的大多数的过半)还在运行,那么S1,S2能通过选举,拿出来一个哨兵进行故障转移。

如果第一个服务器整个宕机,M1,S1都已经死掉了,此时S2发现M1宕机,但是哨兵只有一个了,不满足大多数的机器存活,无法选举,就没有办法来执行故障转移。虽然另外一台机器还有一个R1,但是故障转移不会执行。

经典的是三节点的哨兵集群

如果M1所在机器宕机了,那么三个哨兵还剩下2个,S2和S3可以一致认为master宕机,然后选举出一个来执行故障转移。

同时3个哨兵的大多数是2,所以还剩下的2个哨兵运行着,就可以允许执行故障转移。

接下来谈一谈怎么做哨兵

首先我们需要搭建个一主两从的redis,单个节点的redis安装链接如下

redis安装包下载地址Redis

我们可以将单个redis安装三次(6381为主机,6380,6379为从机),然后修改配置文件

1.配置redis.conf文件中的端口号分别为6379,6380,6381,

2.daemonize均为yes

3.6380和6379 均添加slaveof 127.0.0.1 6379  (我是在一台服务器上安装的,若不是一台服务器,ip换为redis主机ip)

分别使用./src/redis-server ./myredis/redis.conf 命令启动redis。

启动后使用./src/redis-cli -p 6379 -h 127.0.0.1 连接redis的客户端  (ip和端口换成自己的)

再执行info Replication,即可看到主从状态

三台状态如下

主从就搭建好了。

接下来配置哨兵

将刚刚的文件redis-6379 复制三份,分别重命名为sentinel-26379,sentinel-26380,sentinel-26381

然后分别修改三个文件的配置文件sentinel.conf

#端口号 (换成相应sentinel的端口号)
port 26379 

#守护进程,后台启动
daemonize yes

#监测redis集群的主机
sentinel monitor mymaster 127.0.0.1 6381 1

修改完毕之后使用./src/sentinel-server ./sentinel.conf启动,成功后,

使用./src/resic-cli -p 26379 命令连接sentinel(其他两个也可以使用这个连接),成功后,使用info命令,可以看到监听的redis集群状态

到此这篇关于redis哨兵模式详解的文章就介绍到这了,更多相关redis哨兵模式详解内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • SpringBoot+Redis哨兵模式的实现

    最近学习到了Redis的哨兵模式,光看视频还不行,需要自己动手实现一遍才能加深映像,特此记录. 由于没有真实的服务器可以供我操作,所以在虚拟机上启动了3个redis服务,分别占用7001.7002.7003端口. Redis下载安装不多赘述,只在这里记录一下配置. 首先在tmp目录下创建3个文件夹: cd /tmp mkdir 7001 7002 7003 然后将redis的配置文件redis.conf拷贝到刚刚创建的3个文件夹下 cp redis-6.2.6/redis.conf /tmp/7

  • 5分钟教你实现用docker搭建Redis集群模式和哨兵模式

    如果让你为开发.测试环境分别搭一套哨兵和集群模式的redis,你最快需要多久,或许你需要一天?2小时?事实是可以更短. 是的,你已经猜到了,用docker部署,真的只需要十几分钟. 一.准备工作 拉取redis镜像 运行如下命令: docker pull redis 该命令拉取的镜像是官方镜像,当然你可以搜索其他的镜像,这里不做深入 查看镜像情况: 二.部署redis哨兵主从模式 什么是哨兵模式?--请自行百度 1.什么是docker compose? Docker Compose 可以理解为将

  • Docker配置redis哨兵模式的方法(多服务器上)

    前言 之前学习的redis一直是在单一服务器上运行的,而且是直接部署在服务器上.听说用docker会让配置过程更轻松 (并没有)这次就在用Docker的基础上配置Redis一主一从三哨兵.本篇为配置数据节点,即一主一从两个节点. 条件 三台服务器(因为需要至少三个哨兵保证安全性)[可以在阿里云上租几个小时] 服务器1:8.131.78.18 服务器2:8.131.69.106 服务器3:8.131.71.196 端口号7000.17000已在安全组上放行(阿里云) 环境:centos8.0 安装

  • Redis哨兵模式实现一主二从三哨兵

    目录 一.redis环境: 二.哨兵介绍: 三.安装redis: 四.使用Redis主从复制的作用: 五.配置redis一主二从: 六.配置redis三哨兵: 一.redis环境: 环境:redis6.2.6linux虚拟机一台,contos7: 二.哨兵介绍: 1.一主二从三哨兵理论图: 一主两从三哨兵集群,当master节点宕机时,通过哨兵(sentinel)重新推选出新的master节点,保证集群的可用性. 2.哨兵的主要功能:1.集群监控:负责监控 Redis master 和 slav

  • Redis Sentinel实现哨兵模式搭建小结

    Redis哨兵模式,用现在流行的话可以说就是一个"哨兵机器人",给"哨兵机器人"进行相应的配置之后,这个"机器人"可以7*24小时工作,它能能够自动帮助你做一些事情,如监控,提醒,自动处理故障等. Redis-sentinel简介 Redis-sentinel是Redis的作者antirez,因为Redis集群的被各大公司使用,每个公司要写自己的集群管理工具,于是antirez花了几个星期写出了Redis-sentinel. Redis 的 Se

  • SpringBoot结合Redis哨兵模式的实现示例

    Redis哨兵模式 Redis Sentinel介绍 Redis Sentinel是Redis高可用的实现方案.Sentinel是一个管理多个Redis实例的工具,它可以实现对Redis的监控.通知.自动故障转移. Redis Sentinel主要功能 Redis 的 Sentinel 系统用于管理多个 Redis 服务器(instance), 该系统执行以下三个任务: 监控(Monitoring):Sentinel 会不断地检查你的主服务器和从服务器是否运作正常. 提醒(Notificatio

  • 浅谈Redis哨兵模式的使用

    概述 主从切换技术的方法是:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工 干预,费事费力,还会造成一段时间内服务不可用.这不是一种推荐的方式,更多时候,我们优先考虑 哨兵模式.Redis从2.8开始正式提供了Sentinel(哨兵) 架构来解决这个问题. 谋朝篡位的自动版,能够后台监控主机是否故障,如果故障了根据投票数自动将从库转换为主库. 哨兵模式是一种特殊的模式,首先Redis提供了哨兵的命令,哨兵是一个独立的进程,作为进程,它会独 立运行.其原理是哨兵通过发送命令,

  • Redis哨兵模式介绍

    哨兵简介 主机"宕机" 将宕机的 master 下线 找一个 slave 作为 master 通知所有的 slave 连接新的 master 启动新的 master 和 slave 全量复制 *N+ 部分复制*N 存在的问题: 谁来确认 master 宕机了 重新找一个新的 master ,怎么找法? 修改配置后,原来的 master 恢复了怎么办? 哨兵 哨兵(sentinal)是一个分布式系统,用于对主从结构中的每台服务器进行监控,当出现故障时通过投票机制选择新的 master 并

  • redis 主从哨兵模式实现一主二从

    目录 一.环境 二.安装 三.配置 3.1.配置redis.config文件 3.2.配置sentinel.config文件 一.环境 操作系统:centos7.6/Mac OSredis版本:6.2.5以上版本ssh工具:xshell和xftpspringboot集成redis哨兵主从 二.安装 三台服务器上使用相同的方式安装redis 把redis-6.2.5.tar.gz文件上传到服务的/usr/local/src/tools目录中 #> tar -xvf redis-6.2.5.tar.

  • redis哨兵模式说明与搭建详解

    哨兵模式是redis高可用的一种解决方案. 哨兵必须用三个实例取保证自己的高可用,但是哨兵+主从模式是不能保证消息不丢失的. 为什么用三个来保证呢? 假设现在有两个服务器,第一台有redis主节点M1,和哨兵S1,第二台有redis从节点S2,哨兵S2. 如果M1宕机,S1和S2中只要有1个哨兵认为master宕机就可以还行切换,此时哨兵大多数(我理解的大多数的过半)还在运行,那么S1,S2能通过选举,拿出来一个哨兵进行故障转移. 如果第一个服务器整个宕机,M1,S1都已经死掉了,此时S2发现M

  • Redis实战之Jedis使用技巧详解

    目录 一.摘要 二.Jedis 2.1.基本使用 2.2.连接池 2.3.连接池配置 2.4.字符串常用 API 操作 2.5.哈希常用 API 操作 2.6.列表常用 API 操作 2.7.集合常用 API 操作 2.8.有序集合常用 API 操作 三.集群配置 3.1.哨兵模式 3.2.集群模式 四.小结 一.摘要 在上一篇文章中,我们详细的介绍了 redis 的安装和常见的操作命令,以及可视化工具的介绍. 刚知道服务端的操作知识,还是远远不够的,如果想要真正在项目中得到应用,我们还需要一个

  • sentinel支持的redis高可用集群配置详解

    目录 一.首先配置redis的主从同步集群 二.sentinel高可用 一.首先配置redis的主从同步集群 1.主库的配置文件不用修改,从库的配置文件只需增加一行,说明主库的IP端口.如果需要验证的,也要加多一行,认证密码. slaveof 192.168.20.26 5268 masterauth hodge01 一主多从的话,就启用多个从库.其中,从库都是一样的方案.本次有两个slave. 2.命令检查 /usr/local/redis/bin/redis-cli -p 5257 -a h

  • Redis 实现队列原理的实例详解

    Redis 实现队列原理的实例详解 场景说明: ·用于处理比较耗时的请求,例如批量发送邮件,如果直接在网页触发执行发送,程序会出现超时 ·高并发场景,当某个时刻请求瞬间增加时,可以把请求写入到队列,后台在去处理这些请求 ·抢购场景,先入先出的模式 命令: rpush + blpop 或 lpush + brpop rpush : 往列表右侧推入数据 blpop : 客户端阻塞直到队列有值输出 简单队列: simple.php $stmt = $pdo->prepare('select id, c

  • ubuntu 16.04安装redis的两种方式教程详解(apt和编译方式)

    ubuntu 16.04安装redis的两种方式教程如下所示: 方式一 :apt安装 在 Ubuntu 系统安装 Redi 可以使用以下命令: $sudo apt-get update $sudo apt-get install redis-server 启动 Redis $ redis-server 查看 redis 是否启动? $ redis-cli 以上命令将打开以下终端: redis 127.0.0.1:6379> 127.0.0.1 是本机 IP ,6379 是 redis 服务端口.

  • docker安装redis并以配置文件方式启动详解

    更新 最近发现服务器被挖矿病毒入侵了 很有可能是因为redis没有设置密码的原因! 1.获取redis镜像 docker pull redis 指定版本号: docker pull redis:4.0.9 不加版本号默认获取最新版本,也可以使用 docker search redis 查看镜像来源 2.查看本地镜像 docker images 3.然后启动容器,做映射 ①创建配置文件目录存放redis.conf,文件从官网下载. ②创建文件夹,新建配置文件贴入从官网下载的配置文件并修改 mkdi

  • SpringBoot中RabbitMQ集群的搭建详解

    目录 1. 两种模式 1.1 普通集群 1.2 镜像集群 1.3 节点类型 2. 搭建普通集群 2.1 预备知识 2.2 开始搭建 2.3 代码测试 2.4 反向测试 3. 搭建镜像集群 3.1 网页配置镜像队列 3.2 命令行配置镜像队列 4. 小结 单个的 RabbitMQ 肯定无法实现高可用,要想高可用,还得上集群. 今天松哥就来和大家聊一聊 RabbitMQ 集群的搭建. 1. 两种模式 说到集群,小伙伴们可能第一个问题是,如果我有一个 RabbitMQ 集群,那么是不是我的消息集群中的

  • 浅谈Redis哨兵模式高可用解决方案

    目录 一.序言 1.目标与收获 2.端口规划 二.单机模拟 (一)服务规划 1.Redis实例 2.哨兵服务 (二)服务配置 1.Redis实例 2.哨兵服务 (三)服务管理 1.Redis实例 2.哨兵服务 三.客户端整合 (一)基础整合 1.全局配置文件 2.集成配置 (二)读写分离 一.序言 Redis高可用有两种模式:哨兵模式和集群模式,本文基于哨兵模式搭建一主两从三哨兵Redis高可用服务. 1.目标与收获 一主两从三哨兵Redis服务,基本能够满足中小型项目的高可用要求,使用Supe

随机推荐