【发布时间】:2021-01-16 01:44:31
【问题描述】:
我在通过 cloudformation 创建现场队列请求时遇到错误。请求已创建,但当队列尝试请求实例时,我收到标题中提到的错误。
here 中描述了所需的权限,但是当我尝试按照步骤创建AWSServiceRoleForEC2SpotFleet 角色时,我没有选择“EC2 - Spot Fleet”的选项,只有 EC2 Fleet。奇怪的是,当我创建 CF 堆栈时,它实际上确实为我创建了服务相关角色。
我的用户拥有管理员凭据,并且我使用“aws-ec2-spot-fleet-tagging-role”作为队列角色。
据我了解,服务相关角色只需要存在才能使其正常工作,但我无法手动创建它。 我能够通过控制台成功创建队列,使用与模板中使用的值完全相同的值,并且我在那里也选择了相同的“aws-ec2-spot-fleet-tagging-role”。
我还向我的用户提供了该文档中提到的 IAM 凭据,即使它是管理员,只是为了查看我是否需要通过权限,但据我所知,我只有在我提供实例配置文件时才真正需要它发射规范,我不是。这是我在模板中的资源定义:
SpotFleetRequestConfigData:
TargetCapacity: 1
IamFleetRole: arn:aws:iam::73682036499:role/aws-ec2-spot-fleet-tagging-role
LaunchSpecifications:
- ImageId: '{{resolve:ssm:TestImage:4}}' #param stored reference to AMI
InstanceType: t2.small
NetworkInterfaces:
- SubnetId: !ImportValue CustomVPCStack-dmz-subnet-1
DeviceIndex: 0
Groups:
- !Ref EC2MCServerSecurityGroup
TagSpecifications:
-
ResourceType: instance
Tags:
-
Key: Name
Value: spotfleetserver
ReplaceUnhealthyInstances: true
Type: maintain #default```
【问题讨论】:
标签: amazon-web-services amazon-ec2 amazon-cloudformation aws-cli