我们正处于规划阶段,使我们的Web应用程序服务变得冗余。 目前,我们已经拥有了自己的colo物理服务器,运行连接到EqualLogic SAN的VMWare集群。 这是一个LAMP设置。 我们要build立第二个站点,负载平衡或作为主动/被动故障转移(我认为我们已经倾向于后者,但没有做出决定)。
在绘图板上,我们想出了我们认为是一个简单的解决scheme。 我们的域名parsing为1.2.3.4,这是一个负载均衡器的IP地址,或者一个故障转移服务或者一个像apache的反向代理这样的请求来到它,它将请求转发到适当的数据中心。 这样,如果数据中心A出现故障,我们只需更改负载均衡器,将所有请求发送到数据中心B.
我们没有能够find任何提供这种服务的人。 我们问的每个人(如X0和L3)都说他们不知道我们是否会find类似的东西。 我们的最终目标是在两个站点之间实现冗余,以最大限度地减less停机时间,无论是硬件故障还是整个数据中心因自然灾害而下线。 我们描述这种设置,各种各样的供应商,并没有任何这样的服务熟悉..
我们遇到的最好的想法是使用故障转移DNS。 我们目前使用dnsmadeeasy.com,如果他们的显示器检测到网站A已经黑了,他们会改变DNS来解决网站B的IP。我们已经做了一些testing,甚至在1分钟的TTL, DNS服务器平均需要15分钟左右才能完成更改,而我们在海外查询的一些DNS提供商(如对我们来说很重要的澳大利亚)花了将近一个小时才能完成这一改变。 这还不够好。
那么我错过了什么?
回答你的问题:
就个人而言,我build议你深吸一口气,真正考虑是否真的需要接近零停机时间的地理冗余。 真的,你在这里做什么,将花费你200万美元+ 15分钟的停电? 因为这是一种每停运成本的事件,你正在寻求提供这种基础设施的基本forms(假设你使用的设备不是经常停机的)。 在设置类似的东西并保持运行所需的工程努力之间,以及重新devise应用程序以在这种分布式环境中正常工作所涉及的成本之间,你将会在这方面投入大量的资金,保持它的持续成本是不变的(考虑到你不能实现的所有function,因为它不能在多个站点上正常工作,更不用说每月运行所有的额外基础设施)。