附:redis源码包下载
1.解压源码包并编译安装
[root@master opt]# tar zxvf redis-5.0.2.tar.gz
[root@master opt]# yum install -y gcc-c++ tcl *安装依赖*
[root@master opt]# cd redis-5.0.2/
[root@master redis-5.0.2]# make install PREFIX=/usr/local/redis/
2.修改redis配置文件
[root@master bin]# cp /usr/local/src/redis-5.0.2/redis.conf /etc/
[root@master ~]# vim /etc/redis.conf
daemonize yes *设置为守护进程*
bind 0.0.0.0 *允许任何IP访问*
requirepass 123456 *redsi密码*
logfile /var/log/redis_6379.log
pidfile /var/run/redis_6379.pid
port 6379 *为了方便管理,可根据端口号来命名log和pid*
注意:在配置从服务器的文件时需要声明主服务器的地址与端口
在上文的基础上添加以下两条
slaveof 172.16.94.129 6379 *指定master机*
masterauth 123456 *master 密码*
3.创建软链接
4.通过redis启动脚本来启动redis(可选)
5.启动服务(跳过第4步)
[root@master ~]# redis-server /etc/redis.conf
[root@master ~]# netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 27141/redis-server
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd
tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN 9931/X
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 9661/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 9338/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 9343/cupsd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 9761/master
tcp6 0 0 :::111 :::* LISTEN 1/systemd
tcp6 0 0 :::6000 :::* LISTEN 9931/X
tcp6 0 0 :::22 :::* LISTEN 9338/sshd
tcp6 0 0 ::1:631 :::* LISTEN 9343/cupsd
tcp6 0 0 ::1:25 :::* LISTEN 9761/master
启动好主从服务器之后来我们来验证一下redis服务是否正常运行
[root@master ~]# redis-cli -h 127.0.0.1 -p 6379 -a 123456
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
127.0.0.1:6379> INFO replication ##查看主/从复制信息
# Replication
role:master
connected_slaves:0 *显示无从服务器连接*
slave0:ip=172.16.94.129,port=6379,state=online,offset=112,lag=1
master_replid:347b9ec7573fa1085327342f19d187f236159abf
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:112
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048984
repl_backlog_first_byte_offset:1
repl_backlog_histlen:112
注意:在主机通信互通的情况下,主服务器显示无从服务器连接,表示该服务被防火墙阻止,可根据需求来关闭防火墙或是设置防火墙规则
(本文选择关闭防火墙操作)
关闭防火墙后再次查询
[root@master ~]# redis-cli -h 127.0.0.1 -p 6379 -a 123456
Warning: Using a password with '-a' or '-u' option on the command line interface may not be safe.
127.0.0.1:6379> INFO replication
# Replication
role:master
connected_slaves:2 *OK,现在两台从服务器都成功连接上了*
slave0:ip=172.16.94.129,port=6379,state=online,offset=112,lag=1
master_replid:347b9ec7573fa1085327342f19d187f236159abf
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:112
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048984
repl_backlog_first_byte_offset:1
repl_backlog_histlen:112
测试从服务器可否读取主服务器的值