注册没有目标的维护时段任务 - Amazon Web Services Systems Manager
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

注册没有目标的维护时段任务

对于您创建的每个维护窗口,您可以指定在维护窗口运行时要执行的一个或多个任务。在大多数情况下,您必须指定要运行任务的资源或目标。但是,在某些情况下,无需在任务中显式指定目标。

必须为维护窗口 Systems Manager 运行命令类型任务指定一个或多个目标。根据任务的性质,目标对于其他维护窗口任务类型(Systems Manager 自动化、Amazon Lambda, 和Amazon Step Functions)。

对于 Lambda 和 Step Functions 任务类型,是否需要目标取决于您创建的函数或状态机的内容。

在许多情况下,无需显式指定自动化任务目标。例如,假设您正在创建一个自动化类型的任务来更新Amazon Machine Image(AMI),使用AWS-UpdateLinuxAmi运行手册。当任务运行时,AMI已使用最新的 Linux 分发程序包和 Amazon 软件更新。新实例从AMI已经安装了这些更新。由于AMI在 Runbook 的输入参数中指定,则无需在维护窗口任务中再次指定目标。

同样,假设您正在使用Amazon命令行界面 (AmazonCLI) 注册使用文档的维护窗口自动化任务Amazon-RestartEC2Instance。因为要重新启动的实例是在--task-invocation-parameters参数,您不需要同时指定--targets选项。

注意

对于没有指定目标的维护窗口任务,您无法为--max-errors--max-concurrency。相反,系统会插入一个占位符值1,这可能会在响应命令(例如描述维护时段任务获取维护时段任务。这些值不会影响任务的运行,因此可以忽略。

以下示例演示了省略--targets--max-errors, 和--max-concurrency选项来执行无目标维护时段任务。

Linux & macOS
aws ssm register-task-with-maintenance-window \ --window-id "mw-ab12cd34eEXAMPLE" \ --service-role-arn "arn:aws:iam::123456789012:role/MaintenanceWindowAndAutomationRole" \ --task-type "AUTOMATION" \ --name "RestartInstanceWithoutTarget" \ --task-arn "AWS-RestartEC2Instance" \ --task-invocation-parameters "{\"Automation\":{\"Parameters\":{\"InstanceId\":[\"i-02573cafcfEXAMPLE\"]}}}" \ --priority 10
Windows
aws ssm register-task-with-maintenance-window ^ --window-id "mw-ab12cd34eEXAMPLE" ^ --service-role-arn "arn:aws:iam::123456789012:role/MaintenanceWindowAndAutomationRole" ^ --task-type "AUTOMATION" ^ --name "RestartInstanceWithoutTarget" ^ --task-arn "AWS-RestartEC2Instance" ^ --task-invocation-parameters "{\"Automation\":{\"Parameters\":{\"InstanceId\":[\"i-02573cafcfEXAMPLE\"]}}}" ^ --priority 10
注意

对于 2020 年 12 月 23 日之前注册的维护时段任务:如果为任务指定了目标,但不再需要目标,则可以更新该任务以使用 Systems Manager 控制台或更新维护时段任务 AmazonCLI 命令。

相关内容

错误消息:“没有目标的维护窗口任务不支持 MaxConcurrency 值” 和 “没有目标的维护窗口任务不支持 MaxErrors 值”