本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
教程:安排定期实验
随着 AWS 故障注入服务 (AWS FIS),你可以对你的设备进行故障注入实验 AWS 工作负载。这些实验运行在模板上,其中包含要在指定目标上运行的一项或多项操作。当你还使用时 Amazon EventBridge,您可以将实验安排为一次性任务或重复任务。
使用本教程来创建运行 EventBridge 的时间表 AWS FIS每 5 分钟生成一次实验模板。
先决条件
在开始本教程之前,必须有一个 AWS FIS你想按计划运行的实验模板。如果您已经有可用的实验模板,请记下模板 ID 和 AWS 区域。 否则,您可以按照中的说明创建模板教程:使用停止和启动测试实例 AWS FIS,然后返回本教程。
步骤 1:创建IAM角色和策略
创建IAM角色和策略
打开IAM控制台,网址为https://console.aws.amazon.com/iam/
。 -
在左侧的导航窗格中,选择角色,然后选择创建角色。
-
选择 “自定义信任策略”,然后插入以下片段以允许 Amazon EventBridge 安排者代表您担任该角色。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "scheduler.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
选择下一步。
-
在添加权限下,选择创建策略。
-
选择 JSON,然后插入以下策略。更换
your-experiment-template-id
使用先决条件步骤中实验的模板 ID 的值。{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "fis:StartExperiment", "Resource": [ "arn:aws:fis:*:*:experiment-template/
your-experiment-template-id
", "arn:aws:fis:*:*:experiment/*" ] } ] }您可以将调度程序限制为仅运行 AWS FIS具有特定标签值的实验模板。例如,以下策略授予所有人的
StartExperiment
权限 AWS FIS实验,但限制调度器只能运行带有标签的实验模板。Purpose=Schedule
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "fis:StartExperiment", "Resource": "arn:aws:fis:*:*:experiment/*" }, { "Effect": "Allow", "Action": "fis:StartExperiment", "Resource": "arn:aws:fis:*:*:experiment-template/*", "Condition": { "StringEquals": { "aws:ResourceTag/Purpose": "Schedule" } } } ] }
选择下一步:标签。
-
选择下一步:审核。
-
在查看策略下,命名策略
FIS_RecurringExperiment
,然后选择创建策略。 -
在添加权限下,为您的角色添加
FIS_RecurringExperiment
新策略,然后选择下一步。 -
在命名、检查并创建下,命名角色
FIS_RecurringExperiment_role
,然后选择创建角色。
步骤 2:创建一个 Amazon EventBridge 调度器
要创建 Amazon EventBridge 调度器
打开 Amazon EventBridge 控制台,网址为https://console.aws.amazon.com/events/
。 -
在左侧导航窗格中,选择计划。
-
确认你在同一个地方 AWS 区域 作为你的 AWS FIS实验模板。
-
选择创建计划,然后填写以下内容:
在计划名称下,插入
FIS_recurring_experiment_tutorial
。在计划模式下,选择定期计划。
在计划类型下,选择基于速率的计划。
在 Rate 表达式下,选择 5 分钟。
在灵活时间窗口下,选择关闭。
(可选)在时间范围下,选择您的时区。
选择下一步。
-
在 “选择目标” 下,选择 “全部”APIs,然后搜索 AWS FIS.
-
选择 AWS FIS,然后选择StartExperiment。
-
在 “输入” 下,插入以下JSON有效负载。更换
your-experiment-template-id
带有实验模板 ID 的值。ClientToken
是调度器的唯一标识符。在本教程中,我们使用的是允许的上下文关键字 Amazon EventBridge 调度器。有关更多信息,请参阅 Amazon EventBridge 用户指南中的添加上下文属性。{ "ClientToken": "<aws.scheduler.execution-id>", "ExperimentTemplateId": "
your-experiment-template-id
" }选择下一步。
-
(可选)在 “设置” 下,您可以设置重试策略、死信队列 (DLQ) 和加密设置。您也可以保留默认值。
-
在权限下,选择使用现有角色,然后搜索
FIS_RecurringExperiment_role
。 -
选择下一步。
在查看并创建计划下,查看调度器的详细信息,然后选择创建计划。
步骤 3:验证实验
为了验证你的 AWS FIS实验按计划进行
打开 AWS FIS控制台位于https://console.aws.amazon.com/fis/
。 -
在左侧导航窗格中,选择实验。
-
创建计划五分钟后,您会看到正在运行的实验。
步骤 4:清除
要禁用你的 Amazon EventBridge 调度器
打开 Amazon EventBridge 控制台,网址为https://console.aws.amazon.com/events/
。 -
在左侧导航窗格中,选择计划。
-
选择新创建的调度器,然后选择禁用。