Date: 9月 15, 2023
如何保护云平台中的应用程序
云平台仅保护应用程序免受因硬件故障导致的停机。任务关键型应用程序需要 HA/DR 保护,无论其在何种云环境中运行。
在提供高可用性保护时,一般原则是确保所有组件都是冗余的,以避免单点故障 (SPOF)。也就是说,确保没有任何一个元素在发生故障时导致整个系统停止。然而,值得注意的是,运营基础设施很难在公共云中访问。
在基于云的高可用性集群中,备用节点有可能位于同一主机服务器上、同一机架中,并使用与操作节点相同的网络交换机。除非您对这些元素进行冗余配置,否则它们中的任何一个都可能出现 SPOF,并使应用程序面临灾难性故障的风险。
有必要确保集群节点位于不同的云“区域”和“可用区”,这些云“区域”和“可用区”在物理上将不同地理位置的数据中心和运营基础设施分开。
确保云可用性的主要原则是什么?
随着部件磨损、系统不兼容以及设置发生变化,您不能指望构成物理 IT 基础设施的各种组件永远按照规范运行。尽管定期维护可以降低停机风险,但在产品生命周期中很可能会出现某些故障。
在极少数情况下,操作系统或嵌入式软件中可能存在潜在的严重错误,导致应用程序停止工作。
您可能已经注意到,HA集群配置正是符合这个原则,通过将重要服务器及其资源冗余到主用系统(生产系统)来消除单点故障。但是,请务必记住两件事:1. 服务器硬件不是唯一的关键组件,2. 在公共云基础设施中,您可能看不到其他关键的 SPOF 组件。
谨防隐藏在云隐形基础设施中的单点故障陷阱
大多数公共云以所谓的“多租户”模式运行。也就是说,他们在同一台物理主机服务器上运行多个公司的虚拟机。通过常规合同,您无法指定系统在哪个主机服务器上运行。这可能会导致问题,如
云集群中的备用节点可以放置在运行活动节点的同一主机服务器上。即使您配置了HA集群配置,如果主服务器宕机,运行节点和备用节点也会宕机。在这种情况下,您的云运营商将决定何时以及如何恢复您的系统。
运行主节点的主机服务器和运行备用节点的主机服务器可以位于同一机架中。在这种情况下,该机架就成为单点故障,因此如果该机架发生故障,其下的主备节点也会发生故障。
此外,在基础设施的上层,例如捆绑多个机架的网络交换机、网关和路由器以及数据中心的电源单元,操作系统节点和备用系统节点可能共存于同一系统中,并且如果这些关键如果组件不是冗余的,那么就会出现不可避免的单点故障。同样,对于公有云用户的公司来说,这样的数据中心基础设施是一个黑匣子,可能无法查看详细配置来识别 SPOF。
应利用公共云可用区和区域来提高可用性
如何明确避免公有云中隐藏的单点故障?最稳健的方法是使用云端准备的“可用区”和“区域”。
可用区是数据中心内基础设施的独立物理隔离。区域是地理上分开的独立数据中心。公共云允许您有意将这些可用区或区域用于不同的目的。
通过构建运行节点和备用节点分布在这两个或多个区域的不同可用区的 HA 集群配置,几乎所有的 SPOF 都可以避免。如果您坚持这些最佳实践,您就可以自信地确保可用性、灾难恢复(灾难恢复)和 BCP(业务连续性计划)。
经许可转载安全操作系统