当前位置: 首页 > news >正文

redis的集群(高可用)

redis集群的三种模式:

主从复制 奇数 三台 一主两从

哨兵模式 3 一主两从

cluster集群 六台


主从复制:和mysql的主从复制类似,主可以写,写入主的数据通过RDB方式把数据同步到从服务器,从不能更新到主,也是哨兵模式的基础。

缺点:没有办法实现故障自动化恢复,只有主能够写。

哨兵模式:故障自动化恢复,主从复制完成之后,从服务器变成只读模式

故障切换时,主故障,变成从服务器,主变成从之后,也会进入只读模式

缺点:从节点一旦故障,读会收到影响

集群:把没两台服务器作为主从模式,形成一个大的主从的集群,解决了写操作的负载均衡。较为完善的一个高可用方案

缺点:保证高可用,对数据的完整性要求不高。


一、主从模式

节点和从节点

数据的复制时单向的,由主复制到从

主从复制的流程:

 关闭防火墙和安全机制

配置主服务

vim /etc/redis/6379.conf

跳转到70行,把监听地址改成0.0.0.0

bind 0.0.0.0

跳转到700行,开启AOF的功能

appendonly yes

主服务就配置好了

两个从服务一起配置文件,跳转70行和主服务一样都改成0.0.0.0

跳转到287行添加住的ip地址及端口

replicaof 192.168.124.60 6379

跳转到700行开启AOF功能,两个从服务也配置完毕。

一主两从都重启一下

/etc/init.d/redis_6379 restart

这时主从复制就完成了


二、哨兵模式:

切换方式:不是按照权重来进行切换 是以投票的方式:主宕机其他服务器投票,选举,Raft算法,选一个离当前时间点更新最快的从变成主

进入源码包里面的配置文件

vim sentinel.conf

主从同时配置

跳转到15行,把监听地址注释掉

跳转17行

protected-mode no关闭保护模式

跳转27行后台运行把no改成yes

daemonize yes

跳转37行,把哨兵监听的日志文件设置一下

logfile "/var/log/sentinel.log"

跳转66行,把数据库的保存文件设置一下

dir "/var/lib/redis/6379"

跳转到85行

sentinel monitor mymaster 192.168.233.7 6379 2

初始化监听,都是监听主,监听主动服务器的状态

2 对应的从服务器的数量以及投票的参与者 参与者要和从服务器的数量一致

2台服务器投票通过,主才能进行故障转移。

sentinel down-after-milliseconds mymaster 30000

判断服务器宕机的时间周期 30秒

每30秒检测一次

sentinel failover-timeout mymaster 180000

判断故障节点的超时的最大时间 180秒

redis-sentinel sentinel.conf &

启动哨兵模式命令

redis-cli -p26379 info Sentinel

查看哨兵模式的状态命令

哨兵模式就创建完成了。


三、cluster集群 

redis3.0之后的分布式存储方案

集群由多个节点组成,redis数据保存在这些节点。

集群中的节点分为主和从

主负责读写以及维护集群的信息

从节点进行主节点数据的复制(也可以查)

redis集群的数据分片

在集群概念中,引用的时hash槽的概念

创建了集群就有16384个哈希槽

0-16383

三个节点:

主1 0-5460

主2 5461-10922

主3 10923-16383

节点当中,如果主和从全部失败,整个集群都将不可用

六台服务一起配置

进入配置文件

允许所有ip地址通过,关闭保护模式

开启他的集群模式,超时设置为15秒

打开AOF功能

redis-cli -h 192.168.124.60 -cluster create 192.168.124.60:6379 192.168.124.63:6379 192.168.124.61:6379 192.168.124.64:6379 192.168.124.62:6379 192.168.124.65:6379 --cluster-replicas 1配置主从的节点命令

192.168.124.60   集群的主连接节点 配置节点

-cluster create 192.168.124.60:6379 192.168.124.63:6379 192.168.124.61:6379 192.168.124.64:6379 192.168.124.62:6379 192.168.124.65:6379

前面的是主,后面的是从

 --cluster-replicas 1

每个主机只能有一个从

出现这个字段说明已经配置成功了

进入redis库中查询哈希槽怎么分配的

 在查看六台服务的主从分配

集群:move不是报错,只是系统提示客户端到指定位置的哈希槽进行读或者写,系统提示什么,就去哪个节点操作即可,这个节点是该节点的主

集群的功能只是满足高可用和写的负载均衡,不能保证数据的完整性。

http://www.lryc.cn/news/412265.html

相关文章:

  • 随机森林的算法
  • 3.1、数据结构-线性表
  • 记一次对HTB:Carpediem的渗透测试
  • MATH2 数据集:AI辅助生成高挑战性的数学题目
  • 加密货币“蓄势待发”!美国松口降息!九月开始连续降息8次?2025年利率目标3.25-3.5%?
  • Vue.js 3.x 必修课|005|代码规范与 ESLint 入门
  • 【Linux】动态库|静态库|创建使用|动态库加载过程
  • WebSocket 协议与 HTTP 协议、定时轮询技术、长轮询技术
  • 二叉树节点问题
  • 公司里的IT是什么?
  • 【小程序爬虫入门实战】使用Python爬取易题库
  • 案例 —— 怪物出水
  • vue中使用print.js实现页面打印并增加水印
  • 计算机基础(Windows 10+Office 2016)教程 —— 第5章 文档编辑软件Word 2016(下)
  • 简单洗牌算法
  • JVM: 堆上的数据存储
  • AI产品经理的职责与能力:将AI技术转化为实际价值
  • 【独家原创RIME-CNN-LSSVM】基于霜冰优化算法优化卷积神经网络(CNN)结合最小二乘向量机(LSSVM)的数据回归预测
  • 如何对B站的热门视频进行分析
  • MobaXterm tmux 配置妥当
  • 排序算法:快速排序,golang实现
  • step:菜单栏静态加载和动态加载
  • 【简历】武汉某985大学:前端简历指导,拿offer可能性低
  • 推荐系统的核心逻辑 MVP
  • Java中的BIO,NIO与操作系统IO模型的区分
  • AI砸掉了这些人的饭碗
  • 端口及对应服务
  • 剑指offer题解合集——Week7day1[滑动窗口的最大值]
  • 深入解读财报,开启美股投资之旅
  • 邦芒支招:成功找到工作要掌握的3个知识点