如何最小化云宕机事件的影响
发布时间:2024-11-14 22:19:32点击:
与一般流行的看法正好相反,云服务实际上比内部数据中心设施的故障率更高。云计算并不是天生就是不可靠的,但是如同所有的IT形式一样,必须仔细挑选和管理云服务以实现特定的可靠性和可用性目标。这些步骤可以是合同形式的、是技术形式的或者甚至可能需要重新思考你的应用程序架构。如果没有经过慎重考虑,那么你从云计算中的收益可能要少于你的预期。
SLA降低了使用云厂商数据中心而产生的风险
免受云宕机事件影响的第一步就是要评估云厂商数据中心的可靠性。大部分的云厂商都拥有着很少数量的数据中心,通常情况下只有一个,而这些数据中心易于产生与企业相同类型的故障。最广为人知的云计算故障往往是那些整个云计算数据中心发生故障的事件,通常都是由于自然灾害而发生的故障。为了在有可能发生的故障中保护好你自己,你必须要求特定的数据中心配置信息或从你的供应商那里获得可用性保证。
对于服务器、存储设备和网络的可用性,最好的策略是在谈判时就确定SLA,以便于指定可用性保证和发生故障时恢复服务的时间。用户应当了解在云计算数据中心所在的区域是否会经常发生诸如飓风或暴风雪这样的灾害性天气,这一点是非常重要。同时,还应确定数据中心是否配有备用电源,是否配有一个能够接替正常工作的备用数据中心。
备份数据中心必须位于不同于主数据中心的另一区域,所以它就不会受到相同问题的影响,同时它还必须拥有足够的容量以处理云应用的故障转移。由于很少有供应商能够为主数据中心的100%故障转移提供足够的备份数据中心容量,所以SLA将说明如何管理故障转移。
在这种情况下,为优先级支付费用可能是必要的。如果你的云服务包括了地理多样性以支持分布式的用户群体,那么你自己的各种设施就可以为云厂商故障提供某些保护措施;仔细检查你的合同以确保有足够的容量来处理额外的负载。
网络性能问题或缺少将导致云宕机事件
云计算故障的最常见原因通常并不是云计算,而是网络。大部分的云应用都是通过互联网进行访问的,而互联网可用性则是大多数云宕机事件的罪魁祸首。解决这个问题的唯一方法就是采用虚拟私有网络(VPN)或虚拟局域网服务,或确保同时让多个互联网服务供应商(ISP)提供服务以供网站访问云应用使用。如果安全性和合规性问题可以得到解决,并得到供应商的合同确认,那么这是一个很不错的选择。除非云厂商已经使用了运营商提供的VPN服务,否则很可能需要你支付一笔特殊费用。
随着小型企业的互联网服务成本不断下降,为一个分支办公室提供两个ISP就成为可能。但是,请确保在两个办公室之间没有共同的故障点。通常,可在多个供应商之间共享对等点和共享互连“酒店”。即使是ISP之间最普通的访问布线,也有可能使双网络连接的好处落空。
必须解决云应用的弹性问题
如果云计算数据中心和云计算网络故障问题都已解决,那么下一个问题就是应用程序本身的弹性问题了。管理高可用性和云服务的最大问题都涉及数据库访问和可靠的事务处理。
如果一个数据中心发生故障,即便另一个备用数据中心能够备份使用这些数据的应用程序,在数据中心中所存储的数据都是不可用的。除非是在多个位置的“热待机”状态维护应用程序数据,否则一次故障都将导致数据访问丢失,从而使其它冗余措施都大部分实效。这个问题同样也存在于内部数据中心备份,因此那些为他们自己数据中心提供冗余的企业会发现相同的措施在云计算中也会同样有效。与其说这是个技术策略还不如说这是个金融策略;由于云计算存储和服务费用的原因,在云计算中维护冗余数据的成本要更高。一个更好的解决方案是把你所有的内部数据都布署在一个高可用性的受保护数据中心中,并从多个云计算位置进行访问。
最好的可用性管理必须是与应用程序本身集成。任何时候,数据库更新都是对多个副本同时进行的,如果在更新过程中发生了故障,那么数据完整性就存在着丢失的风险。联机事务处理系统通常包括一个“两阶段提交”的过程以确保不会由于无法成功更新所有数据库副本而发生问题。有时,单个数据库的更新也会因为网络故障而处于一个不确定的状态。有必要审查专为确保网络故障或数据中心故障而开发的应用程序,从而确保所存储的数据库不会发生数据受损或不一致的风险。
期望云应用能够具有比内部应用相同或更高的可靠性是不合理的。此外,你所设定的可靠性和特定目标可能会让你花费很多。当构建你的业务案例时,请记得考虑可靠性成本,或者你可能会发现你的应用程序必须在可靠性和成本之间作出某种妥协。