你好堆栈社区,
我对特定问题案例的 Redis sentinel 有疑问。我将 AWS 与 Multi AZ 一起使用来创建一个 sensu 集群。
在 eu-central-1a 上,我有一个 sensu+redis(M)、一个 RBMQ+Sentinel 和另外 2 个 Sentinel。在 eu-central-1b 上也一样,但 redis 是我在这个 AZ 上的奴隶。
如果出现问题并且 eu-central-1a 无法与 eu-central-1b 通信怎么办?我认为eu-central-1b上的Sentinel应该将我的redis slave提升为master,因为他无法联系我的redis master。所以我应该有 2 个 redis master 在 2 个不同的 AZ 上一起运行。
但是当 AZ 之间的链接被检索到时,我仍然会有 2 个 master,有 2 个不同的数据。在这种情况下会发生什么?一个master将成为slave,并且数据将被复制而不会丢失?我们是否需要重新启动一个主人,他将成为奴隶?