手把手教你搭建Redis集群第一篇(主从复制模式)

1.手把手教你搭建Redis集群一(主从复制模式)

Redis集群策略有三种:主从复制(读写分离)、哨兵模式、分片集群。接下来本文章将会带搭建主从复制模式,这里我们使用的是阿里云服务器,由于资源有限我就在一台宿主机上将模拟一下集群搭建。与实际生产搭建还是有些细微的差异,真实环境搭建需要注意的地方我会提醒大家。

本次搭建环境为Linux CentOS7.0(需要大家自己学习Liunx基本命令操作)
Redis 版本号为 redis-3.0.2

1.1 安装Redis

在这里插入图片描述
解压redis tar包

tar -zxvf redis-3.0.2.tar.gz

在这里插入图片描述
解压完成

在这里插入图片描述
进入目录

cd redis-3.0.2

编译

make

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
安装
在这里插入图片描述
启动单机Redis

./redis-server 这里需要到  注:/usr/local/src/redis-3.0.2/src 目录

在这里插入图片描述
Redis搭建已经完毕接下来我们要开始大家主从复制模式下的Redis

1.2 搭建Redis 主从复制模式(读写分离)

首先我们先创建三个文件夹用于存放他们各自的配置文件(redis.conf)已经数据存储文件

mkdir cluster-7001
mkdir cluster-7002
mkdir cluster-7003

在这里插入图片描述
然后先将Redis配置文件设置城默认后台启动,在分配复制到以上三个文件夹当中
在这里插入图片描述
分别进行复制

 cp redis.conf ../cluster-7001/
 cp redis.conf ../cluster-7002/
 cp redis.conf ../cluster-7003/

在这里插入图片描述
然后分别修改三个配置文件,主要是将其中的端口、pidfile 文件的目录进行修改
在这里插入图片描述
接下来配置主从关系,只需要在从服务器的redis.conf 中将主服务器的ip和端口配置上即可
在这里插入图片描述
到这里我们就配置完成了,接下来启动集群服务器(根据配置文件进行启动)

./redis-server /usr/local/src/cluster-7001/redis.conf
./redis-server /usr/local/src/cluster-7002/redis.conf
./redis-server /usr/local/src/cluster-7003/redis.conf

查询redis进程

ps -ef | grep redis

在这里插入图片描述
接下来我们进行测试进入Redis查看主从信息

./redis-cli -p 7001

在这里插入图片描述
到这里大家可以看到127.0.0.1:7001 主服务
到这里大家可以看到127.0.0.1:7002 从服务
到这里大家可以看到127.0.0.1:7003 从服务

role:角色
connected_slaves:从库数量
slave0:从库信息

1.3 测试主从复制

1、 当从库和主库建立MS关系后,从库会向主数据库发送PSYNC命令;
2、 主库接收到PSYNC命令后会开始在后台保存快照(RDB持久化过程),并将期间接收到的写命令缓存起来;
3、 当快照完成后,主Redis会将快照文件和所有缓存的写命令发送给从Redis;
4、 从Redis接收到后,会载入快照文件并且执行收到的缓存的命令;
5、 之后,主Redis每当接收到写命令时就会将命令发送从Redis,从而保证数据的一致;

在这里插入图片描述
首先我们现到主服务器写入数据
在这里插入图片描述
在这里插入图片描述
然后再到从服务器看看有没有这条数据
在这里插入图片描述
至此我们已经看到数据已经同步过去了,但是发现一个问题 从数据不能进行写入操作,默认情况下redis数据库充当slave角色时是只读的不能进行写操作,可以在配置文件中开启非只读:slave-read-only no

怎么样是不是发现很简单,在下篇文章中我将会带领大家搭建Redis集群之哨兵模式(sentinel)

如有不正确之处,欢迎大家及时指出错误的地方,谢谢。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值