REL07-BP02 在检测到对工作负载的破坏时获取资源
如果可用性受到影响,在必要时被动扩展资源,从而还原工作负载的可用性。
首先,您必须配置运行状况检查和关于此类检查的标准,表示在什么时候可用性会因缺少资源而受到影响。然后,通知适当的人员手动扩展资源,或启动自动化以对其进行自动扩展。
可以根据工作负载手动调整资源规模(例如,通过 AWS Management Console 或 AWS CLI 更改自动扩缩组中 EC2 实例的数量,或者修改 DynamoDB 表的吞吐量)。但是,应尽量采用自动化技术(请参阅在获取或扩展资源时利用自动化)。
期望结果:在检测到故障或客户体验降级时,启动扩缩活动(自动或手动)来恢复可用性。
在未建立这种最佳实践的情况下暴露的风险等级:中
实施指导
对工作负载中的所有组件实施可观测性和监控,以监控客户体验并检测故障。定义用于扩展所需资源的手动或自动程序。有关更多信息,请参阅 REL11-BP01 监控工作负载的所有组件以检测故障。
实施步骤
-
定义扩展所需资源的手动或自动程序。
-
扩缩程序取决于工作负载中不同组件的设计方式。
-
扩缩程序还因所使用的底层技术而异。
-
使用 AWS Auto Scaling 的组件可以使用扩缩计划来配置一组用于扩展资源的指令。如果使用 AWS CloudFormation 或向 AWS 资源添加标签,则可以根据应用程序为不同的资源集设置扩缩计划。Auto Scaling 提供了针对每个资源的定制扩展策略建议。创建扩缩计划后,Auto Scaling 结合了动态扩缩和预测性扩缩方法来支持扩缩策略。有关更多详细信息,请参阅 How scaling plans work。
-
Amazon EC2 Auto Scaling 可验证您具有正确数量的 Amazon EC2 实例来处理应用程序负载。您可创建 EC2 实例的集合,称为自动扩缩组。您可以指定每个自动扩缩组中的最小和最大实例数,Amazon EC2 Auto Scaling 会确保您的组永远不会低于或超过这些限制。有关更多详细信息,请参阅 What is Amazon EC2 Auto Scaling?
-
Amazon DynamoDB Auto Scaling 会根据实际的流量模式,使用 Application Auto Scaling 服务代表您动态调整预置的吞吐容量。这样表或全局二级索引可以增加预置读取和写入容量处理突增流量,不会受到限制。有关更多详细信息,请参阅使用 DynamoDB Auto Scaling 自动管理吞吐能力。
-
-
资源
相关最佳实践:
相关文档: