amazon-web-services - AWS - 将 cloudformation 堆栈与 VPC 合并

标签 amazon-web-services aws-cloudformation

我正在尝试在AWS CloudFormation中创建一个堆栈,我的模板基本上由Ec2实例、数据库的RDS实例(MySQL引擎)和S3存储桶组成。但是,它抛出错误,指出 (db.t2.micro) 如果没有 VPC,则无法创建此数据库实例类,然后我再次将数据库实例类更改为 (db.m1.small),但再次出现相同的错误。我什至也创建了一个 VPC,但不确定如何在我创建的 VPC 中创建堆栈。我在公司的 AWS 账户中工作。其中已经很少有其他 VPC 可用。

提前致谢:)

获得答案后修改了 JSON 脚本。该脚本处于工作状态,可以创建堆栈。已测试!

更新代码

    {  
    "AWSTemplateFormatVersion": "2010-09-09",   
    "Resources": {  
        "DBSubnetGroup": {  
            "Type": "AWS::RDS::DBSubnetGroup",   
            "Properties": {  
                "DBSubnetGroupDescription": "This subnet belongs to Abdul's VPC",   
                "DBSubnetGroupName": "somename",   
                "SubnetIds": [  
                    "subnet-f6b15491",   
                    "subnet-b154569e"  
                ]  
            }  
        },   
        "DB": {  
            "Type": "AWS::RDS::DBInstance",   
            "Properties": {  
                "AllocatedStorage": "5",   
                "StorageType": "gp2",   
                "DBInstanceClass": "db.m1.small",   
                "DBName": "wordpress",   
                "Engine": "MySQL",   
                "MasterUsername": "wordpress",   
                "MasterUserPassword": "Word12345",   
                "DBSubnetGroupName": {  
                    "Ref": "DBSubnetGroup"  
                }  
            }  
        },   
        "EC2": {  
            "Type": "AWS::EC2::Instance",   
            "Properties": {  
                "ImageId": "ami-c481fad3",     
                "InstanceType": "t2.micro",
                "SubnetId": "subnet-b154569e"               
            }  
        },   
        "S3": {  
            "Type": "AWS::S3::Bucket",   
            "Properties": {  
                "BucketName": "wp-abdultestbuck"  
            }  
        }  
    }  
}

最佳答案

您需要创建一个 AWS::RDS::DBSubnetGroup然后引用AWS::RDS::DBInstance

  {
    "Resources": { 
        "DBSubnetGroup": {
            "Type": "AWS::RDS::DBSubnetGroup",
            "Properties": {
            "DBSubnetGroupDescription": "",
            "SubnetIds": [ "<Subnet ID 1","<Subnet ID 2>" ],
            }
        },
        "DB": {
            "Type": "AWS::RDS::DBInstance",
            "Properties": {
                ....
                "DBSubnetGroupName": { "Ref": "DBSubnetGroup" }
            }
        },
        "EC2": {
            "Type": "AWS::EC2::Instance",
            "Properties": {
              "ImageId": "ami-c481fad3",
              "InstanceType": "t2.micro",
              "SubnetId": "<SubnetID>"
            }
          }
    }
}

关于amazon-web-services - AWS - 将 cloudformation 堆栈与 VPC 合并,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49608602/

相关文章:

amazon-web-services - 如何通过 CommaDelimitedList 参数条件化嵌套堆栈创建

amazon-web-services - 无法使用无服务器将生命周期策略添加到 s3 存储桶

amazon-web-services - Cloudformation 错误:模板验证错误:模板错误:Fn::Select 无法选择索引 2 处不存在的值

json - 我可以在 AWS Cloudformation json 模板的 "Fn::Join"中使用 "Parameters"吗

ruby - 如何使用 ruby​​ 将单个记录写入 Redshift 数据库?

ios - 为什么将排序键用作 filterExpression 时 AWSDynamoDBScanExpression 返回空值?

java - AWS ElasticSearch PreBuiltTransportClient java.lang.NoSuchMethodError

scala - Spark RDD 方法 "saveAsTextFile"抛出异常 即使在删除输出目录后也是如此。 org.apache.hadoop.mapred.FileAlreadyExistsException

amazon-web-services - 仅基于文件大小的 aws s3 同步命令?

amazon-web-services - 由于安全组不匹配,cloudformation 失败