Optional ReadonlyadminReadonlyallocatedAllocated DB storage size in gibibytes (GiB). Must be 20 or greater
Optional ReadonlyallowAllow RDS to automatically perform major DB engine version updates during defined service window
Optional ReadonlyautoAllow RDS to automatically perform minor DB engine version updates and patches during defined service window
Optional ReadonlybackupThe number of days during which automatic DB snapshots are retained. Set to zero to disable backups. When creating a read replica, you must enable automatic backups on the source database instance by setting the backup retention to a value other than zero.
Optional ReadonlycloudwatchRetention period for database CloudWatch logs
Optional ReadonlycreateCreate an empty SecurityGroup that allows access to the database instance from external instances that have the client access security group associated.
Note that the preferred way of granting access to the database is to use the CDK connections API to grant access to the DB default security group from the client instance's security group. This method follows the leas-access principle and creates point-to-point openings from client to the database
ReadonlydbDB engine type
ReadonlydbDatabase engine version. Use value from PostgresEngineVersion for 'postgres' DB engine and value from MysqlEngineVersion for 'mysql' DB engine
It is recommended to specify the DB major version only when 'autoMinorVersionUpgrade' is enabled (default). Specifying exact minor version in this case will cause stack drift when the minor version is automatically updated by RDS. When specifying only the major version, RDS will use the latest minor version available when launching the DB instance
ReadonlydbUnique name for the DB instance
Optional ReadonlydeletionProtect the DB instance from accidental deletion. Should only be disabled when intentionally deleting the DB instance
ReadonlyenvironmentInfra environment
Optional ReadonlyiamEnable mapping of AWS Identity and Access Management (IAM) accounts to database accounts
ReadonlyinstanceDB instance class to use
ReadonlyinstanceDB instance size to use
Optional ReadonlykmsKMS key to be used to encrypt performance insights data
Optional ReadonlykmsKMS key to be used to encrypt the DB admin password secret
Required if 'adminCredentials' secret is not provided
Optional ReadonlykmsKMS key to be used for DB storage encryption
Required if 'snapshotId' is not provided. For snapshots, the KMS key used to encrypt the snapshot is used to encrypt the new DB instance storage
Optional ReadonlylogShared CloudWatch log retention role that CDK-generated Lambda uses to set retention period for the DB CloudWatch log groups. Using a shared role reduces number of redundant resources
ReadonlymaxMaximum allocated storage in gibibytes (GiB) for storage autoscaling. Storage will not be extended beyond this size
Optional ReadonlymultiEnable multi-AZ standby instance deployment for the DB instance. Highly recommended for PROD environments for high availability (HA). Should not be used in other environments to reduce costs from the standby instance
Optional ReadonlyportCustom port for the database
Optional ReadonlyprivatePrivate HostedZone to create the DNS alias record for the RDS instance to.
The created alias record is of the format <kebab-case(dbInstanceName)>.
Optional ReadonlysnapshotID or ARN of the database snapshot to create the instance from
Providing a snapshotId will trigger replacement of existing RDS instance. If restoring a snapshot it is recommended to create a separate instance of this construct, not to update existing one
NOTE: When restoring a DB from a snapshot, please refer to the AWS documentation! Potential risk of data loss exists. After restoring a DB from snapshot, the 'snapshotId' property cannot be changed or removed. This will result in CloudFormation replacing the DB instance
Optional ReadonlyvpcVPC to use for the DB instance
Optional ReadonlyvpcSubnets to use for the VPC. Minimum set of 2 subnets needs to be defined
Admin credentials for the database. Must be in JSON format for RDS