当一个数据中心中的应用程序集群故障切换到不同的数据中心时,连接的Redis机器会发生什么情况?

问题描述:

//,他们爆发。当一个数据中心中的应用程序集群故障切换到不同的数据中心时,连接的Redis机器会发生什么情况?

尽管如此,看起来像Sentinel处理实际的故障转移,如果Redis群集停用。但是,我们假设没有Redes *死亡,并且两个数据中心都有Redis集群。

Redis集群“接近”新近活动的应用程序集群是否逐渐接管其流量或缓存?

*我小时候就拿拉丁文。互联网上说“-es”拒绝以“-is”结尾的名词使其成为复数。

这只适用于拉丁文根和作品。 ;)

除了列出的安排并不简单,即使配置“正确”。这意味着在每个数据中心都有哨兵,但要做到这一点,你不能将他们分成50/50,否则如果一个DC失去与另一个DC的连接,你将会裂脑。

这你必须选择第三个DC才能运行哨兵队伍,将他们分为三种方式并保持法定人数。通过这种方式,您可以通过要求两个DC决定故障切换来降低风险。

但是,如果只是网络连接,原来的主DC的本地客户端仍然会连接到本地主设备,并且您仍然可能会分裂大脑。如果您正在从多个数据中心运行一个容器(请不要称为非群集群集,它只会让事情混乱),这是非常棘手和充满危险的,您应该是正确的。

为了最大限度地降低此风险,您可以在辅助数据中心中运行不可升级的从站,并且只从该DC发出读取请求并将其写入主DC中的主站。这也意味着不让标记故障转移到辅助节点,但是如果需要手动执行它。

哨兵和redis都不是专为跨数据中心复制和故障转移而设计的。您将需要设计和编写一个系统,以适合您的应用程序的方式为您处理。我建议在这样的系统中非常小心。