【问题标题】:How does Redis Cache work with High Availability and Sentinel?Redis Cache 如何与 High Availability 和 Sentinel 配合使用?
【发布时间】:2015-05-22 10:47:03
【问题描述】:

我正在尝试设置一个高可用性设置,如果托管我的主 Redis 缓存的服务器出现故障,它将选择不同的主服务器,但在阅读了有关 Sentinel 的所有文档后,我有点困惑。

例如,如果我有一个 URL,我将我的 Redis 客户端指向:http://my.RedisServer.com:6379,那么帮助故障转移到另一台服务器的哨兵如何在http://mybackup.RedisServer.com:6379 说?

我正在使用适用于 .Net 的 ServiceStack.Redis 客户端并在 Windows 服务器上安装 Redis,但我想为了获得高可用性,我必须切换到 Linux 并使用 Twemproxy 设置或其他什么?我猜我不能只将http://my.RedisServer.com:6379 存储在我的web.config 中并让它以某种方式正常工作吗?我想在某个地方必须有一个映射到 2 个以上 IP 的 DNS,并且像任何 HA 一样进行负载平衡。网络应用程序...

我想我看到了有关 PooledRedisClientManager 的一些东西,这可能是我的答案?

感谢您的澄清。

【问题讨论】:

    标签: .net caching redis servicestack sentinel


    【解决方案1】:

    我只是在Windows上设置了Redis,一主一从,每台服务器一个哨兵,服务器在ms网络负载均衡器的集群环境中。

    所以基本上我所做的是:

    服务器A:(本地IP:1.10.10.1,集群ip:1.10.11.1)

    • 以 Master 身份运行 Redis
    • 运行 redis 作为 Sentinel 监视服务器 A

    服务器 B:(本地 IP:1.10.10.2,集群 ip:1.10.11.1)

    • 将 Redis 作为服务器 A 的从属服务器运行
    • 运行 redis 作为 Sentinel 监视服务器 B

    现在我遇到的第一个问题是,当我连接到集群地址时,我不知道哪个服务器在响应,我需要连接到主服务器,因为从服务器是只读的(仅用于故障转移)所以当然HAProxy 和 Twemproxy 就是为此而生,但没有针对 windows 的实现,所以我决定为此创建一个代理:

    https://bitbucket.org/israelito3000/redis

    所以基本上我在两台服务器上都安装了 redis-proxy,现在当我从客户端库连接时,代理总是将包传输到主服务器,所以它就像一个隧道。当 master redis 失败时,sentinel 会自动将 slave 的角色更改为 master,并且 proxy 会将流量重定向到新的 master,所以基本上从客户端我不需要做任何事情。

    重要的是说我不能直接访问服务器(只能通过集群 ip)

    【讨论】:

      【解决方案2】:

      我相信我找到了答案。

      How to tell a Client where the new Redis master is using Sentinel

      显然,您只需要订阅和收听来自 Sentinel 的事件。有道理..我只是想有一种更精简的方式。

      我读到了一些关于 Linux 的 Twemproxy 的文章,它充当代理,可能为你做这件事?但我在 Windows 的 redis 上,并试图找到一个 Windows 选项。如果这是经过批准的方式,我们可能会迁移到 Linux。

      【讨论】:

      • 我发现了同样的问题,Twemproxy 和 HAProxy 有能力与哨兵交谈以知道谁是主人,并且总是将呼叫重定向到主人,不幸的是没有适用于 windows 的版本,这就是为什么我创建了一个完全执行该步骤的代理,因此您只需连接到代理,他就会重定向到主服务器。
      猜你喜欢
      • 2017-12-10
      • 2020-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多