我不断收到此声明,此外还无法创建云形成堆栈:
The key pair 'AdvancedCFN' does not exist (Service: AmazonEC2; Status Code: 400; Error Code: InvalidKeyPair.NotFound
关于我做错了什么有什么想法吗?
当我从资源部分的 EC2 部分删除行 KeyName: AdvancedCFN
时,堆栈将构建,但随后会提示我正在运行旧版本的 PHP。当我运行: yum install -y httpd24 php70 mysql56-server php70-mysqlnd 时,它仍然说同样的事情,我在 yum update -y 命令之后插入此命令
这是代码的 EC2 部分:
EC2:
Type: "AWS::EC2::Instance"
DeletionPolicy: Delete
Properties:
ImageId: !FindInMap [RegionMap, !Ref "AWS::Region", AMALINUX] # Dynamic mapping + Pseudo Parameter
InstanceType: !FindInMap [InstanceSize, !Ref EnvironmentSize, EC2]
KeyName: AdvancedCFN
UserData:
"Fn::Base64":
!Sub |
#!/bin/bash
yum update -y aws-cfn-bootstrap # good practice - always do this.
/opt/aws/bin/cfn-init -v --stack ${AWS::StackName} --resource EC2 --configsets wordpress --region ${AWS::Region}
yum -y update
/opt/aws/bin/cfn-signal -e $? --stack ${AWS::StackName} --resource EC2 --region ${AWS::Region}
有什么想法吗?
最佳答案
确保存在名为 AdvancedCFN
的 key 对。
检查 EC2 控制台 > 网络与安全 > key 对。
作为解决方法,请将 KeyName
设置为参数。
将以下参数添加到模板中:
KeyName:
Description: Name of an existing EC2 KeyPair to enable SSH access to the ECS instances
Type: 'AWS::EC2::KeyPair::KeyName'
您可以按如下方式使用所选键:
KeyName: !Ref KeyName
关于amazon-web-services - key 对 'AdvancedCFN' 不存在(服务 : AmazonEC2; Status Code: 400; Error Code:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58793366/