REL12-BP05 定期进行 GameDay 活动 - AWS Well-Architected 框架

REL12-BP05 定期进行 GameDay 活动

安排 GameDay 来定期练习旨在应对影响工作负载的事件和损害的过程。让负责处理生产场景的团队参与进来。这些练习有助于强制实施相关措施,来防止生产事件对用户造成影响。当您在现实条件下实践响应过程时,可以在实际事件发生之前发现并解决任何差距或弱点。

GameDay 活动会模拟类似于生产的环境中的事件,以便测试系统、流程和团队的响应。其目的是执行团队在实际发生事件时会执行的相同操作。这些练习有助于您了解可以从哪些方面作出改进,并有助于培养组织在处理各种事件和损害方面的经验。这些练习应该定期开展,这样,团队就知道如何建立根深蒂固的应对习惯。

GameDay 可让团队做好准备,以便更充满信心地处理生产事件。经过良好练习的团队更有能力快速检测和应对各种场景。这可以显著改善就绪状态和韧性态势。

期望结果:您在一致、有计划的基础上运行韧性 GameDay。这些 GameDay 被视为业务运营中正常和预期的组成部分。您的组织已经建立了备灾文化,当出现生产问题时,团队已经做好了充分的准备,可以有效地做出响应,高效地解决问题并减轻对客户的影响。

常见反模式:

  • 您记录过程,但从不练习这些过程。

  • 您不让业务决策者参与测试练习。

  • 您开展了 GameDay,但没有通知所有相关的利益相关者。

  • 您只关注技术故障,但不涉及业务利益相关者。

  • 您未将从 GameDay 中吸取的经验教训纳入恢复过程。

  • 您将失败或错误归咎于团队。

建立此最佳实践的好处:

  • 增强响应技能:在 GameDay,团队在模拟的事件中练习其职责并测试其沟通机制,从而在生产环境中做出更加协调和高效的响应。

  • 识别和解决依赖关系:复杂的环境通常涉及各种系统、服务和组件之间错综复杂的依赖关系。GameDay 有助于您识别和解决这些依赖关系,并验证运行手册过程是否正确涵盖了关键系统和服务,以及是否可以及时纵向扩展或恢复这类系统和服务。

  • 培养韧性文化:GameDay 有助于培养组织内部的韧性思维。当您让跨职能团队和利益相关者参与时,这些练习可以提高整个组织对韧性重要性的认识、协作和共同理解。

  • 持续改进和适应:定期的 GameDay 有助于您不断评测和调整韧性策略,从而使这些策略在不断变化的环境中保持相关性和有效性。

  • 增强对系统的信心:成功的 GameDay 有助于您树立信心,确信系统能够承受中断并从中恢复。

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

实施指导

设计并实施了必要的韧性措施后,请开展 GameDay 来验证生产中的一切是否按计划进行。GameDay,尤其是第一个 GameDay,应让所有团队成员都参与,并应事先向所有利益相关者和参与者告知日期、时间和模拟场景。

在 GameDay 期间,参与的团队会根据规定的过程模拟各种事件和潜在的场景。参与者密切监控和评测这些模拟事件的影响。如果系统按设计运行,则应激活自动检测、扩展和自我修复机制,且对用户几乎没有影响。如果团队观察到任何负面影响,他们就会回滚测试,并通过相应运行手册中记载的自动手段或手动干预来纠正已发现的问题。

要持续提高韧性,记录和吸取经验教训至关重要。该过程是一个反馈循环,它系统化地从 GameDay 捕获见解,并使用这些见解来增强系统、流程和团队能力。

为协助您重现系统组件或服务可能意外出现故障的现实场景,请将模拟故障作为 GameDay 练习注入。团队可以在受控的环境中测试其系统的韧性和容错能力,并模拟其事件响应和恢复流程。

借助 AWS,可以使用基础设施即代码,通过生产环境的副本来开展 GameDay。通过此过程,可以在与生产环境非常相似的安全环境中进行测试。考虑使用 AWS Fault Injection Service来创建不同的故障场景。使用诸如 Amazon CloudWatchAWS X-Ray 之类的服务来监控 GameDay 期间的系统行为。使用 AWS Systems Manager 来管理和运行行动手册,并使用 AWS Step Functions 来编排重复出现的 GameDay 工作流程。

实施步骤

  • 制定 GameDay 计划:制定结构化计划来定义 GameDay 的频率、范围和目标。让关键利益相关者和主题专家参与规划和实施这些练习。

  • 为 GameDay 做好准备:

    1. 确定主要的业务关键服务,这些服务是 GameDay 的重点。对支持这些服务的人员、流程和技术进行编目和映射。

    2. 制定 GameDay 的日程,让相关团队做好参与事件的准备。准备好自动化服务来模拟计划的场景并运行相应的恢复流程。诸如 AWS Fault Injection ServiceAWS Step FunctionsAWS Systems Manager 等 AWS 服务有助于您自动实施 GameDay 的各个方面,例如注入故障和启动恢复操作。

  • 运行模拟:在 GameDay,运行计划的场景。观察并记录人员、流程和技术对模拟事件的反应。

  • 开展练习后回顾:GameDay 结束后,召开回顾会议来回顾所吸取的教训。确定需要改进的领域以及改善运营韧性所需的任何措施。记录您的调查发现,并跟踪任何必要的更改,来增强韧性策略和完成准备工作。

资源

相关最佳实践:

相关文档:

相关视频:

相关示例: