PERF02-BP05 利用可用的资源弹性 - AWS Well-Architected Framework

PERF02-BP05 利用可用的资源弹性

云让您能够通过各种机制灵活地动态扩展和缩减资源,以便满足不断变化的需求。将这种弹性与计算相关指标相结合,工作负载可以自动响应更改,以使用所需的资源,并且仅使用所需的资源。

常见反模式:

  • 为了涵盖可能的峰值而过度预置。

  • 通过手动增加容量来对警报作出反应。

  • 增加容量而不考虑预置时间。

  • 在扩展事件之后,您将保留增加的容量,而不是缩减容量。

  • 监控的指标不直接反映工作负载的真实需求。

建立此最佳实践的好处:需求可以固定、可变、遵循一种模式或突增。实现供需匹配能够尽可能降低工作负载的成本。监控、测试和配置工作负载弹性可优化性能、节省成本以及在使用需求变化时提高可靠性。尽管也可以通过手动方法实现此目标,但在更大规模上这么做是不切实际的。基于指标的自动化方法可确保资源在任何给定时间满足需求。

在未建立这种最佳实践的情况下暴露的风险等级:中等

实施指导

应使用基于指标的自动化来利用弹性,目标是让您拥有的资源供应与工作负载所需的资源需求相匹配。例如,您可以使用 Amazon CloudWatch 指标来监控资源,或使用 Amazon CloudWatch 指标来监控 Auto Scaling 组。

结合与计算相关的指标,工作负载可以自动响应这些变化,并利用一系列最优的资源来实现其目标。您还必须为预置时间和潜在的资源缺乏做好计划。

实例、容器和函数都能够作为服务的一项功能、以 Application Auto Scaling 的形式或与 Amazon EC2 Auto Scaling 相结合来提供可实现弹性的机制。在架构中利用弹性,可确认您有足够的容量来满足各种使用规模的性能要求。

验证您的指标是否可以根据所部署的工作负载类型来扩展或缩减弹性资源。例如,如果您正在部署一个视频转码应用程序,CPU 利用率预计为 100%,并且不应将此作为您的主要指标。或者,您也可以衡量等待缩放您的实例类型的转码作业的队列深度。

工作负载部署需要处理扩展事件和缩减事件。安全地缩减工作负载组件,与在需要时扩展资源同样重要。

创建扩缩事件的测试方案,以确认工作负载按预期方式运行。

实施步骤

资源

相关最佳实践:

相关文档:

相关视频:

相关示例: