Interface ServerlessClusterProps
- All Superinterfaces:
software.amazon.jsii.JsiiSerializable
- All Known Implementing Classes:
ServerlessClusterProps.Jsii$Proxy
Example:
// Build a data source for AppSync to access the database. GraphqlApi api; // Create username and password secret for DB Cluster DatabaseSecret secret = DatabaseSecret.Builder.create(this, "AuroraSecret") .username("clusteradmin") .build(); // The VPC to place the cluster in Vpc vpc = new Vpc(this, "AuroraVpc"); // Create the serverless cluster, provide all values needed to customise the database. ServerlessCluster cluster = ServerlessCluster.Builder.create(this, "AuroraCluster") .engine(DatabaseClusterEngine.AURORA_MYSQL) .vpc(vpc) .credentials(Map.of("username", "clusteradmin")) .clusterIdentifier("db-endpoint-test") .defaultDatabaseName("demos") .build(); RdsDataSource rdsDS = api.addRdsDataSource("rds", cluster, secret, "demos"); // Set up a resolver for an RDS query. rdsDS.createResolver("QueryGetDemosRdsResolver", BaseResolverProps.builder() .typeName("Query") .fieldName("getDemosRds") .requestMappingTemplate(MappingTemplate.fromString("\n {\n \"version\": \"2018-05-29\",\n \"statements\": [\n \"SELECT * FROM demos\"\n ]\n }\n ")) .responseMappingTemplate(MappingTemplate.fromString("\n $utils.toJson($utils.rds.toJsonObject($ctx.result)[0])\n ")) .build()); // Set up a resolver for an RDS mutation. rdsDS.createResolver("MutationAddDemoRdsResolver", BaseResolverProps.builder() .typeName("Mutation") .fieldName("addDemoRds") .requestMappingTemplate(MappingTemplate.fromString("\n {\n \"version\": \"2018-05-29\",\n \"statements\": [\n \"INSERT INTO demos VALUES (:id, :version)\",\n \"SELECT * WHERE id = :id\"\n ],\n \"variableMap\": {\n \":id\": $util.toJson($util.autoId()),\n \":version\": $util.toJson($ctx.args.version)\n }\n }\n ")) .responseMappingTemplate(MappingTemplate.fromString("\n $utils.toJson($utils.rds.toJsonObject($ctx.result)[1][0])\n ")) .build());
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic final class
A builder forServerlessClusterProps
static final class
An implementation forServerlessClusterProps
-
Method Summary
Modifier and TypeMethodDescriptionbuilder()
default Duration
The number of days during which automatic DB snapshots are retained.default String
An optional identifier for the cluster.default Boolean
Whether to copy tags to the snapshot when a snapshot is created.default Credentials
Credentials for the administrative user.default String
Name of a database which is automatically created inside the cluster.default Boolean
Indicates whether the DB cluster should have deletion protection enabled.default Boolean
Whether to enable the Data API.What kind of database to start.default IParameterGroup
Additional parameters to pass to the database engine.default RemovalPolicy
The removal policy to apply when the cluster and its instances are removed from the stack or replaced during an update.default ServerlessScalingOptions
Scaling configuration of an Aurora Serverless database cluster.default List<ISecurityGroup>
Security group.default IKey
The KMS key for storage encryption.default ISubnetGroup
Existing subnet group for the cluster.default IVpc
getVpc()
The VPC that this Aurora Serverless v1 Cluster has been created in.default SubnetSelection
Where to place the instances within the VPC.Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Method Details
-
getEngine
What kind of database to start. -
getBackupRetention
The number of days during which automatic DB snapshots are retained.Automatic backup retention cannot be disabled on serverless clusters. Must be a value from 1 day to 35 days.
Default: Duration.days(1)
-
getClusterIdentifier
An optional identifier for the cluster.Default: - A name is automatically generated.
-
getCopyTagsToSnapshot
Whether to copy tags to the snapshot when a snapshot is created.Default: - true
-
getCredentials
Credentials for the administrative user.Default: - A username of 'admin' and SecretsManager-generated password
-
getDefaultDatabaseName
Name of a database which is automatically created inside the cluster.Default: - Database is not created in cluster.
-
getDeletionProtection
Indicates whether the DB cluster should have deletion protection enabled.Default: - true if removalPolicy is RETAIN, false otherwise
-
getEnableDataApi
Whether to enable the Data API.Default: false
- See Also:
-
getParameterGroup
Additional parameters to pass to the database engine.Default: - no parameter group.
-
getRemovalPolicy
The removal policy to apply when the cluster and its instances are removed from the stack or replaced during an update.Default: - RemovalPolicy.SNAPSHOT (remove the cluster and instances, but retain a snapshot of the data)
-
getScaling
Scaling configuration of an Aurora Serverless database cluster.Default: - Serverless cluster is automatically paused after 5 minutes of being idle. minimum capacity: 2 ACU maximum capacity: 16 ACU
-
getSecurityGroups
Security group.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.
-
getStorageEncryptionKey
The KMS key for storage encryption.Default: - the default master key will be used for storage encryption
-
getSubnetGroup
Existing subnet group for the cluster.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
-
getVpc
The VPC that this Aurora Serverless v1 Cluster has been created in.Default: - the default VPC in the account and region will be used
-
getVpcSubnets
Where to place the instances within the VPC.If provided, the
vpc
property must also be specified.Default: - the VPC default strategy if not specified.
-
builder
- Returns:
- a
ServerlessClusterProps.Builder
ofServerlessClusterProps
-