Redis部署之哨兵

背景

在上篇中Redis部署之主从已完成redis主从部署,系统的性能提高了,但如果主节点发送故障,则无法对外提供写入服务,需要手动进行主从切换。

引入哨兵可提升系统可用性,并在主节点故障时自动完成主从切换。

环境说明

  • 2台云服务器
  • 使用docker部署
  • 一主一从一哨兵
  • redis版本为:7.2.4

前置条件

已完成redis主从部署

下载配置文件

wget http://download.redis.io/redis-stable/sentinel.conf

修改配置文件

# 哨兵监控IP为127.0.0.1端口号为6379的redis主服务器,主服务器名称为mymaster,最后的数字表示数量,例如3台哨兵,其中有2台哨兵认为redis主服务器已经宕机,则主机已经宕机,否则不认为redis的主服务器宕机
sentinel monitor mymaster 127.0.0.1 6379 2
# 在指定的毫秒数内,若主节点没有应答哨兵的 PING 命令,此时哨兵认为服务器主观下线,默认时间为 60 秒。
sentinel down-after-milliseconds mymaster 60000
# 如果主服务器配置了密码,则哨兵也必须配置密码,否则哨兵无法对主从服务器进行监控,该密码与主服务器密码一致
sentinel auth-pass mymaster 123456

如主节点配置了密码,则sentinel.conf配置文件必须配置密码,如:

sentinel auth-pass mymaster 123456

启动哨兵

docker run -d --name sentinel -p 26379:26379 -v /root/docker-data/redis/sentinel.conf:/usr/local/etc/redis/sentinel.conf -v /etc/localtime:/etc/localtime:ro redis redis-sentinel /usr/local/etc/redis/sentinel.conf

/root/docker-data/redis/sentinel.conf为宿主机挂载目录,可自行修改。

踩坑记录

在主从配置中,从节点需要连接主节点,因此从节点通过masterauth <your-password> 配置主节点认证密码从而连接主节点,而主节点不需要配置从节点的认证密码,因为不会自动进行主从切换,主节点不需要连接到从节点。

而在哨兵模式下,当主节点A下线,从节点B升级为主节点后,若A上线后,A会尝试以从节点的身份连接到主节点B,而由于A未配置从节点的认证密码,导致无法连接。

因此,哨兵模式下,主从节点都需要配置对方的认证密码,如:

masterauth 123456

参考文档

基于Docker搭建Redis一主两从三哨兵

Docker 部署Redis哨兵

相关推荐

  1. Redis部署哨兵

    2024-04-12 07:14:02       42 阅读
  2. Docker compose部署redis哨兵集群

    2024-04-12 07:14:02       36 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-12 07:14:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-12 07:14:02       101 阅读
  3. 在Django里面运行非项目文件

    2024-04-12 07:14:02       82 阅读
  4. Python语言-面向对象

    2024-04-12 07:14:02       91 阅读

热门阅读

  1. 三维情况下的UWB定位原理和matlab原创函数源码

    2024-04-12 07:14:02       36 阅读
  2. Spring Boot中@KafkaListener使用${}动态指定topic

    2024-04-12 07:14:02       166 阅读
  3. 【SpringBoot】面试题汇总

    2024-04-12 07:14:02       39 阅读
  4. Flink学习(五)-流式分析

    2024-04-12 07:14:02       37 阅读
  5. 【C++之list的应用及模拟实现】

    2024-04-12 07:14:02       35 阅读
  6. Redis--17--RedisUtil工具类

    2024-04-12 07:14:02       29 阅读
  7. Mac m1 安装虚拟机+docker 2024

    2024-04-12 07:14:02       38 阅读
  8. go的option模式

    2024-04-12 07:14:02       174 阅读
  9. 2024新版idea常用快捷方式

    2024-04-12 07:14:02       34 阅读