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

发布于:2025-02-16 ⋅ 阅读:(33) ⋅ 点赞:(0)

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



网站公告

今日签到

点亮在社区的每一天
去签到