Skip to content

DBCluster

Source: src/AWS/RDS/DBCluster.ts

An Aurora DB cluster.

DBCluster owns the writer and reader endpoints, cluster-wide networking, and Data API enablement. It can bootstrap master credentials directly or by reading a Secrets Manager secret that contains username and password.

It exposes the full backup, maintenance, monitoring, performance-insights, encryption, scaling, and log-export surface of createDBCluster / modifyDBCluster. Mutable fields are reconciled in place against the observed cloud state; immutable fields (engine, databaseName, dbSubnetGroupName, storageEncrypted, kmsKeyId, engineMode, globalClusterIdentifier, availabilityZones, engineLifecycleSupport) force a replacement.

const cluster = yield* DBCluster("Cluster", {
engine: "aurora-postgresql",
engineMode: "provisioned",
serverlessV2ScalingConfiguration: { MinCapacity: 0.5, MaxCapacity: 4 },
manageMasterUserPassword: true,
masterUsername: "alchemy",
backupRetentionPeriod: 7,
deletionProtection: false,
});
const cluster = yield* DBCluster("Cluster", {
engine: "aurora-postgresql",
enableCloudwatchLogsExports: ["postgresql"],
enablePerformanceInsights: true,
monitoringInterval: 60,
monitoringRoleArn: monitoringRole.roleArn,
});