Amazon EC2 Spot 队列角色 - AWS Batch
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

Amazon EC2 Spot 队列角色

如果您创建一个使用 Amazon EC2 Spot 队列实例的托管计算环境,则必须创建一个角色,该角色应向 Spot 队列授予代表您启动、标记和终止实例的权限。在 Spot 队列请求中指定该角色。您还必须具有适用于 Spot 和 Spot 队列的 AWSServiceRoleForEC2SpotAWSServiceRoleForEC2SpotFleetAmazon EC2 服务相关角色。按照以下说明创建所有这些角色。有关更多信息,请参阅 中的https://docs.amazonaws.cn/IAM/latest/UserGuide/using-service-linked-roles.html使用服务相关角色和AWS创建向 服务委派权限的角色IAM 用户指南

在 Amazon EC2中创建 AWS 管理控制台 Spot 队组角色

创建适用于 AWSServiceRoleForEC2Spot Spot 的 IAM Amazon EC2 服务相关角色

  1. 通过以下网址打开 IAM 控制台:https://console.amazonaws.cn/iam/

  2. 在导航窗格中,选择 RolesCreate role

  3. 对于 Select type of trusted entity (选择受信任实体的类型),选择 AWS service (AWS 服务)。对于 Choose the service that will use this role (选择将使用此角色的服务),选择 EC2

  4. 选择您的使用案例部分中,选择 EC2 - Spot Instances (EC2 - Spot 实例)

  5. 依次选择 Next: Permissions (下一步: 权限)Next: Tags (下一步: 标签)Next: Review (下一步: 复查)

  6. 对于角色名称,键入 AmazonEC2SpotFleetRole。选择 Create role (创建角色)

创建适用于 AWSServiceRoleForEC2SpotFleet Spot 队组的 IAM Amazon EC2 服务相关角色

  1. 通过以下网址打开 IAM 控制台:https://console.amazonaws.cn/iam/

  2. 在导航窗格中,选择 RolesCreate role

  3. 对于 Select type of trusted entity (选择受信任实体的类型),选择 AWS service (AWS 服务)。对于 Choose the service that will use this role (选择将使用此角色的服务),选择 EC2

  4. 选择您的使用案例部分中,选择 EC2 - Spot Fleet (EC2 - Spot 队列)

  5. 依次选择 Next: Permissions (下一步: 权限)Next: Tags (下一步: 标签)Next: Review (下一步: 复查)

  6. 对于角色名称,键入 AWSServiceRoleForEC2SpotFleet。选择创建角色

注意

过去, Amazon EC2 Spot 队列角色有两个托管策略。

  • AmazonEC2SpotFleetRole:这是 Spot 队列角色的初始托管策略。它具有更严格的IAM权限,但不支持在计算环境中标记 Spot 实例。如果您以前是使用此策略创建的 Spot 队列角色,请参阅在创建时未标记的 Spot 实例以将新的推荐策略应用于该角色。

  • AmazonEC2SpotFleetTaggingRole:此角色提供了标记 Amazon EC2 Spot 实例所需的所有权限。使用此角色允许在 AWS Batch 计算环境中标记 Spot 实例。

使用 Amazon EC2 创建 AWS CLI Spot 队组角色

为 Spot 队组计算环境创建 AmazonEC2SpotFleetRole IAM 角色

  1. 使用 AWS CLI 运行以下命令:

    aws iam create-role --role-name AmazonEC2SpotFleetRole \ --assume-role-policy-document '{"Version":"2012-10-17","Statement":[{"Sid":"","Effect":"Allow","Principal":{"Service":"spotfleet.amazonaws.com"},"Action":"sts:AssumeRole"}]}'
  2. 要将 AmazonEC2SpotFleetTaggingRole 托管的 IAM 策略附加到您的 AmazonEC2SpotFleetRole 角色,请使用 AWS CLI 运行以下命令:

    aws iam attach-role-policy \ --policy-arn arn:aws-cn:iam::aws:policy/service-role/AmazonEC2SpotFleetTaggingRole \ --role-name AmazonEC2SpotFleetRole

创建适用于 AWSServiceRoleForEC2Spot Spot 的 IAM Amazon EC2 服务相关角色

  • 使用 AWS CLI 运行以下命令:

    aws iam create-service-linked-role --aws-service-name spot.amazonaws.com

创建适用于 AWSServiceRoleForEC2SpotFleet Spot 队组的 IAM Amazon EC2 服务相关角色

  • 使用 AWS CLI 运行以下命令:

    aws iam create-service-linked-role --aws-service-name spotfleet.amazonaws.com