在Redis中,用户可以通过执行SLAVEOF命令或者设置slavof选项,让一个服务器去复制(replicate)另一个服务器,我们称呼被复制的服务器为主服务器(master),而对主服务器进行复制的服务器则被称为从服务器(slave),如图所示。
使用主从复制这种模式,实现node01作为主节点,node02与node03作为从节点,并且将node01所有的数据全部都同步到node02和node03服务器
第一步:node02与node03服务器安装redis
node02与node03执行以下命令安装依赖环境
yum -y install gcc-c++
node02与node03上传redis压缩包
在node02与node03服务器上面上传redis压缩包,然后进行解压
将安装包上传到/kkb/soft路径下
cd /kkb/soft
tar -zvxf redis-3.2.8.tar.gz -C ../install/
node02与node03服务器安装tcl
node02与node03服务器执行以下命令在线装TCL
yum -y install tcl
node02与node03服务器编译redis
node02与node03执行以下命令进行编译redis
执行以下命令进行编译:
cd /kkb/install/redis-3.2.8/
make MALLOC=libc 或使用命令make进行编译
make test && make install
node02与node03服务器修改redis配置文件
node02服务器修改配置文件命令如下
执行以下命令修改redis配置文件
cd /kkb/install/redis-3.2.8/
mkdir -p /kkb/install/redis.3.2.8/logs
mkdir -p /kkb/install/redis-3.2.8/redisdata
vim redis.conf
bind node02
daemonize yes
pidfile /var/run/redis_6379.pid
logfile "/kkb/install/redis-3.2.8/logs/redis.log"
dir /kkb/install/redis-3.2.8/redisdata
slaveof node01 6379
node03服务器修改配置文件命令如下
执行以下命令修改redis配置文件
cd /kkb/install/redis-3.2.8/
mkdir -p /kkb/install/redis-3.2.8/logs
mkdir -p /kkb/install/redis-3.2.8/redisdata
vim redis.conf
bind node03
daemonize yes
pidfile /var/run/redis_6379.pid
logfile "/kkb/install/redis-3.2.8/logs/redis.log"
dir /kkb/install/redis-3.2.8/redisdata
slaveof node01 6379
第二步、启动node02与node03机器的redis服务
node02执行以下命令启动redis服务
cd /kkb/install/redis-3.2.8/src
redis-server ../redis.conf
node03执行以下命令启动redis服务
cd /kkb/install/redis-3.2.8/src
redis-server ../redis.conf
启动成功便可以实现redis的主从复制,node01可以读写操作,node02与node03只支持读取操作。