如何解决无法通过 Cloudformation 创建 EC2 实例
我有以下模板来创建一个简单的 ec2 实例。在创建堆栈时,我收到以下错误:
没有 IAM 权限来处理 AWS::EC2::Instance 资源上的标签
我的模板如下:
AWstemplateFormatVersion: 2010-09-09
Description: Environment template v1.0 (c) xxx
Metadata:
AWS::CloudFormation::Interface:
ParameterGroups:
- Label:
default: EC2/RDS parameters
Parameters:
- PresentationInstanceType
- PresentationAMIId
ParameterLabels:
PresentationInstanceType:
default: Instance type for presentation servers
PresentationAMIId:
default: Presentation instances AMI Id (Provided by AWS)
Parameters:
PresentationInstanceType:
Description: Provide valid AWS instance type.
Type: String
PresentationAMIId:
Description: AWS Latest AMI Id. Do not change unless needed.
Type: AWS::SSM::Parameter::Value<AWS::EC2::Image::Id>
Default: /aws/service/ami-amazon-linux-latest/amzn2-ami-hvm-x86_64-gp2
Resources:
MyEC2Instance:
Type: AWS::EC2::Instance
Properties:
ImageId: !Ref PresentationAMIId
InstanceType: !Ref PresentationInstanceType
UserData:
"Fn::Base64": !Sub |
#!/bin/bash -xe
apt-get update -y
是否知道为什么我会收到此错误?
解决方法
此模板没有明显问题,只是您使用的是不使用 apt
的 Amazon Linux 2。所以正确的用户数据是:
UserData:
"Fn::Base64": !Sub |
#!/bin/bash -xe
yum update -y
您的问题与权限有关,因此我只能推测您(或执行 CFN 的 IAM 角色)没有合适的权限来使用此类模板。特别是那些与实例标签相关联的标签,因为 CloudFormation 会autogenerate tags。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。