什么是高可用性?

高可用性(HA)是指系统持续运行而不会停机或发生故障的能力,通常通过使用内置的故障转移机制。 高可用性系统旨在即使发生意外事件也能顺利运行。

高可用性为何如此重要

HA 的主要目标是避免停机,即系统、服务、应用、云服务或功能不可用或无法正常运行的时间段。 停机会导致收入损失、生产力下降和公司声誉受损。 这使得 HA 对于以下方面非常重要:

  • 业务连续性——HA 确保关键系统、特性和功能始终按预期运行。 HA 系统能够快速从故障中恢复,因此组织可以按预期继续为客户提供服务(最好没有明显的中断)。
  • 改善用户体验——快速可靠的系统有助于保持客户满意度并避免收入损失、数据泄露和生产力下降造成的负面影响。
  • 竞争优势——高水平的可用性有助于组织脱颖而出,提供比竞争对手更快、更可靠的服务。 这表明了对整体质量和客户满意度的承诺。

高可用性类型

HA 有多种类型,可以根据所需的冗余级别、所需的容错类型以及受保护的系统类型进行分类。 最常见的 HA 类型包括:

  • 主动-被动——备份系统保持在被动或待机模式,只有当主系统出现故障时才会变为主动模式。 这种故障转移保护方法有时需要手动干预才能切换到备份系统。
  • 主动-主动 – 多个系统主动运行并分担工作负载。 如果一个系统出现故障,其他系统会自动承担工作负载。 这种类型的 HA 需要系统间更复杂的配置和协调,但比手动选项提供了更好的性能和可扩展性。

该图显示了两个 NGINX Plus 服务器的主动-被动 HA 集群。 NGINX还支持主动-主动和其他HA配置

 

 

图表

高可用性如何实现?

冗余和故障转移机制可防止单点故障,使得组件的故障不会干扰整个系统、应用或功能的运行。 常见机制包括:

  1. 冗余组件——在系统内部署多个服务器、网络连接、存储系统和电源。 如果一个组件发生故障,另一个组件可以接管而不会造成中断。
  2. 监控和警报——持续监控性能和可用性。 当检测到停电或其他问题时,就会生成警报。 系统管理员可以快速识别并解决任何问题,从而降低停机风险。
  3. 负载均衡——一个或多个专用服务器拦截针对一组(后端)系统的请求,并在它们之间分配流量以获得最佳性能。 如果一个后端系统出现故障,负载均衡器会自动将传入的请求重定向到其他系统。
  4. 故障转移机制——部署主动-被动或主动-主动配置或故障转移群集,以确保一个系统发生故障时,另一个系统可以以最小的干扰接管。
  5. 备份和恢复系统——确保发生故障时能够快速恢复数据和应用。 这些系统可以是混合的、位于不同位置的、基于云的、或者在发生故障后可以快速上线。

如何支持高可用性

为提供 HA 而需要部署的服务和资源取决于系统的类型、HA 的类型以及组织的具体要求。 支持元素包括:

  • 技术支持——对于需要 HA 系统帮助的组织来说,这是第一道防线。 专门的支持人员可以协助排除故障、诊断和解决问题。 他们还可以提供有关维持高可用性的最佳实践的指导。
  • 维护和升级——为了保持运行和安全,HA 系统必须定期维护并运行最新版本的可用软件。
  • 灾难恢复规划——对于需要快速恢复系统的组织来说至关重要。 预先确定和记录的程序意味着系统管理员不需要在紧急情况下记住或想出解决方案。
  • 文档和培训 – 帮助系统管理员了解如何管理他们的 HA 系统。 该文档可能包括最佳实践、教程和培训课程。

最佳实践: 高可用性

遵循最佳实践可提高运营绩效并最大限度地减少代价高昂的停机时间。 这些常见的最佳实践可以根据组织的系统、位置和期望结果进行定制。

  • 结合冗余——系统的每个级别,从硬件组件到网络连接,都得到加固,因此如果一个组件出现故障,系统仍能按预期运行。
  • 负载平衡流量——通过在多个系统之间分配传入请求,当一个系统出现故障时,您可以让仍在运行的系统接管。
  • 监控性能和可用性——持续监控和警报可减少识别和解决问题所需的时间。
  • 经常测试和验证故障转移机制——定期测试以确定故障转移机制在发生中断时是否仍然能够可靠地接管功能。
  • 备份和恢复程序——确保在发生故障时能够快速恢复数据和应用。
  • 定期升级和维护系统——这可保证应用和系统的运行和安全。
  • 培训人员——定期测试和强化程序需要成为标准操作程序,特别是对于负责 HA 的个人和团队。
  • 考虑云解决方案——云存储和灾难恢复意味着无论故障发生在何处,系统都可以继续运行。
  • 监控安全性——采取措施防止数据泄露或不良行为者或未经授权的用户访问系统。