REL11-BP01 监控工作负载的所有组件以检测故障 - AWS Well-Architected Framework

REL11-BP01 监控工作负载的所有组件以检测故障

持续监控您的工作负载的运行状况,以便您和您的自动化系统立即发现任何性能下降或故障情况。监控基于商业价值的关键性能指标(KPI)。

所有恢复和修复机制必须从快速检测问题的能力入手。首先,应该检测技术故障并加以解决。不过,可用性基于您的工作负载创造商业价值的能力,因此衡量它的关键性能指标(KPI,Key Performance Indicator)需要成为您的检测和补救策略一部分。

常见反模式:

  • 由于未配置警报,因此在发生中断时不会进行通知。

  • 虽然存在警报,但只有在达到阈值时才会发出警报,导致没有足够的响应时间。

  • 收集指标的频率不够高,无法满足恢复时间目标(RTO)。

  • 只有面向客户的工作负载层才会受到主动监控。

  • 只收集技术指标,不收集业务功能指标。

  • 没有衡量工作负载用户体验的指标。

建立此最佳实践的好处: 如果您在所有层面都设置了适当的监控,则可以通过减少检测时间来减少恢复时间。

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

实施指导

  • 根据恢复目标确定您的组件的收集间隔。

    • 您的监控间隔取决于您必须实现的恢复速度。您的恢复时间取决于恢复所需的时间,因此您在确定收集频率时,必须考虑此时间和恢复时间目标(RTO)。

  • 为组件配置详细监控。

  • 创建自定义指标来测量业务关键性能指标(KPI,Key Performance Indicator)。工作负载实现关键业务功能。这些功能应用作 KPI 来帮助在发生间接问题时确定这些问题。

  • 使用用户金丝雀来监控用户的故障体验。可以运行综合事务测试(又称为“金丝雀测试”,但不要和金丝雀部署相混淆)模拟客户的行为,这是最重要的测试流程之一。从不同的远程位置针对您的工作负载端点持续地运行此类测试。

  • 创建跟踪用户体验的自定义指标。如果您可以衡量客户体验,就可以确定发生了客户体验下降。

  • 设置告警,以在检测到工作负载未正常运行时发出告警,并指示什么时候对资源进行弹性伸缩。告警可以显示在控制面板上,可通过 Amazon SNS 或电子邮件发送提醒,并使用 Auto Scaling 来纵向扩展或缩减工作负载的资源。

  • 创建控制面板以可视化形式呈现指标。可以使用控制面板直观地查看趋势、离群值和表示其他潜在问题的指标,或者提供您可能需要进行调查的问题的指示。

资源

相关文档:

相关示例: