我们正在运行相当大的LAMP网站,这些网站可以很好地扩展软件。 我们通过主 – 从 – 从服务器中的代理,在一堆使用MySQL的Web服务器前使用冗余负载均衡器。
我们正在使用一个非常大的美国供应商。 他们不是很便宜,但也不是最昂贵的。
上周在他们的networking上有一个非常大的DDOS,我们的集群受到影响; 我们失去了networking,导致了停机。
使用2个提供者的标准程序是什么(例如,在欧盟和美国有一个)? 我知道如何做软件复制等智慧。
我想知道当美国人倒闭的时候,数据传送到欧盟networking的方式; DNS是唯一的select吗? 如果是,如何设置? 因为当服务器closures时切换DNS似乎太慢了,除非TTL = 0,这意味着我们将使用DNS作为故障切换系统。 我明白(例如从Serverfault),这不是首选的工作方法。
那么接近100%正常运行时间的解决方法是什么(我们的集群已经有了,但networking没有)。 降低1000个请求将会很好,但更多是不好的,不应该发生。
假设我正确地理解了您的问题,那么如果主要因任何原因而停机,您希望让客户故障转移到辅助数据中心。 一个可以处理这个问题的产品是f5 Networks的BIG-IP全球stream量pipe理器 。 从本质上讲,当检测到中断来开始将客户redirect到次要networking时,它将立即更新你的DNS。
另一个select可能是使用Anycast之类的东西将路由广播到您的数据中心。
为了补充这个问题,我们确实在多个数据中心进行操作,最后决定最好的方法是让工程师根据中断原因手动将DNS指针移动到备用configuration。 最糟糕的情况是,如果一个数据中心完全脱机,我们可能会减less1小时。 但是,当我们必须切换数据中心时,这是与客户的影响相比的(最近的活动在备用位置不可用)。
最后一个select是不依赖于您的数据中心提供给您的IP连接和带宽。 取而代之的是与全球通信服务提供商(如Global Crossing或Level 3)交谈,让他们处理将入站stream量路由到任一数据中心。 风险在于您正在与单个提供商合作,但其好处是可以在其路由选项中更加灵活(您可以在其networking中使用MPLS来进行后端复制,并且也可以使用相同的连接进行公开IM连接)。
本质上,有2种技术可供select(我知道):
因为当服务器closures时切换DNS似乎太慢,除非TTL = 0
您可以将TTL设置为零,但不要期望所有networking都遵守您的设置。 实际上,大约10分钟是TTL的最低值。 当然,这意味着基于DNS的故障转移对于每个客户来说将需要0到10分钟,具体取决于您的caching中的TTL。
降低1000个请求将会很好,但更多是不好的,不应该发生。
据我所知,这仅仅是在今天技术上可行的范围之外。 即使是最大的网站使用基于DNS或任播的技术,并努力保持他们的数据中心接近100%的正常运行时间,因为在全球互联网级别无法实现即时故障切换。
在局域网内部,您可以使用像VMWare VMotion这样的function来切换速度非常快,但这是在您自己的端到端受控局域网上。
我认为 ,全球负载平衡是不切实际的,除了拥有大量技术专长的最大的站点:
免责声明,我想从一个真正的专家谁input全球冗余系统许多次之前input/更正:-)
您也可以查看内容分发networking(例如,Akamai)。 卸载静态内容并将dynamic内容caching到CDN可以显着减less群集上的负载。
特别是Akamai 非常昂贵,但还有其他更便宜的替代品。