yum install gcc gcc-c++ kernel-devel automake autoconf libtool make wget tcl vim ruby rubygems unzip git -y

cp redis-server redis-cli redis-check-aof redis-benchmark mkreleasehdr.sh /usr/local/redis/bin/

首先三台虚拟机

172.25.11.1 2 3

对应的端口

6379 6380 6381

分别修改

redis实现主从复制_ruby

server1设置redis.conf

bind 0.0.0.0

server2 3

bind各自的ip  172.25.11.2 3

server 123 分别将各自的pidfile修改为对应的pid

pidfile /var/run/redis_6379.pid

pidfile /var/run/redis_6380.pid

pidfile /var/run/redis_6381.pid

redis实现主从复制_ruby_02

都将下面

logfile  "6381.log"

 

redis实现主从复制_3c_03

两台slave端修改

server2 3

replicaof   172.25.11.1 6379

redis实现主从复制_redis_04

 

info replication

./redis-server redis.conf

./redis-cli -h 172.25.11.1 -p 6379

 

# Replication
role:master
connected_slaves:2
slave0:ip=172.25.11.2,port=6380,state=online,offset=14,lag=1
slave1:ip=172.25.11.3,port=6381,state=online,offset=14,lag=1
master_replid:3cb60eeb1943c0b0999085bd61f05823e88f99e7
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:14
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:14
172.25.11.1:6379>

redis实现主从复制_redis_05

 

测试主从

redis实现主从复制_ruby_06

redis实现主从复制_3c_07