0

我有要求在AWS使用Cloudformation提供的Postgres RDS中创建多个数据库。我能够创建单个数据库。使用Cloudformation在AWS Postgres RDS中创建多个数据库

下面是我的模板的片段:

"pgDB": { 
    "Properties": { 
     "AllocatedStorage": { 
      "Ref": "Storage" 
     }, 
     "DBInstanceClass": { 
      "Ref": "DBInstanceClass" 
     }, 
     "DBInstanceIdentifier": { 
      "Ref": "DBInstanceName" 
     }, 
     "DBName": { 
      "Ref": "DBName" 
     }, 
     "DBParameterGroupName": { 
      "Ref": "myDBParamGroup" 
     }, 
     "DBSubnetGroupName": { 
      "Ref": "myDBSubnetGroup" 
     }, 
     "Engine": "postgres", 
     "MasterUserPassword": { 
      "Ref": "DBPassword" 
     }, 
     "MasterUsername": { 
      "Ref": "DBUser" 
     }, 
     "VPCSecurityGroups": [{ 
      "Fn::GetAtt": [ 
       "myDBEC2SecurityGroup", 
       "GroupId" 
      ] 
     }] 
    } 
} 

回答

1

你CloudFormation资源pgDB应该是类型AWS::RDS::DBInstance的,因此,它指示CloudFormation创建一个RDS实例。每个RDS实例可以包含可变数量的数据库或数据库模式。

CloudFormation不提供创建时调配实例的方法。要在RDS实例上创建Postgre 数据库,您必须使用例如EC2实例来使用存储的SQL转储或运行普通命令(如CREATE DATABASEpsql)来配置数据库。关于RDS配置已经有question

通过使用自己的参数定义另一个AWS::RDS::DBInstance资源,可以创建多个RDS数据库实例。默认情况下,您可以在一个帐户上拥有40个RDS Postgre实例(请参阅FAQ中的限制)。

相关问题