步骤 3:为混合环境创建托管式实例激活 - Amazon Systems Manager
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

步骤 3:为混合环境创建托管式实例激活

要在混合环境中将服务器和虚拟机 (VM) 设置为托管实例,您需要创建托管实例激活。成功完成激活后,您将立即 收到一个激活代码和激活 ID。在混合环境中的服务器和虚拟机上安装 Amazon Systems Manager SSM Agent 时指定此代码/ID 的组合。此代码/ID 提供从托管实例对 Systems Manager 的安全访问。

重要

根据您创建激活的方式,Systems Manager 立即将激活码和 ID 返回到控制台或命令窗口。复制此信息并将其存储在安全位置。如果您离开该控制台或关闭命令窗口,可能会丢失此信息。如果您丢失对应信息,则必须创建一个新激活。

关于激活过期时间

激活过期是您可向 Systems Manager 注册本地计算机的时间范围。过期的激活对您以前向 Systems Manager 注册的服务器或虚拟机 (VM) 没有任何影响。如果激活过期,则无法使用该特定激活向 Systems Manager 注册更多服务器或虚拟机。您只需创建新的激活。

在明确将以前注册的每个本地服务器和虚拟机取消注册以前,它们仍注册为 Systems Manager 托管实例。您可以在 Systems Manager 控制台的 Fleet Manager 页面和 Managed Instances (托管实例) 选项卡上取消注册托管实例,方法是使用 Amazon CLI 命令 deregister-managed-instance 或使用 API 调用 DeregisterManagedInstance

关于激活标签

如果使用 Amazon Command Line Interface (Amazon CLI) 或 Amazon Tools for Windows PowerShell 创建激活,则可以指定标签。标签是您分配给资源的可选元数据。标签可让您按不同的方式(如用途、拥有者或环境)对资源进行分类。以下是一个在包含可选标签的本地 Linux 计算机上运行的 Amazon CLI 示例命令。

aws ssm create-activation \ --default-instance-name MyWebServers \ --description "Activation for Finance department webservers" \ --iam-role service-role/AmazonEC2RunCommandRoleForManagedInstances \ --registration-limit 10 \ --region us-east-2 \ --tags "Key=Department,Value=Finance"

如果在创建激活时指定标签,在激活本地服务器和虚拟机时,将自动为它们分配这些标签。

您无法在现有激活中添加或删除标签。如果您不希望使用激活自动为本地服务器和虚拟机分配标签,则可以稍后在其中添加标签。更具体地说,您可以在本地服务器和虚拟机首次连接到 Systems Manager 后标记这些服务器和虚拟机。在连接后,将会为它们分配托管实例 ID,并在 Systems Manager 控制台中列出这些 ID 中带有“mi-”前缀的服务器和虚拟机。有关如何在不使用激活过程的情况下将标签添加到托管实例的信息,请参阅 标记托管式节点

注意

如果使用 Systems Manager 控制台创建激活,则无法为其分配标签。必须使用 Amazon CLI 或 Tools for Windows PowerShell 来创建激活。

如果您不再希望使用 Systems Manager 管理本地服务器或虚拟机 (VM),可以将其取消注册。有关信息,请参阅 在混合环境中取消注册托管式节点

创建激活(控制台)

创建托管实例激活

  1. 访问 https://console.aws.amazon.com/systems-manager/,打开 Amazon Systems Manager 控制台。

  2. 在导航窗格中,选择 Hybrid Activations (混合激活)

    -或者-

    如果首先打开 Amazon Systems Manager 主页,选择菜单图标 ( ) 以打开导航窗格,然后选择 Hybrid Activations (混合激活)

  3. 选择创建激活

  4. (可选) 在激活说明字段中,输入对此激活的描述。描述是可选的,但如果要激活大量服务器和虚拟机,建议输入描述。

  5. Instance limit (实例限制) 字段中,指定要在激活过程中向 Amazon 注册的本地服务器或虚拟机的总数。默认值为 1 个实例。

  6. IAM role name (IAM 角色名称) 部分中,选择一个服务角色选项,以便服务器和虚拟机能够与云中的 Amazon Systems Manager 进行通信:

    1. 选择 Use the system created default command execution role (使用系统创建的默认命令执行角色) 以使用 Amazon 创建的角色和托管策略。

    2. 选择 Select an existing custom IAM role that has the required permissions (选择一个具有所需权限的现有自定义 IAM 角色) 以使用先前创建的可选自定义角色。此角色必须具有指定 "Service": "ssm.amazonaws.com" 的信任关系策略。如果您的 IAM 角色未在信任关系策略中指定此原则,则会收到以下错误:

      An error occurred (ValidationException) when calling the CreateActivation
                                          operation: Not existing role: arn:aws:iam::<accountid>:role/SSMRole

      有关创建此角色的更多信息,请参阅 步骤 2:为混合环境创建 IAM 服务角色

  7. 激活过期日期字段中,为激活指定到期日期。到期日期必须是未来的某个日期,并且不能超出未来 30 天。默认值为 24 小时。

    注意

    如果需要在过期日期后注册更多的托管实例,您必须创建新的激活。过期日期对已注册且正在运行的实例没有任何影响。

  8. (可选) 在默认实例名称字段中指定名称。

  9. 选择创建激活。Systems Manager 立即将激活码和 ID 返回到控制台。

创建托管实例激活(命令行)

以下过程介绍了如何使用 Amazon Command Line Interface (Amazon CLI)(在 Linux 或 Windows 上)或 Amazon Tools for PowerShell 创建托管实例激活。

创建激活

  1. 安装并配置 Amazon CLI 或 Amazon Tools for PowerShell(如果尚未执行该操作)。

    想要了解有关信息,请参阅安装或升级Amazon命令行工具.

  2. 运行以下命令以创建一个激活。

    注意
    • region 表示 Amazon Systems Manager 支持的 Amazon Web Services 区域 的标识符,例如美国东部(俄亥俄)区域的 us-east-2。有关受支持的 region 值的列表,请参阅 Amazon Web Services 一般参考中的 Systems Manager 服务终端节点中的 Region(区域)列。

    • iam-role 参数指定的角色必须具有指定 "Service": "ssm.amazonaws.com" 的信任关系策略。如果您的 Amazon Identity and Access Management (IAM) 角色未在信任关系策略中指定此原则,则会收到以下错误:

      An error occurred (ValidationException) when calling the CreateActivation
                                              operation: Not existing role: arn:aws:iam::<accountid>:role/SSMRole

      有关创建此角色的更多信息,请参阅 步骤 2:为混合环境创建 IAM 服务角色

    • 对于 --expiration-date,请提供时间戳格式的日期(例如 "2021-07-07T00:00:00"),以指示激活码何时过期。您最多可以提前 30 天指定日期。如果您未提供到期日期,激活码将在 24 小时内过期。

    Linux & macOS
    aws ssm create-activation \ --default-instance-name name \ --iam-role iam-service-role-name \ --registration-limit number-of-managed-instances \ --region region \ --expiration-date "timestamp" \\ --tags "Key=key-name-1,Value=key-value-1" "Key=key-name-2,Value=key-value-2"
    Windows
    aws ssm create-activation ^ --default-instance-name name ^ --iam-role iam-service-role-name ^ --registration-limit number-of-managed-instances ^ --region region ^ --expiration-date "timestamp" ^ --tags "Key=key-name-1,Value=key-value-1" "Key=key-name-2,Value=key-value-2"
    PowerShell
    New-SSMActivation -DefaultInstanceName name ` -IamRole iam-service-role-name ` -RegistrationLimit number-of-managed-instances ` –Region region ` -ExpirationDate "timestamp" ` -Tag @{"Key"="key-name-1";"Value"="key-value-1"},@{"Key"="key-name-2";"Value"="key-value-2"}

    以下是示例。

    Linux & macOS
    aws ssm create-activation \ --default-instance-name MyWebServers \ --iam-role service-role/AmazonEC2RunCommandRoleForManagedInstances \ --registration-limit 10 \ --region us-east-2 \ --expiration-date "2021-07-07T00:00:00" \ --tags "Key=Environment,Value=Production" "Key=Department,Value=Finance"
    Windows
    aws ssm create-activation ^ --default-instance-name MyWebServers ^ --iam-role service-role/AmazonEC2RunCommandRoleForManagedInstances ^ --registration-limit 10 ^ --region us-east-2 ^ --expiration-date "2021-07-07T00:00:00" ^ --tags "Key=Environment,Value=Production" "Key=Department,Value=Finance"
    PowerShell
    New-SSMActivation -DefaultInstanceName MyWebServers ` -IamRole service-role/AmazonEC2RunCommandRoleForManagedInstances ` -RegistrationLimit 10 ` –Region us-east-2 ` -ExpirationDate "2021-07-07T00:00:00" ` -Tag @{"Key"="Environment";"Value"="Production"},@{"Key"="Department";"Value"="Finance"}

    如果成功创建激活,系统将立即返回一个激活代码和 ID。

继续浏览 第 5 步:为混合环境安装 SSM Agent (Windows)