简单地说,我们现在是Redis
大多数NoSQL部署使用三个副本来确保高可用性(HA)。从高级的角度来看,第一个副本通常用于存储数据集,第二个副本用于故障转移,而第三个副本用于在发生网络分裂事件时充当决平器。由于DRAM价格昂贵,维护三个副本的成本可能非常高。万博体育彩另一方面,Redis Enterprise允许你拥有一个只有两个副本的全高可用性系统,在这个系统中,你的决胜局是通过在集群中使用不均匀的节点数量来决定的。下面的例子比较了在Amazon Web Services上运行三个副本的90GB HA OSS Redis数据集和使用两个副本和一个仲裁节点的Redis Enterprise集群的基础设施成本:万博体育彩
万博体育彩Redis Enterprise复制是基于主从端的无磁盘复制,如下图所示:
此外,Redis企业使用万博体育彩PSYNC2对于其核心操作,因此活动复制链路将在之后维护,以用于计划的故障转移或分片迁移操作。
Re万博体育彩dis Enterprise集群使用两个看门狗进程来检测故障:
这些监视进程是分布式集群管理器实体的一部分,驻留在集群的每个节点上。由运行在集群内的实体管理故障检测,以避免出现如下图左侧所示的情况,这一点非常重要。在这个例子中,看门狗实体位于网络分裂的错误的一边,不能触发故障转移过程:
一旦检测到故障事件,Redis Enterprise集群将自动且透明地运行一万博体育彩组内部分布式进程,将相关分片和端点(如果需要)故障转移到健康的集群节点。如果有必要,它们还可以通过一个或多个不同的代理重新路由用户流量。
Redi万博体育彩s Enterprise集群为嘈杂(公有云)和安静(虚拟私有云、内部部署)环境提供了开箱即用的HA配置文件。我们发现,过于激进地触发故障转移可能会造成稳定性问题。另一方面,在安静的网络环境中,Redis Enterprise集群可以很容易地进行调优,以在所有故障场景中万博体育彩支持固定的个位数(<10秒)故障转移时间。
万博体育彩Redis Enterprise支持多az /机架集群配置。在该模式下,集群节点会被标记为它们所在的zone/机架,Redis Enterprise保证同一个分片的主、从Redis进程不会驻留在位于同一AZ/机架的节点上。万博体育彩在多az /机架万博体育彩环境下运行Redis Enterprise需要满足以下条件:
云中的Redis企业多az配万博体育彩置示例如下:
如你所见,这个例子满足上面讨论的所有条件: