Redis 2.8 是否内置了自动故障转移功能?

Is automatic failover built into Redis 2.8?

我计划将 Redis 添加到我们的应用程序中作为会话和缓存存储。我一直在研究如何使 Redis 在本地托管解决方案上高度可用。

标准方法似乎是将 Redis 设置为 3 节点副本,并使用 Sentinel 进行监控和自动故障转移。

Redis 2.8 引入Redis集群。这是否意味着它带来了自动故障转移等功能,我们不再需要使用 Sentinel?

不是,集群和故障转移是不同的场景。另外,Cluster 是 3.0,而不是 2.8。

HA 的标准(和最低)设置是一个主站和一个从站(又名 "a pod"),具有 单独的 三个节点集 运行 哨兵并监视吊舱。

这是为了确保服务器的故障转移。但是,您的客户端库必须支持使用 Sentinel 来发现 master 并在失败时重新连接,您在代码中实现它,或者您设置一个 TCP 负载均衡器和一个 sentinel 监控守护进程以在发生故障转移时更新您的负载均衡器配置客户端代码不知道或不关心哨兵的哪一点。

集群不是为了提供 HA,而是为了服务器端的数据分片。对于 Cluster,您正在查看最少 6-7 个节点(3 个主节点、3 个从节点、1 个备用节点)以及客户端中的集群支持以及对需要访问多个键的命令和 Lua 脚本的限制。