redis5.0学习(三)

0 简介

这次主要是学习了redis5的主从复制原理。主从复制就是一台主服务器下面跟着几台从服务器,主服务器可以写,而通常将从服务器设置成只读模式,主节点定期把数据同步到从节点保证数据的一致性。

1 Redis5.0.4主从复制集群的搭建

首先创建三个虚拟机,其中一台作为主服务器,另外两台作为从服务器。

主服务器负责写入数据,两台从服务器负责读取数据(只读)。

下图是配置好的三台centos7服务器。

在这三台服务器上配置redis,首先将redis5.0.4下载下来并且安装好。

为了方便区别,将主机名改为最后三位,即主服务器为root@128,两台从服务器为root@129和root@130。

使用hostnamectl set-hostname xxx 修改主机名。(xxx为修改后的主机名)

 

这里选择就在home目录下面进行安装redis的操作。

解压下载的压缩包,进入到redis目录中执行make命令。其余两台的操作一样。下面的图只截取主服务器上面的操作。

 

这样三台机器上的redis就装好了,下面就要进行一些配置文件的修改,以满足主从复制集群的搭建。在修改配置文件之前,首先将三台服务器的防火墙永久关闭,以防有一些错误。

永久关闭防火墙:

关闭防火墙:

systemctl stop firewalld.service

禁止开机自启:

systemctl disable firewalld.service

可以使用firewall-cmd –state命令查看防火墙状态,显示not running即为成功。

 

128主服务器的redis.conf文件中的bind 127.0.0.1注释掉。

将protected-mode 改为no(别的客户端就可以连接了),将daemonize 改为yes(后台启动redis)。

 

 

 

 

两台从服务器也需要将上面所说的配置注释掉,另外两台从服务器的配置文件中还需要写上主服务器的ip和端口号,找到从服务器的配置文件中的replicaof <masterip> <masterport>,将注释去掉,并写上主服务器的ip和端口。如下图:

 

 

 

然后指定该配置文件启动三台服务器的redis服务。其余两台从服务均一样启动:

./src/redis-server redis.conf

 

进入redis客户端

./src/redis-cli

 

在客户端内使用info replication命令查看当前的信息

 

128主服务器的信息如下:

可以看到role为master,connected_slaves为2,下面还显示了从服务的状态信息。

 

129从服务器的信息如下:

 Role 为slave,显示了主服务的ip和端口等信息,以及一些从服务的权限(比如只读还是读写等)。

 

现在向主服务器中写入一个值

到两台从服务器上查看是否已经得到主服务器上写入的值:

到两台从服务器上查看是否已经得到主服务器上写入的值:

129里面的值:

 

130里面的值:

猜你喜欢

转载自blog.csdn.net/hrjyc/article/details/89452919