0

Ich habe eine Anforderung zum Erstellen mehrerer Datenbanken in Postgres RDS von AWS mit Cloudformation erstellt. Ich bin in der Lage, eine einzelne Datenbank zu erstellen.Erstellen Sie mehrere Datenbanken in AWS Postgres RDS mit Cloudformation

Im Folgenden finden Sie Schnipsel meiner Vorlage:

"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" 
      ] 
     }] 
    } 
} 

Antwort

1

Ihre Cloudformation Ressource pgDB von der Art sein sollte AWS::RDS::DBInstance, und deshalb weist er eine Cloudformation RDS-Instanz zu erstellen. Jede RDS-Instanz kann eine variable Anzahl von Datenbanken oder Datenbankschemas enthalten.

CloudFormation bietet keine Möglichkeit, die Instanz bei der Erstellung bereitzustellen. Um Postgre Datenbanken auf einer RDS-Instanz zu erstellen, müssen Sie beispielsweise eine EC2-Instanz verwenden, um die Datenbank mit gespeicherten SQL-Dumps oder einfachen Befehlen wie CREATE DATABASE mit psql bereitzustellen. Es gibt bereits eine question in Bezug auf RDS-Bereitstellung.

Sie können mehrere RDS-Datenbank Instanzen erstellen, indem Sie eine weitere AWS::RDS::DBInstance Ressource mit eigenen Parametern definieren. Standardmäßig können 40 RDS Postgre-Instanzen für ein Konto verwendet werden (siehe die Grenzwerte in der FAQ).

Verwandte Themen