Redis-6.0.6 主从哨兵模式搭建记录

  • 准备工作
    – 下载redis: http://download.redis.io/releases/redis-6.0.6.tar.gz
    – 解压 tar -zxvf redis-6.0.6.tar.gz
    – cd redis-6.0.6
    – make
  • 开始部署
    – 搭建主从服务器
    – 在同级目录下执行 mkdir redis-master-slave
    – cd redis-master-slave
    – 新建6379与6380文件夹这两个文件夹是用来保存redis的启动配置文件和日志的
    – 配置6379服务器 vim redis-6379.conf 与6380服务器 vim redis-6380.conf
#当前 redis 端口定义:
port 6379
#redis 守护进程设置:
daemonize yes
# 设置密码
requirepass 123456
# 配置主节点的密码,哨兵模式切换的话原来的主服务也需要配置
masterauth "123456"
# 指定更新日志条件,共有3个可选值:
# no:表示等操作系统进行数据缓存同步到磁盘(快)
# always:表示每次更新操作后手动调用fsync()将数据写到磁盘(慢,安全)
# everysec:表示每秒同步一次(折衷,默认值)
appendfsync everysec
# 开启AOF
appendonly yes
#保护模式:
protected-mode no
#redis 日志:
logfile "6379.log"
#redis 数据持久化文件定义:
dbfilename "dump-6379.rdb"
#淘汰策略最小使用
maxmemory-policy allkeys-lru
#redis 配置存储路径
dir "/home/app/redis-master-slave/6379"
port 6380
#redis 守护进程设置:
daemonize yes
# 设置密码
requirepass 123456
# 配置主节点的密码,哨兵模式切换的话原来的主服务也需要配置
masterauth "123456"
# 指定更新日志条件,共有3个可选值:
# no:表示等操作系统进行数据缓存同步到磁盘(快)
# always:表示每次更新操作后手动调用fsync()将数据写到磁盘(慢,安全)
# everysec:表示每秒同步一次(折衷,默认值)
appendfsync everysec
# 开启AOF
appendonly yes
#保护模式:
protected-mode no
#redis 日志:
logfile "6380.log"
#redis 数据持久化文件定义:
dbfilename "dump-6380.rdb"
#淘汰策略最小使用
maxmemory-policy allkeys-lru
#redis 配置存储路径
dir "/home/app/redis-master-slave/6380"
#主机地址 此处为公网ip使用云服务器需要放开端口
slaveof ip 6379
  • 启动主从服务器
    – 启动主节点: redis-6.0.6/src/redis-server redis-master-slave/6379/redis-6379.conf
    – 启动从节点: redis-6.0.6/src/redis-server redis-master-slave/6380/redis-6380.conf
  • 验证主从节点关系
    – 主节点: redis-6.0.6/src/redis-cli -a 123456 -p 6379 info replication
    在这里插入图片描述
    – 从节点: redis-6.0.6/src/redis-cli -a 123456 -p 6380 info replication
    在这里插入图片描述
  • 节点验证完毕,开始配置哨兵信息,哨兵配置的原则是哨兵数量需>=节点数量,也就是说一主一从最少配两台哨兵,我服务器小池塘,就只配两台吧,正常情况下最好是配3台比较好
    – redis-master-slave 新建两个文件夹 16379 16380分别存放两个哨兵的配置信息等
    – cd 16379
    – vim sentinel_16379.conf
    – 16380同上
#端口
port 16379
#添加后台运行
daemonize yes
#配置监听的主服务器,这里sentinel monitor代表监控,mymaster代表服务器的名称,可以自定义,公网ip代表监控的主服务器,6379代表端口,2代表只有两个或两个以上的哨兵认为主服务器不可用的时候,才会进行failover操作。
sentinel monitor mymaster 公网ip 6379 1
#sentinel author-pass定义服务的密码,mymaster是服务名称,123456Redis服务器密码
sentinel auth-pass mymaster 123456
#端口
port 16380
#添加后台运行
daemonize yes
#配置监听的主服务器,这里sentinel monitor代表监控,mymaster代表服务器的名称,可以自定义,公网ip代表监控的主服务器,6379代表端口,2代表只有两个或两个以上的哨兵认为主服务器不可用的时候,才会进行failover操作。
sentinel monitor mymaster 公网ip 6379 1
#sentinel author-pass定义服务的密码,mymaster是服务名称,123456Redis服务器密码
sentinel auth-pass mymaster 123456
  • 启动哨兵
    – redis-6.0.6/src/redis-sentinel sentinel_16379.conf
    – redis-6.0.6/src/redis-sentinel sentinel_16380.conf
  • 验证关系
    – redis-6.0.6/src/redis-cli -a 123456 -p 16379 info Sentinel
    – redis-6.0.6/src/redis-cli -a 123456 -p 16380 info Sentinel
    在这里插入图片描述
  • 主从切换验证
    – netstat -anp |grep 6379
    – kill -9 pid
  • 查看6380状态是否从slave切换为master
  • 重启6379后查看是否正常

以上为搭建Redis主从集群的全过程,云服务器记得在安全组中配置放行端口号,客户端使用时,链接哨兵即可
我的个人博客: https://blog.sunyw.xyz

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值