Class ServerlessClusterProps
Properties for a new Aurora Serverless Cluster.
Inheritance
Implements
Namespace: Amazon.CDK.AWS.RDS
Assembly: Amazon.CDK.AWS.RDS.dll
Syntax (csharp)
public class ServerlessClusterProps : Object, IServerlessClusterProps
Syntax (vb)
Public Class ServerlessClusterProps
Inherits Object
Implements IServerlessClusterProps
Remarks
ExampleMetadata: infused
Examples
Vpc vpc;
Code code;
var cluster = new ServerlessCluster(this, "AnotherCluster", new ServerlessClusterProps {
Engine = DatabaseClusterEngine.AURORA_MYSQL,
Vpc = vpc, // this parameter is optional for serverless Clusters
EnableDataApi = true
});
var fn = new Function(this, "MyFunction", new FunctionProps {
Runtime = Runtime.NODEJS_14_X,
Handler = "index.handler",
Code = code,
Environment = new Dictionary<string, string> {
{ "CLUSTER_ARN", cluster.ClusterArn },
{ "SECRET_ARN", cluster.Secret.SecretArn }
}
});
cluster.GrantDataApiAccess(fn);
Synopsis
Constructors
ServerlessClusterProps() |
Properties
BackupRetention | The number of days during which automatic DB snapshots are retained. |
ClusterIdentifier | An optional identifier for the cluster. |
Credentials | Credentials for the administrative user. |
DefaultDatabaseName | Name of a database which is automatically created inside the cluster. |
DeletionProtection | Indicates whether the DB cluster should have deletion protection enabled. |
EnableDataApi | Whether to enable the Data API. |
Engine | What kind of database to start. |
ParameterGroup | Additional parameters to pass to the database engine. |
RemovalPolicy | The removal policy to apply when the cluster and its instances are removed from the stack or replaced during an update. |
Scaling | Scaling configuration of an Aurora Serverless database cluster. |
SecurityGroups | Security group. |
StorageEncryptionKey | The KMS key for storage encryption. |
SubnetGroup | Existing subnet group for the cluster. |
Vpc | The VPC that this Aurora Serverless cluster has been created in. |
VpcSubnets | Where to place the instances within the VPC. |
Constructors
ServerlessClusterProps()
public ServerlessClusterProps()
Properties
BackupRetention
The number of days during which automatic DB snapshots are retained.
public Duration BackupRetention { get; set; }
Property Value
Remarks
Automatic backup retention cannot be disabled on serverless clusters. Must be a value from 1 day to 35 days.
Default: Duration.days(1)
ClusterIdentifier
An optional identifier for the cluster.
public string ClusterIdentifier { get; set; }
Property Value
System.String
Remarks
Default: - A name is automatically generated.
Credentials
Credentials for the administrative user.
public Credentials Credentials { get; set; }
Property Value
Remarks
Default: - A username of 'admin' and SecretsManager-generated password
DefaultDatabaseName
Name of a database which is automatically created inside the cluster.
public string DefaultDatabaseName { get; set; }
Property Value
System.String
Remarks
Default: - Database is not created in cluster.
DeletionProtection
Indicates whether the DB cluster should have deletion protection enabled.
public Nullable<bool> DeletionProtection { get; set; }
Property Value
System.Nullable<System.Boolean>
Remarks
Default: - true if removalPolicy is RETAIN, false otherwise
EnableDataApi
Whether to enable the Data API.
public Nullable<bool> EnableDataApi { get; set; }
Property Value
System.Nullable<System.Boolean>
Remarks
Default: false
See: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/data-api.html
Engine
What kind of database to start.
public IClusterEngine Engine { get; set; }
Property Value
ParameterGroup
Additional parameters to pass to the database engine.
public IParameterGroup ParameterGroup { get; set; }
Property Value
Remarks
Default: - no parameter group.
RemovalPolicy
The removal policy to apply when the cluster and its instances are removed from the stack or replaced during an update.
public Nullable<RemovalPolicy> RemovalPolicy { get; set; }
Property Value
System.Nullable<RemovalPolicy>
Remarks
Default: - RemovalPolicy.SNAPSHOT (remove the cluster and instances, but retain a snapshot of the data)
Scaling
Scaling configuration of an Aurora Serverless database cluster.
public IServerlessScalingOptions Scaling { get; set; }
Property Value
Remarks
Default: - Serverless cluster is automatically paused after 5 minutes of being idle. minimum capacity: 2 ACU maximum capacity: 16 ACU
SecurityGroups
Security group.
public ISecurityGroup[] SecurityGroups { get; set; }
Property Value
Remarks
Default: - a new security group is created if vpc
was provided.
If the vpc
property was not provided, no VPC security groups will be associated with the DB cluster.
StorageEncryptionKey
The KMS key for storage encryption.
public IKey StorageEncryptionKey { get; set; }
Property Value
Remarks
Default: - the default master key will be used for storage encryption
SubnetGroup
Existing subnet group for the cluster.
public ISubnetGroup SubnetGroup { get; set; }
Property Value
Remarks
Default: - a new subnet group is created if vpc
was provided.
If the vpc
property was not provided, no subnet group will be associated with the DB cluster
Vpc
The VPC that this Aurora Serverless cluster has been created in.
public IVpc Vpc { get; set; }
Property Value
Remarks
Default: - the default VPC in the account and region will be used
VpcSubnets
Where to place the instances within the VPC.
public ISubnetSelection VpcSubnets { get; set; }
Property Value
Remarks
If provided, the vpc
property must also be specified.
Default: - the VPC default strategy if not specified.