NOSQL:Redis主从复制和哨兵服务
程序员文章站
2022-05-28 21:01:11
...
主从复制概述
主从复制结构模式
- 结构模式
–一主一从
–一主多从
–主从从
主从复制工作模式
- 工作原理
–slave向master发送sync命令
–master启动后存盘进程,并收集所有修改数据命令
–master完成后台存盘后,传送整个数据文件到slave
–slave接受数据文件,加载带内存中完成首次完全同步
–后续有新数据产生时,master继续收集数据修改命令依次传给slave,完成同步
配置主从复制
- 一主一从
master:192.168.4.51/24
slave:192.168.4.52/24
client:192.168.4.50
配置从库
- redis服务器运行后,默认都是master服务器
192.168.4.52:6352> info replication #查看复制信息
192.168.4.52:6352> slaveof 192.168.4.51 6351 #临时指定master,重启redis失效
192.168.4.52:6352> info replication #再次查看复制信息
192.168.4.52:6352>
- 永久生效:
vim /etc/redis/6379.conf
slaveof 192.168.4.51 6351 #在文件末尾添加或在原有配置项上修改都可以永久生效
或者
192.168.4.52:6352> config rewrite #让写的配置写入配置文件中
反客为主
- 将从库恢复为主库
192.168.4.52:6352>slaveof no one #临时设置
OK
永久改配置或config rewrite
配置带验证的主从复制
- 配置master
–设置连接密码,重启服务
vim +501 /etc/redis/6379.conf
....
501 requirepass 123456
....
/etc/init.d/redis_6379 restart
- 配置slave
方法一:
vim +289 /etc/redis/6379.conf
masterauth 123456
在文件末尾加也可以
/etc/init.d/redis_6379 restart
方法二:
192.168.4.52:6352>config set masterauth 123456
192.168.4.52:6352>config rewrite
哨兵服务
哨兵服务介绍
- 监视master服务器
- 发现master宕机后,将从服务器升级为主服务器
- 主配置文件:sentinel.conf
- 模板文件:redis-4.0.8/sentinel.conf
配置哨兵服务
- 安装redis软件
yum -y install gcc
tar -zxf redis-4.0.8.tar.gz
cd redis-4.0.8/
make && make install
##不必初始化配置
- 创建主配置文件
vim /etc/sentinel.conf #创建主配置文件
sentinel monitor server51 192.168.4.51 6351 1 #监视主服务器
bind 0.0.0.0 #哨兵服务地址(表示本机所有网络接口)
sentinel auth-pass server51 123456 #主服务器密码
port=26379 #可以不写,默认端口是26379
- 启动哨兵服务
redis-sentinel /etc/sentinel.conf
#启动哨兵服务