【发布时间】:2021-02-27 09:22:27
【问题描述】:
我使用Spring Data Redis、bitnami/redis 和bitnami/redis-sentinel 图像创建了一个学习project。 Docker Compose 文件是here。部署命令为docker-compose -f redis-sentinel.yaml up --scale redis-sentinel=3 --scale redis-replica=2 -d,所以Redis配置如下:
启动所有内容后,我用docker stop redis-master 停止主容器。 10 秒后,哨兵故障转移到其中一个副本。到目前为止,一切都很好。但是,容器控制台日志中没有显示以下非常重要的内容:
- 检测到主机宕机。
- 故障转移已启动。
- 故障转移已成功完成。
我希望哨兵记录上述方面。
此外,当我从其中一个哨兵的 Redis CLI 运行 sentinel masters 命令时,我发现故障转移前后的副本数量没有差异。我希望在主服务器关闭时看到数字减少 1。
31) "num-slaves"
32) "2"
33) "num-other-sentinels"
34) "2"
【问题讨论】:
-
您检查了哪些日志文件?请确保 1. Sentinel Logs 已启用 2. 确保您查看的是 Sentinel Logs 而不是主/从日志。
-
@VikramRawat 我检查了哨兵 Docker 容器日志。 1. 我怎么知道哨兵日志是否启用? 2. 如果我正在查看哨兵 Docker 容器日志,我会假设我正在查看正确的位置。
-
找到 sentinel.conf 文件,里面定义了日志文件路径.. 默认值是 logfile "",它记录到标准输出
-
@VikramRawat 在
/bitnami/redis-sentinel/conf/sentinel.conf和logfile "/opt/bitnami/redis-sentinel/logs/redis-sentinel.log"下找到。redis-sentinel.log确实显示了故障转移。如果您发表评论作为答案,我将很乐意接受。您是否也回答第二部分,即当master宕机时,为什么副本数没有减少? -
我已经添加了答案。但不确定第二部分.. 除非您重新启动旧主机(新从机),否则它应该显示 1 个从机。
标签: docker redis docker-compose redis-sentinel