redis集群模式

redis集群模式

redis集群搭建(主从关系,哨兵模式,去中心化集群简介)

主从关系:

数据冗余:主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。
故障恢复:当主节点出现问题时,可以由从节点提供服务,实现快速的故障恢复;实际上是一种服务的冗余。
负载均衡:在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务(即写Redis数据时应用连接主节点,读Redis数据时应用连接从节点),分担服务器负载;尤其是在写少读多的场景下,通过多个从节点分担读负载,可以大大提高Redis服务器的并发量。
高可用基石:除了上述作用以外,主从复制还是哨兵和集群能够实施的基础,因此说主从复制是Redis高可用的基础。

哨兵模式:

Sentinel(哨兵) 进程是用于监控 Redis 集群中 Master 主服务器工作的状态
在 Master 主服务器发生故障的时候,可以实现 Master 和 Slave 服务器的切换,保证系统的高可用(HighAvailability)

去中心化集群:

redis集群是一个由多个主从节点群组成的分布式服务器群,它具有复制、高可用和分片特性。Redis集群不需要sentinel哨兵也能完成节点移除和故障转移的功能。需要将每个节点设置成集群模式,这种集群模式没有中心节点,可水平扩展,据官方文档称可以线性扩展到上万个节点(官方推荐不超过1000个节点)。redis集群的性能和高可用性均优于之前版本的哨兵模式,且集群配置非常简单。

1.主从关系的建立

在这里插入图片描述

注意:配从不配主
新增了新节点,新节点会把之前的数据也获取。主节点挂掉,从节点等待
准备工作

1. 创建了一个目录 master-slave
2. 把redis配置文件复制到master-slave
   redis7001.conf   redis7002.conf redis7003.conf
3.分别修改上面三个文件的端口号以及rdb持久化文件的名称  并aof关闭。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

1.1redis节点的信息

在这里插入图片描述

## 我们在7002和7003使用slaveof 127.0.0.1 7001 把7002和7003挂载7001上

在这里插入图片描述

在这里插入图片描述

同时操作7002,7003 
使用命令slaveof 127.0.0.1 7001

验证: 主节点负责写,并把写的内容同步到从节点上。 从节点只能负责读操作。不能写操作。

2.Cluster(去中心化)模式

2.1 配置所有的redis8001.conf文件

修改文件名:格式 redis+设置的端口号.conf

在这里插入图片描述

2.2 Cluster至少配置启动六个redis服务器
#开放连接,任意主机都可连接数据库
bind 0.0.0.0

#每个redis数据库配置不同的端口
port 8001

#设置是否后台运行数据库 yes后台运行  no 不支持后台运行
daemonize yes

#设置数据库的持久化的文件名
dbfilename "dump端口.rdb"

#AOF模式的触发,默认为 no 不触发  yes为触发
appendonly yes

# 开启集群
cluster-enabled yes           

# 集群的配置文件,该文件自动生成   
cluster-config-file nodes-8001.conf

# 集群的超时时间
cluster-node-timeout 5000        

开放对外连接的接口
在这里插入图片描述

设置该redis数据库端口
在这里插入图片描述

设置redis数据库的后台启动
在这里插入图片描述

设置一个redis数据库进而保存持久化数据的文件
在这里插入图片描述

设置AOF模式,并创建日志文件
在这里插入图片描述

设置为集群模式,进而设置生成集群的节点配置文件和相应的文件名
在这里插入图片描述

2.3 启动所有的redis

在这里插入图片描述

为每一个主节点分配槽以及分配从节点

cluster-replica:后边表示每个主节点跟随的从节点的个数

redis-cli --cluster create --cluster-replicas 1 127.0.0.1:8001 127.0.0.1:8002 127.0.0.1:8003  127.0.0.1:8004  127.0.0.1:8005  127.0.0.1:8006

必须保证aof开启,保证redis中没有数据。

客户端访问:

redis-cli -c -h 127.0.0.1 -p 8001

3.哨兵模式

优点
    哨兵集群模式是基于主从模式的,所有主从的优点,哨兵模式同样具有。
    主从可以切换,故障可以转移,系统可用性更好。
    哨兵模式是主从模式的升级,系统更健壮,可用性更高。
缺点
    Redis较难支持在线扩容,在集群容量达到上限时在线扩容会变得很复杂。
    实现哨兵模式的配置也不简单,甚至可以说有些繁琐

在这里插入图片描述

准备工作:首先配置好主从关系

# 127.0.0.1表示redis主节点的Ip地址 
# 6379 表示主节点的端口号
# 此处表示有多少个哨兵选取redis从节点后,该从节点可以当选为主节点,可以指定一个。
sentinel monitor mymaster 127.0.0.1 7001 1

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

启动哨兵模式:

redis-sentinel  sentinel.conf

总结:当主机挂掉之后就会从从机中随机选举出来一个主机,当挂掉的主机再次复活过来。他会还是从机,不能在变成主机了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值