【发布时间】:2015-02-04 04:52:44
【问题描述】:
我一直在阅读有关使用 Redis sentinel 进行故障转移的文章。我打算有1个master + 1个slave,如果master宕机超过1分钟,就把slave变成master。我知道这对于 Sentinel 来说是 100% 可能的。
但是,我看到文档提到使用多个 Sentinel。让我们假设这是不可能的(即预算或技术限制)。我假设我可以有这样的配置:
- 服务器 A 中的 1 个哨兵
- 服务器 B 中的主控
- 服务器 C 中的从站
拥有多个哨兵而不是 1 个有什么好处?我的应用一次只能连接到 1 个哨兵,即使有 2 个哨兵,如果我的应用层中没有一些复杂的逻辑出现故障,我的应用也无法在其中任何一个哨兵之间旋转或切换。
【问题讨论】:
-
哨兵负责确保您的主服务器可用,并在发生故障时故障转移到从服务器。如果只有一个哨兵,您的设置中就会出现单点故障 - 如果该哨兵失败,您将失去高可用性。
-
运行 3 个以上的哨兵的好处是它将为您正确管理故障转移。这基本上在您的另一个几乎重复的问题中得到了回答:stackoverflow.com/questions/28323936/…
-
你在运行什么堆栈?
-
1 个哨兵是另一个单点故障,我想
-
如何在单独的服务器上运行哨兵(仅哨兵)? @亨利
标签: redis redis-sentinel