很多公共云提供商在日常运营中通常不可避免地遭遇灾难性中断,而IT管理人员需要从云平台的故障和教训中学习,并将其应用到内部基础设施当中。
云平台(尤其是大型公共云平台)具有多种冗余级别,但没有一个平台能够抵御出现的意外停机。云计算平台和数据中心一样,都会遇到导致停机的问题。
数据中心冗余
组织内部部署的硬件故障和软件错误是不可避免的,但公共云为IT管理人员提供了应对这些问题的方法。公共云具有可用性集合、冗余数据中心、可用性区域和云区域,使管理人员能够在遭遇中断时更好地规划业务运营。这些策略很重要,但管理员必须设计可靠的应用程序,以利用公共云冗余功能。
组织IT资产的弹性更多地取决于应用程序而不是基础设施,这种想法与传统的思维方式不同。在过去的二十年中,管理员通过备份、复制和其他以基础设施为中心的技术保持弹性。但是对于绝大多数公共云平台来说,此策略不再有效。
近年来,云计算提供商遭受的损失已超过其承受能力。云计算提供商提供的云服务在出现中断时,行业厂商和用户似乎都在学习如何设计本地云冗余,管理人员希望将这些教训应用于传统的虚拟化数据中心冗余。
重新思考数据中心的冗余
对于大多数传统组织来说,一些基本的服务都是为防止停机而设计的。网络时间协议和网络路由等服务设计通常是高度冗余。然而,仅仅因为系统应该是冗余的,并不意味着其配置已经为利用自然冗余做好了充分准备。
一些核心服务并没有高度可用的选项。IT部门几乎总是面临必须处理的技术债务,这就要求对行为并不理想的遗留系统提供支持。例如,一些遗留的应用程序身份验证系统只能存在于服务器上,这限制了数据中心的冗余功能。
管理人员不应将所有鸡蛋放在一个篮子里。对于大多数的传统部署,最好在数据中心内部使用冗余硬件。管理人员可以通过使用不共享系统的冗余虚拟化群集来进一步采取这种策略,这类似于可以提供多个可用性区域的云计算提供商。这可以使应用程序依赖数据中心更高级别的冗余,但只有当业务需求保证该级别的冗余保护时才有价值。
通过在云平台和数据中心之间并行实施这些策略,在采用类似的传统基础设施时,使用公共云提供商的概念(如可用性区域)可能会有所帮助。这种术语使开发人员能够更轻松地理解基础设施概念,因为他们可能熟悉类似的云概念。
云计算冗余并不完美,停机中断提供了经验教训
高度冗余的系统不会免受性能下降的影响。在最近的公共云中断事件中,其目录服务无法使服务从一个区域保持运行到另一个区域。重新调整的流量超过其他区域的能力,使服务无法满足需求。
当管理人员设计数据中心冗余时,他们必须在发生中断时对负载进行规划。管理人员可能有两台服务器来支持数据中心冗余,但是其中一台服务器可能无法处理整个负载。关键是需要设计满足正常和异常状态下业务需求的系统。
许多组织都认为如果配置正确,在中断期间会发现其他情况。Netflix公司推出的Chaos Monkey系统就是人们所熟知的模拟中断事件,而其提供的经验教训是,如果管理人员没有练习处理实际的中断,他们永远不会知道IT系统将如何反应。而没有一个系统是孤岛,每个应用程序和服务都具有进一步使测试复杂化的依赖性。
停机中断在私有数据中心和公共云中并不罕见,但在数据中心内部,管理人员通常需要了解并理解系统的内部工作方式。当云计算提供商的服务出现中断时,可能会感到并没有从停机中学到什么教训,但这不是事实。虽然公共云提供商使用与传统数据中心不同的工具和方法,但有关构建和调整冗余的经验教训是通用的。