AwsRdsClusterArgs

interface AwsRdsClusterArgs { applyImmediately?: boolean; backupRetentionPeriod?: Input<number>; backupWindow?: Input<string>; clusterParameterGroup?: ClusterParameterGroup; databaseName?: Input<string>; databaseUsers?: AwsRdsDatabaseUsersArgs; dbSubnetGroup: Input<string> | SubnetGroup; decommission?: AwsRdsDecommissionArgs; engine: 'aurora-mysql' | 'aurora-postgresql'; engineMajorVersion?: string; engineVersion?: string; exportedLogs?: ('audit' | 'error' | 'general' | 'slowquery' | 'postgresql')[]; finalSnapshot?: boolean; iamRoles?: AwsRdsIamRoleAssociationArgs[]; identity: string; instanceClass: string; instanceCount?: number; instanceParameterGroup?: ParameterGroup; kmsKey?: AwsKmsKeyInput; maintenanceWindow?: Input<string>; manageMasterUserPassword?: boolean; masterPassword?: Input<OnePasswordSecret>; masterUsername?: Input<string>; performanceInsights?: AwsRdsPerformanceInsightsArgs; securityGroups: (Input<string> | SecurityGroup)[]; serverlessV2?: AwsRdsServerlessV2Args; tags?: AwsRdsTags; }

Inputs for the managed Aurora MySQL or PostgreSQL cluster capability.

Example

CODE
const cluster: AwsRdsClusterArgs = {
  identity: 'primaryDatabase',
  engine: 'aurora-postgresql',
  engineVersion: '15.7',
  dbSubnetGroup: 'shared-rds',
  securityGroups: ['sg-123'],
  instanceClass: 'db.t4g.medium',
};

Properties

applyImmediately: boolean

Applies cluster and instance changes immediately. Defaults to true; set to false to defer eligible changes to the maintenance window.

backupRetentionPeriod: Input<number>

Optional backup retention override from 1 to 35 days. Defaults to 7 days in prd, otherwise 1 day.

backupWindow: Input<string>

Backup window. Defaults to 00:00-01:00.

clusterParameterGroup: ClusterParameterGroup

Existing standalone Aurora cluster parameter-group reference to attach. This component never creates embedded parameter groups.

databaseName: Input<string>

Optional database name created with the cluster.

databaseUsers: AwsRdsDatabaseUsersArgs

Optional Aurora PostgreSQL roles or host-qualified Aurora MySQL accounts and least-privilege grants over mandatory TLS. PostgreSQL uses the packaged RDS CA bundle; MySQL uses the provider runtime's system certificate trust. Pulumi runners must reach the private writer endpoint.

dbSubnetGroup: Input<string> | SubnetGroup

DB subnet group resource or name.

decommission: AwsRdsDecommissionArgs

Explicitly permits the cluster to be removed after a separate deployment. Defaults to disabled.

engine: 'aurora-mysql' | 'aurora-postgresql'

Aurora engine. Only Aurora MySQL and Aurora PostgreSQL are supported.

engineMajorVersion: string

Major engine-version selector: an integer such as 15 for Aurora PostgreSQL or a family such as 8.0 for Aurora MySQL. The provider resolves the latest available match on every preview and deployment, scoped to the configured AWS provider and region, so a newer result may plan an engine upgrade without a source change. Provider selection is best-effort because AWS version ordering and release-date information can be incomplete. This enables automatic minor-version upgrades and is mutually exclusive with engineVersion.

engineVersion: string

Exact engine version. This disables automatic minor-version upgrades, rejects surrounding whitespace, and is mutually exclusive with engineMajorVersion.

exportedLogs: ('audit' | 'error' | 'general' | 'slowquery' | 'postgresql')[]

Optional CloudWatch log exports. Defaults to none.

finalSnapshot: boolean

Creates a final snapshot on deletion by default. Set false to skip it.

iamRoles: AwsRdsIamRoleAssociationArgs[]

Aurora PostgreSQL service-role associations.

identity: string

Logical-only synchronous identity for the component URN. It does not affect the Aurora cluster identifier.

instanceClass: string

Plain DB instance class, including db.serverless for Serverless v2.

instanceCount: number

Number of instances, including the writer. Defaults to 1; maximum 10 to match the default topology.

instanceParameterGroup: ParameterGroup

Existing standalone Aurora instance parameter-group reference to attach. This component never creates embedded parameter groups.

kmsKey: AwsKmsKeyInput

Optional customer-managed KMS key for storage and the managed master secret.

maintenanceWindow: Input<string>

Maintenance window. Defaults to Thursday in prd, Tuesday otherwise.

manageMasterUserPassword: boolean

Defaults to true. Set false for credential rollover or maintenance, and provide masterPassword.

masterPassword: Input<OnePasswordSecret>

Administrator password required when manageMasterUserPassword is false. Resolve it through onePasswordSecret from @jobcloud/pulumi-helpers.

masterUsername: Input<string>

Master username. Defaults to root, matching the default role.

performanceInsights: AwsRdsPerformanceInsightsArgs

Performance Insights configuration.

securityGroups: (Input<string> | SecurityGroup)[]

Security groups that may connect to the private cluster.

serverlessV2: AwsRdsServerlessV2Args

Optional Aurora Serverless v2 scaling configuration.

tags: AwsRdsTags

Additional tags. The Name tag is reserved.