Linux下配置Redis - 哨兵(sentinel)模式

本文详细描述了如何在Redis中配置哨兵模式,包括主从复制的设置、sentinel.conf的修改、角色切换的测试以及读写权限的验证。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

哨兵(sentinel)模式是基于主从模式配置的,所以在配置哨兵模式之前需要先配置主从复制,具体过程可以看《Redis - 主从复制模式配置》,这里忽略不说,直接配置哨兵模式

 哨兵一般情况下不跟Redis进程放在同一个机器里,防止一同挂了。我这里是放在同一个机器里的,同时,一台机器可以有多个哨兵,我这里每台机器里只放1个哨兵

IP地址系统版本redis版本
maste192.168.10.11Centos 7.8redis-7.0.0
slave-1192.168.10.12
slave-2192.168.10.13

0. 完成主从复制模式配置、关闭Redis

systemctl stop redis

1. 修改配置文件

vim Redis目录/sentinel.conf

# Redis目录即是redis软件包解压后的目录,具体可以看教程《Redis - 主从复制模式配置》
# 一台机器有多个哨兵时则需要创建多个sentinel.conf文件,只有一个时用系统自带的即可
# 修改、增加以下内容

protected-mode no
bind 本机IP
daemonize yes
pidfile "/var/run/redis-sentinel.pid"  #默认即可
logfile "/var/log/redis-sentinel.log"
sentinel monitor mymaster master的IP 6379 2
sentinel auth-pass mymaster 密码       #设置密码

2.  启动哨兵

systemctl start redis       # 先启动主(master)服务器,再启动从(slave)服务器
redis-sentinel Redis目录/sentinel.conf

      哨兵正常启动后的 sentinel.conf 文件

3. 测试角色切换

(1)在主(master)服务器和从(slave)服务器上分别查看信息
redis-cli -h 本机IP -a 上面设置的密码 info replication

(2)停掉主(master)的redis,再看信息
systemctl stop redis
redis-cli -h 本机IP -a 上面设置的密码 info replication    # 在从(slave)服务器上看
# 可以看到,刚开始显示master主机是192.168.10.11,状态为down
# 过30秒后再看,master主机变为192.168.10.12.状态为up

(3)去新的master机(即192.168.10.12) 上看
redis-cli -h 本机IP -a 上面设置的密码 info replication    # 在新master服务器上看
# 可以看到,原来的master机现在变成了slave

4. 测试读写切换

(1) 在《Redis - 主从复制模式配置》中,slave机可以读取但不能写入。
(2)现在在新的master机(即原来的slave机)  上写入数据
redis-cli -h 本机IP
auth  密码

# 查看原来的数据
get xx 

# 写入新数据
set xx xxx

(3)在slave(即原来的master机)上查看并写入数据
redis-cli -h 本机IP
auth  密码

# 查看的数据。可以看到数据
get xx 

# 写入新数据。写入失败
set xx xxx

配置完成!!! 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

两拆

谢谢你的观看和喜欢

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值