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

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

示例:向维护时段注册目标

您可以使用其实例 ID 将单个实例注册为目标,如 第 2 步:向维护时段注册目标实例 ()AmazonCLI) 中所示。您还可以使用此页面的命令格式将一个或多个实例注册为目标。

一般情况下,有两种方法用于标识您要用作维护时段目标的实例:指定各个实例和使用资源标签。资源标签方法提供了更多选项,如示例 2-3 中所示。

您也可以指定一个或多个资源组作为维护时段的目标。资源组可包含实例和许多其他类型的支持Amazon资源的费用。接下来的示例 4 和 5 演示如何将资源组添加到您的维护时段目标。

注意

如果单个维护窗口任务注册到多个目标,则其任务调用将按顺序进行,而不是并行发生。如果您的任务必须同时在多个目标上运行,请为每个目标分别注册一个任务,并为每个任务分配相同的优先级。

有关创建和管理资源组的更多信息,请参阅是什么AmazonResource Groups?中的AmazonResource Groups 用户指南为 Resource Groups 和标签Amazon中的Amazon新闻博客

有关维护窗口配额的信息,请使用Amazon Web Services Systems Manager,除以下示例中指定的信息外,请参阅Systems Manager 服务配额中的Amazon Web Services 一般参考

示例 1:使用实例 ID 注册多个目标

在本地计算机上运行以下命令,使用多个实例的实例 ID 将其注册为目标。

Linux & macOS
aws ssm register-target-with-maintenance-window \ --window-id "mw-0c50858d01EXAMPLE" \ --resource-type "INSTANCE" \ --target "Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE,i-07782c72faEXAMPLE"
Windows
aws ssm register-target-with-maintenance-window ^ --window-id "mw-0c50858d01EXAMPLE ^ --resource-type "INSTANCE" ^ --target "Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE,i-07782c72faEXAMPLE

推荐使用:在首次向任何维护时段注册唯一一一组实例,并且这些实例在首次向任何维护时段注册时最有用。共享一个通用的实例标签。

配额: 您总共可以为每个维护时段目标指定最多 50 个实例。

示例 2:使用应用到实例的资源标签注册目标

在本地计算机上运行以下命令,注册所有已使用您分配的键值对标记的实例。

Linux & macOS
aws ssm register-target-with-maintenance-window \ --window-id "mw-0c50858d01EXAMPLE" \ --resource-type "INSTANCE" \ --target "Key=tag:Region,Values=East"
Windows
aws ssm register-target-with-maintenance-window ^ --window-id "mw-0c50858d01EXAMPLE" ^ --resource-type "INSTANCE" ^ --target "Key=tag:Region,Values=East"

推荐使用:在首次向任何维护时段注册唯一一一组实例,并且这些实例在首次注册时段最有用。DO共享一个通用的实例标签。

配额: 您最多一共可以为每个目标指定五个键/值对。如果您指定了多个键/值对,则必须使用全部您指定的标签键和值来包含在目标组中。

注意

您可以使用标签键补丁组来标记一组实例并向实例分配通用键值,例如 my-patch-group。修补程序管理器是 Systems Manager 的一项功能,用于评估补丁组键,帮助确定向实例应用哪个补丁基准。如果您的任务将运行 AWS-RunPatchBaseline SSM 文档(或传统 AWS-ApplyPatchBaseline SSM 文档),则在将目标注册到维护时段时,可以指定相同的补丁组键值对。例如:--target "Key=tag:Patch Group,Values=my-patch-group。 这样做可让您轻松地使用维护时段,在已经与相同补丁基准关联的一组实例上更新补丁。有关更多信息,请参阅 关于补丁组

示例 3:使用一组标签键(无标签值)注册目标

在本地计算机上运行以下命令,注册所有已分配有一个或多个标签键的实例(不考虑其键值)。

Linux & macOS
aws ssm register-target-with-maintenance-window \ --window-id "mw-0c50858d01EXAMPLE" \ --resource-type "INSTANCE" \ --target "Key=tag-key,Values=Name,Instance-Type,CostCenter"
Windows
aws ssm register-target-with-maintenance-window ^ --window-id "mw-0c50858d01EXAMPLE" ^ --resource-type "INSTANCE" ^ --target "Key=tag-key,Values=Name,Instance-Type,CostCenter"

推荐使用:当您想要通过指定多个标签来定位实例时很有用密钥(无值),而不是只是一个标签键或标签键值对。

配额: 您最多一共可以为每个目标指定五个标签键。如果您指定了多个标签键,则必须使用全部您指定的标签键包含在目标组中。

示例 4:使用资源组名称注册目标

在本地计算机上运行以下命令,注册指定的资源组,而不管其包含的资源类型。如果分配给维护时段的任务不对此资源组中包含的某资源类型执行操作,则系统可能会报告错误。尽管存在这些错误,但找到了支持的资源类型的任务仍会继续运行。

Linux & macOS
aws ssm register-target-with-maintenance-window \ --window-id "mw-0c50858d01EXAMPLE" \ --resource-type "RESOURCE_GROUP" \ --target "Key=resource-groups:Name,Values=MyResourceGroup"
Windows
aws ssm register-target-with-maintenance-window ^ --window-id "mw-0c50858d01EXAMPLE" ^ --resource-type "RESOURCE_GROUP" ^ --target "Key=resource-groups:Name,Values=MyResourceGroup"

推荐使用:当您想要将资源组快速指定为目标而不评估维护时段是否将其所有资源类型设为目标时,或者当您知道资源组仅包含任务对其执行操作的资源类型时,此选项很有用。

配额: 您只能将一个资源组指定为目标。

示例 5:通过筛选资源组中的资源类型来注册目标

在本地计算机上运行以下命令,只注册属于您所指定的资源组的某些资源类型。使用此选项,即使您为属于资源组的资源类型添加任务,但如果尚未将资源类型显式添加到筛选器,则任务也不会运行。

Linux & macOS
aws ssm register-target-with-maintenance-window \ --window-id "mw-0c50858d01EXAMPLE" \ --resource-type "RESOURCE_GROUP" \ --target "Key=resource-groups:Name,Values=MyResourceGroup" \ "Key=resource-groups:ResourceTypeFilters,Values=AWS::EC2::Instance,AWS::ECS::Cluster"
Windows
aws ssm register-target-with-maintenance-window ^ --window-id "mw-0c50858d01EXAMPLE" ^ --resource-type "RESOURCE_GROUP" ^ --target "Key=resource-groups:Name,Values=MyResourceGroup" ^ "Key=resource-groups:ResourceTypeFilters,Values=AWS::EC2::Instance,AWS::ECS::Cluster"

推荐使用:当您想要严格控制Amazon维护时段可以对其运行操作的资源,或者当您的资源组包含大量资源类型而您希望在维护时段日志中避免不必要的错误报告时,这非常有用。

配额: 您只能将一个资源组指定为目标。