你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
混沌试验
在 Azure Chaos Studio 中,可以创建并运行混沌试验。 混沌试验是一种 Azure 资源,用于描述应该运行的故障,以及应该针对哪些资源运行这些故障。
试验分为两个部分:
选择器:选择器是具有故障或针对它们运行的其他操作的目标资源组。 选择器使你能够对资源进行逻辑分组,以便在多个操作之间重复使用。
例如,你可能有一个名为
AllNonProdEastUSVMs
,并在其中添加了美国东部的所有非生产虚拟机的选择器。 随后,可以引用该选择器先将 CPU 压力应用到这些虚拟机,然后再对它们应用虚拟内存压力。逻辑:试验的其余部分描述如何以及何时运行故障。 试验被整理成一个接一个运行的步骤。 每一步骤都有一个或多个同时运行的分支。 凭借步骤和分支,可以在环境中的资源间并行注入多个故障。
每个分支都包含一个或多个操作,这可能是要运行的故障或时间延迟。 故障是导致一些中断的操作。 大多数故障采用一个或多个参数,例如运行故障的持续时间或要应用的压力量。
跨订阅和跨租户试验
混沌试验是部署到订阅、资源组和区域的 Azure 资源。 可以使用 Azure 门户或 Chaos Studio REST API 来创建、更新、启动、取消和查看试验的状态。
混沌试验可以针对与试验不同的订阅中的资源,只要该订阅位于同一 Azure 租户中即可。 混沌试验可以针对与试验不同的区域中的资源,只要该区域是 Chaos Studio 支持的区域即可。
记录混沌试验
可以随时间推移跟踪和修改混沌试验过程的几个关键方面。 一种方法是在 Azure Boards 或 GitHub Projects 中使用工作项。 通过为每个实验创建专用工作项,可以按结构化方式跟踪试验的详细信息、进度和结果。 本文档可以包含如试验目的、预期结果、后续步骤、所涉及的资源以及从试验中观察到的或了解到的任何信息。
项 | 详细信息 |
---|---|
假设 | 定义试验的目标和预期结果 |
目标作用域 | 确定系统哪个部分(例如网络、数据库、应用程序层)将会受到混乱试验的影响。 |
持续时间 | 指定混沌试验的时间范围。 |
目标 | 确定系统中的特定目标或组件。 |
环境 | 定义试验是会在生产、暂存还是开发环境中执行。 |
观测结果 | 记录在试验期间观察到的任何数据或行为。 |
结果 | 汇总试验的发现和结果。 |
操作项 | 列出要根据结果执行的任何拟办事项或步骤。 |
假设是混沌试验的关键方面,因为它定义了试验的目标和预期结果。 它有助于测试系统有效处理意外中断的能力。 通过制定明确的假设,可以将试验集中在系统的特定领域,并收集有意义的数据来评估其复原能力。 利用 Azure Boards 或 GitHub Projects 的功能,可以与团队协作、分配任务、设置截止日期,并跟踪混沌工程计划的总体进度。
后续步骤
现在,你已了解什么是混沌试验,可以: