redis集群搭建

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

主从关系

在这里插入图片描述

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

准备工作

1.创建了一个目录 master-slave

​	mkdir master-slave

2.把redis配置文件复制到master-slave

​	cp redis.conf master-slave/

3.在master 目录下复制三个redis 文件并重命名

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uvmhFrb1-1619400966435)(D:\AAA\笔记\radis集群搭建\redis集群搭建.assets\image-20210426084728364.png)]

4.分别修改上面三个文件的端口号以及rdb持久化文件的名称 并aof关闭。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

5. 启动redis时指定上面的三个配置文件 (如果想要查看redis进程信息,使用:ps -ef | grep redis  )

在这里插入图片描述

6.启动三台服务器

在这里插入图片描述

7.使用info replication命令查看三个redis节点的信息,当前显示都是主,需要设置

在这里插入图片描述


8.把7001设置成为主,7002和7003设置成从我们在7002和7003使用slaveof 127.0.0.1 7001 命令
把7002和7003挂载7001上

在这里插入图片描述
在这里插入图片描述

9.主节点挂掉,从节点不会上位主节点,而是等待主节点归来。

在这里插入图片描述

如果这时,有一个新得节点加入到主从上了,新节点可以把之前得数据获取。
Redis主从复制的缺点:没有办法对master进行动态选举,需要使用Sentinel机制完成动态选举。

哨兵模式

  主从切换技术的方法是:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工干预,费事费力,还会造成一段时间内服务不可用。这不是一种推荐的方式,更多时候,我们优先考虑哨兵模式。
  哨兵模式是一种特殊的模式,首先Redis提供了哨兵的命令,哨兵是一个独立的进程,作为进程,它会独立运行。其原理是哨兵通过发送命令,等待Redis服务器响应,从而监控运行的多个Redis实例。

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

在这里插入图片描述

前提:先配置好主从关系,并且启动主从服务,连接上主从redis服务器!见以上操作。在执行以下操作:
修改sentinel.conf的配置
127.0.0.1表示redis主节点的ip

6379 表示主节点的端口号

2 表示有多少个哨兵选取redis从节点后,该从节点可以当选为主节点。

sentinel monitor mymaster 127.0.0.1 7001 1

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

启动哨兵

redis-sentinel  sentinel.conf

总结:当主机挂掉之后就会从从机选举出来一个主机,当挂掉的主机再次活过来。依然是从,不能变成主机。

去中心化集群

在这里插入图片描述

准备工作

(1)先创建一个目录
three-master-three-slave
(2)把redis.conf配置文件赋值到three-master-three-slave里面
注意:这里要用最原始的配置文件,不能用配置哨兵的配置文件
(3)需要修改redis.conf的以下配置
	port 8001
	bind 0.0.0.0
	daemonize yes
	appendonly yes # 是否以append only模式作为持久化方式,默认使用的是rdb方式持久化,这 种方式在许多应用中已经足够用了
	注意:必须保证aof开启,保证redis中没有数据。

开启集群


cluster-enabled yes (833行)

集群的配置文件,该文件自动生成

cluster-config-file nodes-8001.conf (841行)

集群的超时时间

cluster-node-timeout 5000 (847行)
(4)启动所有的redis
redis-server redis-8001.conf

在这里插入图片描述

已经启动成功
在这里插入图片描述

(5)为主节点分配槽以及分配从节点
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

注意:前三个公网ip已经端口号都表示主机,后三个表示从机

在这里插入图片描述

(6)客户端访问:
redis-cli -c -h 127.0.0.1 -p 8001
(7)将8001挂掉(主机),8004(从机)就会上位成为主机

在这里插入图片描述

所以:

在这里插入图片描述

(8)8001如果再回来,仍然是从,不会再变成主

在这里插入图片描述

注意:在任何一个节点操作都会跳走

在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值