AWS Systems Manager
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

第 7 步:(可选)启用 Advanced-Instances 层

AWS Systems Manager 为混合环境中的服务器和虚拟机提供了 standard-instances 层和 advanced-instances 层。通过 standard-instances 层,每个 AWS 区域内每个 AWS 账户最多可以注册 1000 个本地服务器或 VM。如果您需要在一个账户和区域中注册超过 1000 个本地服务器或 VM,则使用 advanced-instances 层。在 advanced-instances 层中,可以激活混合环境中的任意多个托管实例。但是,之前按照第 4 步:为混合环境创建托管实例激活中所述托管实例激活流程为 Systems Manager 配置的所有实例均按使用量付费。这也适用于使用 Systems Manager 本地激活的 Amazon EC2 实例(不是常见情况)。

注意

  • 通过高级实例,您还可以使用 AWS Systems Manager Session Manager 连接到混合计算机。Session Manager 提供了对您的实例的交互式 Shell 访问。有关更多信息,请参阅AWS Systems Manager Session Manager

  • standard-instances 限制也适用于使用 Systems Manager 本地激活的 Amazon EC2 实例(不是常见情况)。

  • Microsoft 应用程序修补仅对 Amazon EC2 实例和 advanced-instances 层可用。要修补本地服务器和 VM 上的 Microsoft 应用程序,您必须启用 advanced-instances 层。有关更多信息,请参阅 关于 Windows Server 上的修补应用程序

本节介绍如何配置您的混合环境来使用 advanced-instances 层。

开始前的准备工作

查看高级实例的定价详细信息。高级实例是账户级别的功能,且账户和 AWS 区域中使用托管实例激活添加的所有 本地服务器和虚拟机都以按使用量收费方式提供。有关更多信息,请参阅 AWS Systems Manager 定价

配置启用 Advanced-Instances 层的权限

请确认您在 AWS Identity and Access Management (IAM) 中具有将您的环境从 standard-instances 层更改为 advanced-instances 层的权限。您必须将 AdministratorAccess 策略附加到您的 IAM 用户、组或角色。或者,您必须具有更改 Systems Manager activation-tier 服务设置的权限。activation-tier 设置使用以下 API 操作:

使用以下过程将内联 IAM 策略添加到用户账户。此策略使用户能够查看当前的 managed-instance 层设置。该策略还允许用户更改或重置指定 AWS 账户和区域中的当前设置。

  1. Sign in to the AWS Management Console and open the IAM console at https://console.amazonaws.cn/iam/.

  2. 在导航窗格中,选择用户

  3. 在列表中,选择要在其中嵌入策略的用户的名称。

  4. 选择 Permissions 选项卡。

  5. 在页面右侧,在 Permission policies (权限策略) 下,选择 Add inline policy (添加内联策略)

  6. 选择 JSON 选项卡。

  7. 将默认内容替换为以下内容:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:GetServiceSetting", ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ssm:ResetServiceSetting", "ssm:UpdateServiceSetting" ], "Resource": "arn:aws:ssm:AWS_Region:AWS_account_ID:servicesetting/ssm/managed-instance/activation-tier" } ] }
  8. 选择查看策略

  9. 查看策略页面上,对于名称,输入内联策略的名称。例如:Managed-Instances-Tier

  10. 选择 Create policy

管理员可以通过将以下内联策略分配到用户账户来指定只读权限。

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:GetServiceSetting" ], "Resource": "*" }, { "Effect": "Deny", "Action": [ "ssm:ResetServiceSetting", "ssm:UpdateServiceSetting" ], "Resource": "*" } ] }

有关创建和编辑 IAM 策略的更多信息,请参阅 IAM User Guide 中的创建 IAM 策略

启用 Advanced-Instances 层(控制台)

以下过程介绍了如何使用 Systems Manager 控制台,将使用托管实例激活在指定 AWS 账户和区域中添加的所有 本地服务器和虚拟机更改为使用 advanced-instances 层。

重要

以下过程介绍了如何更改账户级别设置。此更改会导致向您的账户计费。如果您想更改回 standard-instances 层,必须联系 AWS Support。

启用 advanced-instances 层(控制台)

  1. 通过以下网址打开 AWS Systems Manager 控制台:https://console.amazonaws.cn/systems-manager/

  2. 在导航窗格中,选择 Managed instances (托管实例)

  3. 选择 Settings 选项卡。

    如果您没有看到 Settings (设置) 选项卡,则执行以下操作:

    1. 验证控制台是否在您创建托管实例的 AWS 区域开放。您可以使用顶部的列表(控制台右上角)切换区域。

    2. 验证您的实例是否满足 Systems Manager 要求。有关信息,请参阅 Systems Manager 先决条件

    3. 对于混合环境中的服务器和 VM,请确认您已完成激活过程。有关更多信息,请参阅 为混合环境设置 AWS Systems Manager

  4. 选择 Change account settings (更改账户设置)

  5. 查看弹出窗口中有关更改账户设置的信息,然后,如果您批准,选择接受并继续的选项。

系统可能需要几分钟才能完成将所有实例从 standard-instances 层移至 advanced-instances 层的过程。

启用 Advanced-Instances 层 (AWS CLI)

以下过程介绍了如何使用 AWS CLI,将使用托管实例激活在指定 AWS 账户和区域中添加的所有 本地服务器和虚拟机更改为使用 advanced-instances 层。

重要

以下过程介绍了如何更改账户级别设置。此更改会导致向您的账户计费。如果您想更改回 standard-instances 层,必须联系 AWS Support。

使用 AWS CLI 启用 advanced-instances 层

  1. 打开 AWS CLI 并运行以下命令更改当前 AWS 账户和区域中的所有托管实例来使用 advanced-instances 层。

    aws ssm update-service-setting --setting-id arn:aws:ssm:us-east-1:123456789012:servicesetting/ssm/managed-instance/activation-tier --setting-value advanced

    如果此命令成功,则无任何输出。

  2. 运行以下命令来查看当前的 AWS 账户和区域中托管实例的当前服务设置。

    aws ssm get-service-setting --setting-id arn:aws:ssm:us-east-1:123456789012:servicesetting/ssm/managed-instance/activation-tier
    {
        "ServiceSetting": {
            "SettingId": "/ssm/managed-instance/activation-tier",
            "SettingValue": "advanced",
            "LastModifiedDate": 1555603376.138,
            "LastModifiedUser": "arn:aws:sts::123456789012:assumed-role/Administrator/Jasper",
            "ARN": "arn:aws:ssm:us-east-1:123456789012:servicesetting/ssm/managed-instance/activation-tier",
            "Status": "PendingUpdate"
        }
    }

系统可能需要几分钟才能完成将所有实例从 standard-instances 层移至 advanced-instances 层的过程。

启用 Advanced-Instances 层 (PowerShell)

以下过程介绍了如何使用 AWS Tools for Windows PowerShell,将使用托管实例激活在指定 AWS 账户和区域中添加的所有 本地服务器和虚拟机更改为使用 advanced-instances 层。

重要

以下过程介绍了如何更改账户级别设置。此更改会导致向您的账户计费。如果您想更改回 standard-instances 层,必须联系 AWS Support。

使用 PowerShell 启用 advanced-instances 层

  1. 使用 AWS Tools for Windows PowerShell 更改当前 AWS 账户和区域中的所有托管实例来使用 advanced-instances 层。

    Update-SSMServiceSetting -SettingId "arn:aws:ssm:us-east-1:123456789012:servicesetting/ssm/managed-instance/activation-tier" -SettingValue "advanced"

    如果此命令成功,则无任何输出。

  2. 运行以下命令来查看当前的 AWS 账户和区域中托管实例的当前服务设置。

    Get-SSMServiceSetting -SettingId "arn:aws:ssm:us-east-1:123456789012:servicesetting/ssm/managed-instance/activation-tier"
    ARN              : arn:aws:ssm:us-east-1:123456789012:servicesetting/ssm/managed-instance/activation-tier
    LastModifiedDate : 4/18/2019 4:02:56 PM
    LastModifiedUser : arn:aws:sts::123456789012:assumed-role/Administrator/Jasper
    SettingId        : /ssm/managed-instance/activation-tier
    SettingValue     : advanced
    Status           : PendingUpdate
    

系统可能需要几分钟才能完成将所有实例从 standard-instances 层移至 advanced-instances 层的过程。