redis多主机实现主从架构
实验环境selinux 关闭状态firewalld 关闭状态无网络环境环境规划主机IPmaster192。168.1.50slave1192.168.1.51slave2192.168.1.52实验步骤导入安装包,并解压修改配置文件,添加本地持久化启动redis服务建立主从状态查看状态的验证主从建立实验过程通过工具把安装包导到虚拟机[root@master、slave1、slave2 ~]这样时三
·
实验环境
selinux 关闭状态
firewalld 关闭状态
无网络环境
环境规划
主机 | IP |
---|---|
master | 192.168.1.50 |
slave1 | 192.168.1.51 |
slave2 | 192.168.1.52 |
实验步骤
- 导入安装包,并解压
- 修改配置文件,添加本地持久化
- 启动redis服务
- 建立主从状态
- 查看状态的
- 验证主从建立
实验过程
通过工具把安装包导到虚拟机
[root@master、slave1、slave2 ~]这样时三台服务器都需要操作的
[root@master ~]# cd /data/
解压安装包
[root@master data]# tar -xf redis-5.0.7.tar.gz && mv redis-5.0.7 redis
使用for循环语句拷贝解压后的目录到其他节点
[root@master ~]# for i in 192.168.1.51 192.168.1.52 ;do scp -r /data/redis $i:/data ;done
三台主机全部下载安装编译工具编译安装
[root@master、slave1、slave2 ~]# yum -y install gcc automake autoconf libtool make
编译安装redis
[root@master、slave1、slave2 ~]# cd /data/redis && make || make install
修改环境变量,并刷新
[root@master、slave1、slave2 ~]# echo 'export PATH=/data/redis/src:$PATH' >> /etc/profile
[root@master、slave1、slave2 ~]# source /etc/profile
修改配置文件redis.conf
[root@master、slave1、slave2 ~]# vim /data/redis/redis.conf
69行 # bind 127.0.0.1 ##注释掉,访问地址限制链接
88行 protected-mode no ##保护模式关闭
136行 daemonize yes ## 服务在后台运行
287行 masterauth 123456 ##主服务器登入的密码
288行 requirepass 123456 ##客户端访问密码
289行 replicaof 192.168.1.50 6379 ##从服务器上写住的IP地址
启动redis服务
[root@master、slave1、slave2 ~]# /data/redis/src/redis-server /data/redis/redis.conf &
建立主从模式
[root@slave1 ~]# redis-cli -a 123456 slaveof 192.168.1.50 6379
[root@slave2 ~]# redis-cli -a 123456 slaveof 192.168.1.50 6379
查看主从状态master
[root@localhost data]# redis-cli -a 123456 info replication
# Replication
role:master
connected_slaves:2
slave0:ip=192.168.1.51,port=6379,state=online,offset=5488,lag=0
slave1:ip=192.168.1.52,port=6379,state=online,offset=5488,lag=0
master_replid:7386eacd154431b589bfe93d4a4a6770594c7fe7
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:5488
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:5488
主看主从状态slave1
[root@slave1 redis]# redis-cli -a 123456 info replication
# Replication
role:slave
master_host:192.168.1.50
master_port:6379
master_link_status:up
master_last_io_seconds_ago:8
master_sync_in_progress:0
slave_repl_offset:5446
slave_priority:100
slave_read_only:1
connected_slaves:0
master_replid:7386eacd154431b589bfe93d4a4a6770594c7fe7
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:5446
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:1
repl_backlog_histlen:5446
查看主从状态slave2
[root@localhost redis]# redis-cli info replication
# Replication
role:slave
master_host:192.168.1.50
master_port:6379
master_link_status:up
master_last_io_seconds_ago:3
master_sync_in_progress:0
slave_repl_offset:5376
slave_priority:100
slave_read_only:1
connected_slaves:0
master_replid:7386eacd154431b589bfe93d4a4a6770594c7fe7
master_replid2:0000000000000000000000000000000000000000
master_repl_offset:5376
second_repl_offset:-1
repl_backlog_active:1
repl_backlog_size:1048576
repl_backlog_first_byte_offset:5293
repl_backlog_histlen:84
验证信息:
更多推荐
已为社区贡献6条内容
所有评论(0)