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

Amazon Systems Manager Change Manager 不再向新客户开放。现有客户可以继续正常使用该服务。有关更多信息,请参阅 Amazon Systems Manager Change Manager 可用性变更

注册不含目标的维护时段任务

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

必须为维护时段 Systems Manager Run Command 类型任务指定一个或多个目标。根据任务的性质,目标对于其他维护时段任务类型(Systems Manager 自动化、Amazon Lambda 和 Amazon Step Functions)是可选的。

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

注意

当任务注册了目标时,Automation、Amazon Lambda 和 Amazon Step Functions 任务会从资源组和标签解析目标,并为每个已解析的资源发送一次调用,这会导致多次任务调用。但是,举例来说,您只想对在包含多个实例的资源组中注册的 Lambda 任务进行一次调用。在这种情况下,如果您正在使用Amazon Web Services 管理控制台,请在注册 Lambda 任务编辑 Lambda 任务页面中选择任务目标不是必需的选项。如果使用 Amazon CLI 命令,则在运行 register-task-with-maintenance-window 命令或 update-maintenance-window-task 命令时,请勿使用 --targets 参数指定目标。

在许多情况下,您无需为自动化任务明确指定目标。例如,假设您要创建 自动化 类型的任务,以使用 AWS-UpdateLinuxAmi 运行手册为 Linux 更新 Amazon Machine Image (AMI)。在该任务运行时,已使用最新可用的 Linux 分发版本的程序包和 Amazon 软件更新了 AMI。从 AMI 创建的新实例已经安装了这些更新。由于要更新的 AMI 的 ID 是在运行手册的输入参数中指定的,因此无需在维护时段任务中再次指定目标。

同样,假设您正在使用 Amazon Command Line Interface (Amazon CLI) 注册使用 Amazon-RestartEC2Instance 运行手册的维护时段 Automation 任务。由于要重启的节点是在 --task-invocation-parameters 参数中指定,您也无需指定 --targets 选项。

注意

对于没有指定目标的维护时段任务,您无法为 --max-errors--max-concurrency 提供值。作为替代方式,系统会插入一个占位符值 1,该值可能会在响应诸如 describe-maintenance-window-tasksget-maintenance-window-task 等命令时发出报告。这些值不会影响任务的运行,并且可以忽略。

以下示例演示了为无目标维护时段任务省略 --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 控制台或 update-maintenance-window-task Amazon CLI 命令删除目标。