步骤 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. 选择创建激活

    –或者–

    如果您在当前 Amazon Web Services 区域首次访问 Hybrid Activations(混合激活)功能,请选择 Create an Activation(创建激活)。

  4. (可选)对于 Activation description(激活描述),输入对此激活的描述。如果您计划激活大量服务器和虚拟机,我们建议您输入描述。

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

  6. 对于 IAM role(IAM 角色),选择一个将允许您的服务器和虚拟机与云中的 Amazon Systems Manager 进行通信的服务角色选项:

    • 选项 1:选择 Use the default role created by the system(使用系统创建的默认角色)以使用由 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. 对于 Activation expiry date(激活到期日期),为该激活指定一个到期日期。到期日期必须是未来的某个日期,并且不能超出未来 30 天。默认值为 24 小时。

    注意

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

  8. (可选)对于 Default instance name(默认实例名称)字段,指定要为与此激活关联的所有托管式实例显示的标识名称值。

  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 替换为您自己的信息。有关受支持的 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。