为维护时段分配任务(控制台) - Amazon Systems Manager
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

为维护时段分配任务(控制台)

在此过程中,您向维护时段添加任务。任务是在维护时段运行时执行的操作。

以下四种类型的任务可以添加到维护时段:

  • Amazon Systems Manager Run Command 命令

  • Systems Manager 自动化 工作流

  • Amazon Step Functions 任务

  • Amazon Lambda 函数

    重要

    Maintenance Windows 的 IAM policy 要求您将前缀 SSM 添加到 Lambda 函数(或别名)名称。继续注册此类型的任务之前,请在 Amazon Lambda 中更新其名称,以包含 SSM。例如,如果您的 Lambda 函数名称为 MyLambdaFunction,请将其更改为 SSMMyLambdaFunction

为维护时段分配任务
  1. 访问 https://console.aws.amazon.com/systems-manager/,打开 Amazon Systems Manager 控制台。

  2. 在导航窗格中,选择 Maintenance Windows

  3. 在维护时段列表中,选择一个维护时段。

  4. 选择 Actions (操作),然后选择您要注册到维护时段的任务的类型对应的选项。

    • 选择注册 Run command 任务

    • 选择注册 自动化 任务

    • 注册 Lambda 任务

    • 注册 Step Functions 任务

  5. (可选)对于 Name (名称),请输入任务的名称。

  6. (可选)对于描述,输入描述。

  7. 对于 New task invocation cutoff(新任务调用截止),如果您不希望在到达维护时段截止时间后开始任何新任务调用,请选择 Enabled(已启用)。

    如果启用此选项,任务会在到达截止时间后继续运行,并会开始新的任务调用直至完成。

    注意

    启用此选项后,未完成任务的状态为 TIMED_OUT

  8. 在此步骤中,选择所选任务类型的选项卡。

    Run Command
    1. 命令文档列表中,选择定义要运行的任务的 Systems Manager 命令文档(SSM 文档)。

    2. 对于 Document Version (文档版本),选择要使用的文档版本。

    3. 对于 Task priority (任务优先级),指定此任务的优先级。零 (0) 表示最高优先级。维护时段中的任务按优先级顺序计划,具有相同优先级的任务则并行计划。

    Automation
    1. 自动化文档列表中,选择定义要运行的任务的自动化运行手册。

    2. 对于文档版本,选择要使用的运行手册版本。

    3. 对于 Task priority (任务优先级),指定此任务的优先级。零 (0) 表示最高优先级。维护时段中的任务按优先级顺序计划,具有相同优先级的任务则并行计划。

    Lambda
    1. Lambda 参数区域,从列表中选择一个 Lambda 函数。

    2. (可选)提供您想要包括的 Payload(有效负载)、Client Context(客户端上下文)或 Qualifier(限定词)的任何内容。

      注意

      在某些情况下,您可以使用伪参数作为Payload值的一部分。然后,当维护时段任务运行时,它会传递正确的值,而不是伪参数占位符。有关信息,请参阅 注册维护时段任务时使用伪参数

    3. 对于 Task priority (任务优先级),指定此任务的优先级。零 (0) 表示最高优先级。维护时段中的任务按优先级顺序计划,具有相同优先级的任务则并行计划。

    Step Functions
    1. Step Functions 参数区域中,从列表中选择一台状态机。

    2. (可选)提供状态机执行的名称以及您想要包括的 Input(输入)的任何内容。

      注意

      在某些情况下,您可以使用伪参数作为Input值的一部分。然后,当维护时段任务运行时,它会传递正确的值,而不是伪参数占位符。有关信息,请参阅 注册维护时段任务时使用伪参数

    3. 对于 Task priority (任务优先级),指定此任务的优先级。零 (0) 表示最高优先级。维护时段中的任务按优先级顺序计划,具有相同优先级的任务则并行计划。

  9. Targets (目标) 区域中,选择以下选项之一:

    • Selecting registered target groups (选择已注册的目标群):选择已注册到当前维护时段的一个或多个维护时段目标。

    • Selecting unregistered targets (选择未注册的目标):逐个选择可用资源作为任务的目标。

      如果未列出您希望看到的托管式节点,请参阅 排除托管式节点可用性的问题 以获取故障排除技巧。

    • Task target not required (不需要任务目标):可能已在其他函数中为除 Run Command 类型以外的所有其他任务指定了任务的目标。

      为维护时段 Run Command 类型任务指定一个或多个目标。根据任务的不同,目标对于其他维护时段任务类型(自动化、Amazon Lambda 和 Amazon Step Functions)是可选的。有关运行未指定目标的任务的更多信息,请参阅 注册不含目标的维护时段任务

      注意

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

  10. 仅限自动化任务:

    Input parameters(输入参数)区域中,为运行任务所需的任何必需或可选的参数提供值。

    注意

    在某些情况下,您可以为某些输入参数值使用伪参数。然后,当维护时段任务运行时,它会传递正确的值,而不是伪参数占位符。有关信息,请参阅 注册维护时段任务时使用伪参数

  11. 对于 Rate control(速率控制)

    • 对于 Concurrency(并发),请指定要同时运行该命令的托管式节点的数量或百分比。

      注意

      如果您通过指定应用于托管式节点的标签或指定 Amazon Resource Groups 来选择目标,但不确定有多少个托管式节点已被设为目标,则可通过指定百分比来限制可同时运行该文档的目标的数量。

    • 对于 Error threshold(错误阈值),请指定当命令在一定数量或百分比的节点上失败后,何时在其他托管式节点上停止运行该命令。例如,如果您指定三个错误,Systems Manager 将在收到第四个错误时停止发送该命令。仍在处理该命令的托管式节点也可能发送错误。

  12. IAM service role(IAM 服务角色)区域中,选择一个角色以向 Systems Manager 提供在您的目标节点上运行任务的权限。

    如果您需要为维护时段任务创建自定义服务角色,请参阅使用控制台配置维护时段权限

  13. Run Command仅限任务:

    (可选)对于 Output options(输出选项),请执行以下操作:

    • 选中 Enable writing to S3 (启用写入到 S3) 复选框,将命令输出保存到文件。在输入框中输入存储桶和前缀(文件夹)名称。

      注意

      授予将数据写入 S3 存储桶的能力的 S3 权限,是分配给节点的实例配置文件的权限,而不是执行此任务的 IAM 用户的权限。有关更多信息,请参阅为 Systems Manager 配置实例权限。此外,如果指定的 S3 存储桶位于不同的 Amazon Web Services 账户 中,请确认与该节点关联的实例配置文件具有写入该存储桶的所需权限。

    • 选中CloudWatch 输出复选框将完整的输出写入 Amazon CloudWatch 日志。输入 CloudWatch 日志组的名称。

  14. Run Command仅限任务:

    SNS 通知部分,如果需要发送有关命令执行状态的通知,请选中 Enable SNS notifications(启用 SNS 通知)复选框。

    有关为 Run Command 配置 Amazon SNS 通知的更多信息,请参阅 使用 Amazon SNS 通知监控 Systems Manager 状态更改

  15. Run Command仅限任务:

    Parameters (参数) 部分中,为文档指定参数。

    注意

    在某些情况下,您可以为某些输入参数值使用伪参数。然后,当维护时段任务运行时,它会传递正确的值,而不是伪参数占位符。有关信息,请参阅 注册维护时段任务时使用伪参数

  16. Run Command仅限自动化任务:

    (可选)在CloudWatch 警报区域的警报名称中,选择要应用于您的监控任务的现有 CloudWatch 警报。

    如果警报激活,则任务停止。

    注意

    要将 CloudWatch 警报附加到您的任务,运行该任务的 IAM 委托人必须拥有该iam:createServiceLinkedRole操作的权限。有关 CloudWatch 警报的更多信息,请参阅使用 Amazon CloudWatch 警报

  17. 根据您的任务类型,选择以下选项之一:

    • 选择注册 Run command 任务

    • 选择注册 自动化 任务

    • 注册 Lambda 任务

    • 注册 Step Functions 任务