Redis集群--主从复制

1.单节点、单实例面临的问题:单点故障,容量有限,压力。

解决:

1.进行读写分离。

2.基于三维进行扩展AKF。

- X轴进行全量镜像的节点复制(从单库到多库)

- Y轴进行业务功能分离(根据业务逻辑再次进行分库)
- Z轴进行优先级逻辑再拆分(单业务进行分片,如MR的DataNode,单业务进行分节点运算)

2.进行集群化面临的几个问题

1.强一致性,破坏可用性

分量数据不能保证一致,如果保证一致,那么就会丢失可用性。如果我们保证数据的强一致性,那么,我们将会破坏可用性(数据在同步,不能保持可用)。

2.弱一致性,丢失数据(redis的实现)

保证弱一致,可能会取到错误数据。

3.数据最终一致性

在中间放一个类似kafka之类的中间件,能保证最终一致性。(kafka通过一定技术,变得可靠)

3.分布式常见架构

主备架构:主机挂掉,备机可以顶

主从复制:主机后面有几个从节点。(redis用的是主从复制)

--->主从复制架构,又面临一个问题,单点故障怎么解决?

解决:我们对主进行HA架构,用一个程序进行监控,该监控程序,为了避免单点故障,那么也必须是一个集群架构。

我们的监控设备一定是奇数台,进行过半选举,如果过半都选举故障,那么,将会跳到另一台节点。

4.配置

1.解压

准备一个redis的tar包,进行解压。

2.启动节点并跟随

启动3个实例,从节点使用replicaof ip port这个命令进行跟随主节点。

(注意,在redis 5之前,我们可以通过slaveof进行跟随主节点,但是,从redis5之后,改为了replicaof进行跟随)

3.使用追加方式

开启时候,使用appendonly yes这个配置,进行追加的方式进行写入集群。

是有用dump.rdb全量备份的时候,可以进行追随主节点

使用appendonly进行增量备份,是无法进行追随主节点的

4.主节点挂机

手动将主节点挂机

从节点可以变为主节点,直接使用replicaof no one命令

5.启动3个哨兵,进行监控

命令是:
1.redis-server ./26379.conf --sentinel
2.也可以直接启动redis-sentinel

26379.conf文件只需要2行
port 26379
sentinel monitor mymaster 127.0.0.1 6379 2

第二行语义:哨兵 监控 监控名 ip 端口 几票通过

需要过30秒哨兵才能生效

 

哨兵全部订阅master

从而可以发现其他哨兵

 

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值