一般网站搭建都会使用Redis做缓存,当单台Redis承受不住压力时,会考虑搭建Redis主从。在没有业务的情况下,一般不会一下子上来就去搭建Redis无中心集群
Redis主从复制环境搭建
,前面跟部署单台Redis一致,只不过后面是从Redis的配置上去同步主Redis即可
。
这里找三台虚拟机采用Redis源码搭建Redis一主二从环境
1、服务器准备
主:192.168.123.92
从:192.168.123.174
从:192.168.123.175
操作系统版本如下:
[root@localhost ~]# cat /etc/system-release
CentOS Linux release 7.9.2009 (Core)
注意:这里关闭了服务器的防火墙,不关闭防火墙,其它机器无法访问本服务器的6379端口;防火墙设置6379端口也可以。二选一。
2、这里使用Xshell7工具,可以同步操作三台服务器,安装软件工作就减少1/3,如下图
3、Redis源码是C语言,得安装gcc工具。
4、需要去Redis下载源码,所以这里也安装下wget工具
5、Redis安装步骤同官网教程即可
# 1、下载源码
wget https://download.redis.io/redis-stable.tar.gz
# 2、解压源码
tar -xzvf redis-stable.tar.gz
# 3、进入加压后的redis源码目录中
cd redis-stable
# 4、执行编译命令
make
# 5、执行安装命令,同时指定安装目录,redis不存在会新建
make install PREFIX=/usr/local/redis
# 6、进入redis安装目录
cd /usr/local/redis/
# 7、新建存在配置redis.conf目录
mkdir conf
# 8、把redis源码中的redis.conf配置文件复制过来
cp /root/redis-stable/redis.conf ./conf/
# 9、启动redis服务
./bin/redis-server ./conf/redis.conf
出现如下图,说明Redis软件安装成功:
6、编写/etc/systemd/system/redis.service
文件,内容如下:
[Unit]
Description=redis-server
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
PrivateTmp=true
[Install]
WantedBy=multi-user.target
7、安装vim编辑器,不安装的也可以直接使用vi
8、配置修改
主Redis的redis.conf
配置文件做如下修改:
bind 0.0.0.0 -::1 # 87行,修改监听地址为0.0.0.0
protected-mode no # 111行,将本机访问保护模式设置no
port 6379 # 138行,默认监听6379端口
daemonize yes # 309行,设置为守护进程,后台启动
pidfile /usr/local/redis/log/redis_6379.pid # 341行,指定 PID 文件
logfile "/usr/local/redis/log/redis_6379.log" # 355行,指定日志文件
dir /usr/local/redis/data # 510行,指定持久化文件所在目录
#requirepass 123456 # 1045行,可选,设置redis密码
appendonly yes # 1387行,开启AOF
得检查log和data目录是否存在,不存在需要新建
下面是配置修改处的截图:
从Redis的redis.conf
配置文件做如下修改:
bind 0.0.0.0 -::1 # 87行,修改监听地址为0.0.0.0
protected-mode no # 111行,将本机访问保护模式设置no
port 6379 # 138行,默认监听6379端口
daemonize yes # 309行,设置为守护进程,后台启动
pidfile /usr/local/redis/log/redis_6379.pid # 341行,指定 PID 文件
logfile "/usr/local/redis/log/redis_6379.log" # 355行,指定日志文件
dir /usr/local/redis/data # 510行,指定持久化文件所在目录
#requirepass 123456 # 1045行,可选,设置redis密码
appendonly yes # 1387行,开启AOF
上面配置的修改和主Redis的修改是一样的,下面才是从Redis独有的配置修改
replicaof 192.168.123.92 6379 # 534行,指定要同步的Master节点IP和端口
#masterauth 123456 # 542行,可选,指定Master节点的密码,仅在Master节点设置了requirepass
下面的截图是从Redis需要改的配置:
9、验证主从效果
启动三台服务器的Redis服务,在主Redis安装目录下的bin目录下输入./redis-cli info replication
,出现如下图,说明Redis主从复制环境搭建成功。
也可以先启动主Redis服务后,tail -f redis_6379.log
实时观察日志内容情况
小结:
1、Redis主从搭建,就是在从redis配置文件
中配置一个去同步主redis的数据
即可。