本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Amazon EC2 竞价型实例集角色
如果创建一个使用 Amazon EC2 竞价型实例集实例的托管计算环境,则必须创建AmazonEC2SpotFleetTaggingRole
策略。该政策授权竞价型实例集代表您启动、标记和终止实例。在竞价型实例集请求中指定该角色。还必须具有适用于 Amazon EC2 Spot 和竞价型实例集的 AWSServiceRoleForEC2Spot 和 AWSServiceRoleForEC2SpotFleet 服务相关角色。请按照以下说明以创建所有这些角色。有关更多信息,请参阅《IAM 用户指南》中的使用服务相关角色和创建将权限委托给AWS服务的角色。
在AWS Management Console中创建 Amazon EC2 竞价型实例集角色
要创建适用于 Amazon EC2 竞价型实例集的AmazonEC2SpotFleetTaggingRole
IAM 服务相关角色
通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/
。 -
在访问管理下,请选择角色。
-
对于角色,选择创建角色。
-
从为可信实体类型选择可信实体中,选择AWS 服务。
-
对于其他AWS 服务用例,请选择EC2,然后选择 EC2 - 竞价型实例集标记。
-
选择下一步。
-
在策略名称的权限策略中,验证
AmazonEC2SpotFleetTaggingRole
。 -
选择下一步。
-
对于名称,请查看并创建:
-
对于命名标签,输入用于标识角色的名称。
-
在描述中,输入策略的简短解释。
-
(可选)对于步骤 1:选择可信实体,选择编辑以修改代码。
-
(可选)对于步骤 2:添加权限,选择编辑以修改代码。
-
(可选)对于添加标签,选择添加标签以向资源添加标签。
-
选择创建角色。
-
注意
过去,Amazon EC2 竞价型实例集角色有两个托管策略。
-
AmazonEC2SpotFleetRole:这是竞价型实例集角色的初始托管策略。但是,不再建议将其与AWS Batch一起使用。此策略不支持计算环境中的竞价型实例标记,这是使用
AWSServiceRoleForBatch
服务相关角色所必需的。如果以前是使用此策略创建的竞价型实例集角色,请将新的推荐策略应用于该角色。有关更多信息,请参阅创建时未标记的竞价型实例。 -
AmazonEC2SpotFleetTaggingRole:该角色提供标记 Amazon EC2 竞价型实例的所需的所有权限。使用此角色允许在AWS Batch计算环境中标记竞价型实例。
使用AWS CLI创建 Amazon EC2 竞价型实例集角色
要为竞价型实例集计算环境创建 AmazonEC2SpotFleetTaggingRole IAM 角色
-
使用AWS CLI运行以下命令。
$
aws iam create-role --role-name AmazonEC2SpotFleetTaggingRole \ --assume-role-policy-document '{ "Version":"2012-10-17", "Statement":[ { "Sid":"", "Effect":"Allow", "Principal": { "Service":"spotfleet.amazonaws.com" }, "Action":"sts:AssumeRole" } ] }'
-
要将 AmazonEC2SpotFleetTaggingRole 托管 IAM policy 附加到AmazonEC2SpotFleetTaggingRole 角色上,请使用AWS CLI运行以下命令。
$
aws iam attach-role-policy \ --policy-arn \ arn:aws:iam::aws:policy/service-role/AmazonEC2SpotFleetTaggingRole \ --role-name \ AmazonEC2SpotFleetTaggingRole
创建适用于 Amazon EC2 Spot 的 AWSServiceRoleForEC2Spot
IAM 服务相关角色
注意
如果AWSServiceRoleForEC2Spot
IAM 服务相关角色已存在,则会出现类似于以下内容的错误消息。
An error occurred (InvalidInput) when calling the CreateServiceLinkedRole operation: Service role name
AWSServiceRoleForEC2Spot
has been taken in this account, please try a different suffix.
-
使用AWS CLI运行以下命令。
$
aws iam create-service-linked-role --aws-service-name spot.amazonaws.com
要创建适用于 Amazon EC2 竞价型实例集的AWSServiceRoleForEC2SpotFleet
IAM 服务相关角色
注意
如果AWSServiceRoleForEC2SpotFleet
IAM 服务相关角色已存在,则会出现类似于以下内容的错误消息。
An error occurred (InvalidInput) when calling the CreateServiceLinkedRole operation: Service role name
AWSServiceRoleForEC2SpotFleet
has been taken in this account, please try a different suffix.
-
使用AWS CLI运行以下命令。
$
aws iam create-service-linked-role --aws-service-name spotfleet.amazonaws.com