首页 > 数据库 >Redis 哨兵机制

Redis 哨兵机制

时间:2022-08-21 15:25:56浏览次数:61  
标签:Redis redis 哨兵 Master sentinel 服务器 机制 节点


概述

由一个或多个 Sentinel(哨兵)实例组成的 Sentinel 系统可以监视任意多个主服务器,以及这些主服务器属下的所有从服务器,并在被监视的主服务器进入下线状态时,自动将下线主服务器属下的某个从服务器升级为新的主服务器

简单来说,哨兵就是带有自动故障转移功能的主从架构


搭建哨兵架构

以 Ubuntu 18.04.5,redis-7.0.4 为例,这里以一台机器的三个端口作演示,分别是 6379、6380、6381,对应主节点、从节点一、从节点二

搭建哨兵集群,端口分别是 26379、26380、26381,从 Redis 源码目录复制三份哨兵配置文件 sentinel.conf,需要的修改内容如下:

# sentinel实例端口
port 26379
# sentinel monitor <被监控主节点名称(此处可自定义)> <被监控主节点ip> <被监控主节点port> <quorum>
# quorum:只有超过quorum数量的哨兵认为主机已死,才能推举新的主机,quorum值最好超过Sentinel数量(单数)的一半
sentinel monitor master 127.0.0.1 6379 2

使用如下命令分别启动三个哨兵节点

redis-sentinel sentinel.conf

此时哨兵架构就搭建完成了,如果 Master 异常,就会选取一个 Slave 作为 Master,将其他 Slave 连接到新的 Master

Master-Slave 切换后,Master、Slave、Sentinel 的配置文件都会发生变化,新的 Master 节点没有了 slaveof 配置,其他 Slave 节点则 slaveof 新的 Master 节点,Sentinel 节点的监控目标也会发生变化

本章的例子中,一个哨兵只监控了一个主节点,实际上,一个哨兵可以监控多个主节点,通过配置多条 sentinel monitor 即可实现


SpringBoot 操作哨兵集群

启用哨兵机制,主节点可能会经常发生变化,因此配置文件也需要修改

# 不再需要这样配置
#spring.redis.host=39.108.6.119
#spring.redis.port=6379
#spring.redis.database=0

# redis 哨兵监听的主节点名
spring.redis.sentinel.master=master
# redis 哨兵的 IP 和端口
spring.redis.sentinel.nodes=127.0.0.1:26379,127.0.0.1:26380,127.0.0.1:26381

标签:Redis,redis,哨兵,Master,sentinel,服务器,机制,节点
From: https://www.cnblogs.com/Yee-Q/p/16610053.html

相关文章

  • redis持久化RDB和redis持久化AOF
    redis是一个内存数据库,当redis服务器重启,获电脑重启,数据会丢失,我们可以将redis内存中的数据持久化保存到硬盘的文件中redis持久化机制:RDB:默认方式,不需要进行配......
  • redis持久化RDB和AOF
    持久化1、redis是一个内存数据库,当redis服务器重启,获取电脑重启,数据会丢失,我们可以将redis内存中的数据持久化保存到硬盘的文件中。2、redis持久化机制......
  • Redis 实际案例示范
    缓存REDIS实战操作记录Redis解决并发的方案收藏博客:Tags-王亚普的博客|WypBlog......
  • redis命令操作list&set&sortedset和redis通用命令
    redis命令操作list&set&sortedset列表类型 list:可以添加一个元素到列表的头部(左边)或者尾部(右边)1.添加:lpush key value:将元素加入列表左边rpus......
  • redis命令操作
    命令操作——list列表类型list:可以添加一个元素到列表的头部(左边)或者尾部(右边)添加:1、lpushkeyvalue:将元素加入列表左边2、rpushkeyvalue:将元......
  • redis数据结构介绍以及命令操作string和hash类型
    redis的数据结构redis存储的是:key,value格式的数据,其中key都是字符串,value有5中不同的数据结构value的数据结构:(1)字符串类型string......
  • redis数据结构介绍和redis命令操作string&hash
    redis数据结构介绍redis的数据结构:redis存储的是:key,value格式的数据,其中key都是字符串,value有5种不同的数据结构value的数据结构:1、字符串......
  • redis的概述以及redis的下载与安装
    redis的概述概念:redis是一款高性能的NOSQL系列的非关系型数据库关系型数据库:1、数据之间有关联关系2、数据存储在硬盘文件中非关系型数据库:1、数据......
  • redis概述和redis下载安装
    redis概述1.概念:redis是一款高性能的NOSQL系列的非关系型数据库1.1.什么是NOSQLNoSQL(NoSQL=NotOnlySQL),意即“不仅仅是SQL”,是一项全新的数据库理念,......
  • linux系统快速上手(二)常用软件redis的yum安装
    redis的yum方式安装先查看是否已经安装redis执行命令 rpm-qa|grepredis如果存在,将存在的卸载:(-y代表自动选择)yumremovexxx-y在线安装redisyuminstallredis......