Interface DatabaseClusterProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
DatabaseClusterProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:40.335Z") @Stability(Experimental) public interface DatabaseClusterProps extends software.amazon.jsii.JsiiSerializable
(experimental) Properties for a new database cluster.

Example:

 DatabaseCluster cluster = DatabaseCluster.Builder.create(this, "Database")
         .vpc(vpc)
         .instanceType(InstanceType.R5_LARGE)
         .instances(2)
         .build();
 
  • Method Details

    • getInstanceType

      @Stability(Experimental) @NotNull InstanceType getInstanceType()
      (experimental) What type of instance to start for the replicas.
    • getVpc

      @Stability(Experimental) @NotNull IVpc getVpc()
      (experimental) What subnets to run the Neptune instances in.

      Must be at least 2 subnets in two different AZs.

    • getAssociatedRoles

      @Stability(Experimental) @Nullable default List<IRole> getAssociatedRoles()
      (experimental) A list of AWS Identity and Access Management (IAM) role that can be used by the cluster to access other AWS services.

      Default: - No role is attached to the cluster.

    • getAutoMinorVersionUpgrade

      @Stability(Experimental) @Nullable default Boolean getAutoMinorVersionUpgrade()
      (experimental) If set to true, Neptune will automatically update the engine of the entire cluster to the latest minor version after a stabilization window of 2 to 3 weeks.

      Default: - false

    • getBackupRetention

      @Stability(Experimental) @Nullable default Duration getBackupRetention()
      (experimental) How many days to retain the backup.

      Default: - cdk.Duration.days(1)

    • getClusterParameterGroup

      @Stability(Experimental) @Nullable default IClusterParameterGroup getClusterParameterGroup()
      (experimental) Additional parameters to pass to the database engine.

      Default: - No parameter group.

    • getDbClusterName

      @Stability(Experimental) @Nullable default String getDbClusterName()
      (experimental) An optional identifier for the cluster.

      Default: - A name is automatically generated.

    • getDeletionProtection

      @Stability(Experimental) @Nullable default Boolean getDeletionProtection()
      (experimental) Indicates whether the DB cluster should have deletion protection enabled.

      Default: - true if ``removalPolicy`` is RETAIN, false otherwise

    • getEngineVersion

      @Stability(Experimental) @Nullable default EngineVersion getEngineVersion()
      (experimental) What version of the database to start.

      Default: - The default engine version.

    • getIamAuthentication

      @Stability(Experimental) @Nullable default Boolean getIamAuthentication()
      (experimental) Map AWS Identity and Access Management (IAM) accounts to database accounts.

      Default: - `false`

    • getInstanceIdentifierBase

      @Stability(Experimental) @Nullable default String getInstanceIdentifierBase()
      (experimental) Base identifier for instances.

      Every replica is named by appending the replica number to this string, 1-based.

      Default: - `dbClusterName` is used with the word "Instance" appended. If `dbClusterName` is not provided, the identifier is automatically generated.

    • getInstances

      @Stability(Experimental) @Nullable default Number getInstances()
      (experimental) Number of Neptune compute instances.

      Default: 1

    • getKmsKey

      @Stability(Experimental) @Nullable default IKey getKmsKey()
      (experimental) The KMS key for storage encryption.

      Default: - default master key.

    • getParameterGroup

      @Stability(Experimental) @Nullable default IParameterGroup getParameterGroup()
      (experimental) The DB parameter group to associate with the instance.

      Default: no parameter group

    • getPort

      @Stability(Experimental) @Nullable default Number getPort()
      (experimental) The port the Neptune cluster will listen on.

      Default: - The default engine port

    • getPreferredBackupWindow

      @Stability(Experimental) @Nullable default String getPreferredBackupWindow()
      (experimental) A daily time range in 24-hours UTC format in which backups preferably execute.

      Must be at least 30 minutes long.

      Example: '01:00-02:00'

      Default: - a 30-minute window selected at random from an 8-hour block of time for each AWS Region. To see the time blocks available, see

    • getPreferredMaintenanceWindow

      @Stability(Experimental) @Nullable default String getPreferredMaintenanceWindow()
      (experimental) A weekly time range in which maintenance should preferably execute.

      Must be at least 30 minutes long.

      Example: 'tue:04:17-tue:04:47'

      Default: - 30-minute window selected at random from an 8-hour block of time for each AWS Region, occurring on a random day of the week.

    • getRemovalPolicy

      @Stability(Experimental) @Nullable default RemovalPolicy getRemovalPolicy()
      (experimental) The removal policy to apply when the cluster and its instances are removed or replaced during a stack update, or when the stack is deleted.

      This removal policy also applies to the implicit security group created for the cluster if one is not supplied as a parameter.

      Default: - Retain cluster.

    • getSecurityGroups

      @Stability(Experimental) @Nullable default List<ISecurityGroup> getSecurityGroups()
      (experimental) Security group.

      Default: a new security group is created.

    • getStorageEncrypted

      @Stability(Experimental) @Nullable default Boolean getStorageEncrypted()
      (experimental) Whether to enable storage encryption.

      Default: true

    • getSubnetGroup

      @Stability(Experimental) @Nullable default ISubnetGroup getSubnetGroup()
      (experimental) Existing subnet group for the cluster.

      Default: - a new subnet group will be created.

    • getVpcSubnets

      @Stability(Experimental) @Nullable default SubnetSelection getVpcSubnets()
      (experimental) Where to place the instances within the VPC.

      Default: private subnets

    • builder

      @Stability(Experimental) static DatabaseClusterProps.Builder builder()
      Returns:
      a DatabaseClusterProps.Builder of DatabaseClusterProps