【发布时间】:2018-01-09 23:08:50
【问题描述】:
假设我有两个数据中心,每个数据中心都运行一个 redis 实例。此外,我在这两个数据中心运行了三个哨兵实例,每个实例在单独的机器上,但其中两个在同一个数据中心。
这是个问题吗?
在最坏的情况下,如果第一个数据中心不可用,则三个哨兵实例中的两个 + 一个 redis 实例同时关闭。如果这个 redis 实例是主实例,则会故障转移到另一个数据中心。
但是如果数据中心 1 再次可用会怎样?我猜这将是新配置:
Data center 1 - Sentinel 1 -> Points to master in data center 1
Data center 1 - Sentinel 2 -> Points to master in data center 1
Data center 2 - Sentinel 1 -> Points to master in data center 2
redis会再次将数据中心1的master设置为新的master吗?如果是这样,在数据中心 2 的主服务器上同时发生的数据库更改会发生什么情况?
【问题讨论】:
标签: redis redis-sentinel