redis sentinel模式 与 redis 分片集群 配置

news/2025/2/21 17:38:19/

Redis 最低为5.0版本,以下为6.2.6版本信息。


模式	         高可用性   数据分片	 部署复杂度	    适用场景
Sentinel 模式	高	     无	       中等	     中小规模,需要高可用性
集群模式	        高	    支持	       复杂	     大规模,需要高可用性和数据分片
  • Redis Sentinel 模式(在主从复制的基础上引入 Sentinel 实例,用于监控 Redis 节点的健康状态,并在主节点故障时自动进行故障转移)

1.主节点redis.conf配置

bind 0.0.0.0
port 6379
daemonize yes
# 设置主节点密码
requirepass 666666
# 设置从节点连接主节点的密码
masterauth 666666

2.从节点redis配置

bind 0.0.0.0
port 6379
daemonize yes
# 指向主节点
replicaof 192.168.10.103 6379
# 设置主节点密码
masterauth 666666
# 设置从节点密码
requirepass 666666

3.所有节点sentinel.conf配置

bind 0.0.0.0
port 26379
daemonize yes
# mymaster:主节点名称
# 192.168.10.103:主节点的 IP 地址
# 2:需要至少 2 个 Sentinel 实例确认主节点故障
sentinel monitor mymaster 192.168.10.103 6379 2
# 5000:主节点无响应 5 秒后标记为下线
sentinel down-after-milliseconds mymaster 5000
# 60000:故障转移超时时间
sentinel failover-timeout mymaster 60000
# 设置主节点密码
sentinel auth-pass mymaster 666666

4.启动

# 启动所有redis
redis-server /PATH/redis.conf
# 启动所有sentinel
redis-sentinel /PATH/sentinel.conf

5.相关命令

# 命令查看新的主节点
sentinel master mymaster #命令查看新的主节点
redis-cli -h <Server1_IP> -p 6379 -a yourpassword shutdown# 检查主从复制-连接到主节点
redis-cli -h <Server1_IP> -p 6379 -a yourpassword
# 检查主从复制-执行命令
info replication# 检查 Sentinel 状态-连接到任意 Sentinel 实例
redis-cli -h <Sentinel_IP> -p 26379
# 检查 Sentinel 状态-执行命令
sentinel master mymaster
sentinel slaves mymaster
sentinel sentinels mymaster
  • Redis 集群分片(Redis 官方提供的分布式解决方案,支持数据分片和自动故障转移;数据被分片到多个主节点上,每个主节点可以有一个或多个从节点)

以下为三个服务器,做三主三从,每个服务器一主一从。只有每个服务器主从数据不一致,某个服务器挂掉后,集群才能正常使用(挂掉的主数据对应的从数据服务会自动变成主服务)

1.redis-6379.conf配置

bind 0.0.0.0
port 6379
daemonize yes
cluster-enabled yes
cluster-config-file nodes-6379.conf
cluster-node-timeout 5000
appendonly yes

2.redis-6380.conf配置

bind 0.0.0.0
port 6380
daemonize yes
cluster-enabled yes
cluster-config-file nodes-6380.conf
cluster-node-timeout 5000
appendonly yes

3.启动各服务上的redis

redis-server /PATH/redis-6379.conf
redis-server /PATH/redis-6380.conf

4.设置redis集群

# --cluster-replicas 1:表示每个主节点有一个从节点
# 前3个节点会被自动分配为主节点,后 3 个节点为从节点。
redis-cli --cluster create \
192.168.10.103:6379 192.168.10.104:6379 192.168.10.105:6379 \
192.168.10.103:6380 192.168.10.104:6380 192.168.10.105:6380 \
--cluster-replicas 1

5.相关命令

# 验证集群状态
redis-cli --cluster check 192.168.10.103:6379

http://www.ppmy.cn/news/1572610.html

相关文章

Eureka 服务注册和服务发现的使用

1. 父子工程的搭建 首先创建一个 Maven 项目&#xff0c;删除 src &#xff0c;只保留 pom.xml 然后来进行 pom.xml 的相关配置 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xs…

unity学习39:连续动作之间的切换,用按键控制角色的移动

目录 1 不同状态之间的切换模式 1.1 在1个连续状态和一个连续状态之间的transition&#xff0c;使用trigger 1.2 在2个连续状态之间的转换&#xff0c;使用bool值切换转换 2 至少现在有2种角色的移动控制方式 2.1 用CharacterController 控制角色的移动 2.2 用animator…

微信小程序中缓存数据全方位解惑

微信小程序中缓存数据全方位解惑 微信小程序中的数据缓存是提升用户体验和优化性能的重要手段&#xff0c;跟电脑浏览器中的Local Storage的性质一样。以下是关于微信小程序数据缓存的相关知识点和示例的详细介绍&#xff1a; 1. 数据缓存的类型 微信小程序提供了两种数据缓…

图像处理篇---基本OpenMV图像处理

文章目录 前言1. 灰度化&#xff08;Grayscale&#xff09;2. 二值化&#xff08;Thresholding&#xff09;3. 掩膜&#xff08;Mask&#xff09;4. 腐蚀&#xff08;Erosion&#xff09;5. 膨胀&#xff08;Dilation&#xff09;6. 缩放&#xff08;Scaling&#xff09;7. 旋转…

npm包管理工具

包管理工具 npm 包管理工具 介绍 Node Package Manager&#xff1a;也就是Node包管理工具但是目前已经不仅仅是Node包管理器&#xff0c;在前端项目中我们也使用它来管理依赖的包比如 vue、vue-router、vuex、express、koa 下载和安装 npm属于Node的管理工具&#xff0c;安…

杜绝遛狗不牵绳,AI技术助力智慧城市宠物管理

在我们的生活中&#xff0c;宠物扮演着越来越重要的角色。然而&#xff0c;随着养宠人数的增加&#xff0c;一系列问题也随之而来&#xff0c;如烈性犬伤人、遛狗不牵绳、流浪犬泛滥等。这些问题不仅影响了社会秩序&#xff0c;也给宠物本身带来了安全隐患。幸运的是&#xff0…

Python练习11-20

题目&#xff1a;古典问题&#xff1a;有一对兔子&#xff0c;从出生后第3个月起每个月都生一对兔子&#xff0c;小兔子长到第三个月后每个月又生一对兔子&#xff0c;假如兔子都不死&#xff0c;问每个月的兔子总数为多少&#xff1f; 题目&#xff1a;判断101-200之间有多少…

二分搜索算法核心-----labuladong笔记

二分搜索算法核心-----labuladong笔记 核心思想&#xff1a; 二分查找场景&#xff1a;寻找一个数、寻找左侧边界、寻找右侧边界。而且&#xff0c;我们就是要深入细节&#xff0c;比如不等号是否应该带等号&#xff0c;mid 是否应该加一等等。分析这些细节的差异以及出现这些…