一、什么是主从复制
主从复制,是指将一台redis服务的数据复制到集群中其他的redis服务,前者称(Maste),后者称(Slave);数据的复制是单向的,只能从主节点复制到从节点,一个主节点可以有多个从节点,但是一个从节点只能有一个主节点。
二、主从复制的作用
1.数据冗余
主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。
2.故障恢复
当主节点出现问题时,可以由从节点提供服务,实现快速的故障恢复;实际上是一种服务的冗余。
3.负载均衡
在主从复制的基础上,配合读写分离,可以由主节点提供写服务,由从节点提供读服务(即写Redis数据时应用连接 主节点,读Redis数据时应用连接从节点),分担服务器负载;尤其是在写少读多的场景下,通过多个从节点分担读负载,可以大大 提高Redis服务器的并发量。
4.高可用基石
除了上述作用以外,主从复制还是哨兵和集群能够实施的基础,因此说主从复制是Redis高可用的基础。
三、主从复制部署
1)基于上篇文章的单机部署流程,在三台服务器中部署redis,
2)修该redis.conf配置文件,因为默认都是主节点,所以只需将另外两台修改为从节点即可
vim redis.conf
# 修改配置参数,添加以下信息
replicaod 主节点ip 6379
#注意关闭防火墙
systemctl stop firewalld
systemctl status firewalld
四、验证主从节点是否启动成功
# 执行命令
redis-cli info replication
以下为主节点和从节点的信息截图,至此主从复制集群搭建完成
五、主从复制的缺点
1.复制延时,信号衰减
由于所有的写操作都是现在master上操作,然后同步更新到slave上,所以从master同步到slave机器上有一定的延迟, 很繁忙的时候,延迟问题会更加严重,slave机器数量的增加也会使这个问题更加严重。
2.master挂了需要手动切换主节点
默认情况下,redis主从集群不会在主节点出现故障后从slave节点中自动重选一个master,需要我们手动去切换(关注后面的哨兵集群搭建文章,能否自动完成主节点自动切换)。