ElasticClusterArgs

data class ElasticClusterArgs(val adminUserName: Output<String>? = null, val adminUserPassword: Output<String>? = null, val authType: Output<String>? = null, val backupRetentionPeriod: Output<Int>? = null, val kmsKeyId: Output<String>? = null, val name: Output<String>? = null, val preferredBackupWindow: Output<String>? = null, val preferredMaintenanceWindow: Output<String>? = null, val shardCapacity: Output<Int>? = null, val shardCount: Output<Int>? = null, val subnetIds: Output<List<String>>? = null, val tags: Output<Map<String, String>>? = null, val timeouts: Output<ElasticClusterTimeoutsArgs>? = null, val vpcSecurityGroupIds: Output<List<String>>? = null) : ConvertibleToJava<ElasticClusterArgs>

Manages an AWS DocDB (DocumentDB) Elastic Cluster.

Example Usage

Basic Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.docdb.ElasticCluster("example", {
name: "my-docdb-cluster",
adminUserName: "foo",
adminUserPassword: "mustbeeightchars",
authType: "PLAIN_TEXT",
shardCapacity: 2,
shardCount: 1,
});
import pulumi
import pulumi_aws as aws
example = aws.docdb.ElasticCluster("example",
name="my-docdb-cluster",
admin_user_name="foo",
admin_user_password="mustbeeightchars",
auth_type="PLAIN_TEXT",
shard_capacity=2,
shard_count=1)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.DocDB.ElasticCluster("example", new()
{
Name = "my-docdb-cluster",
AdminUserName = "foo",
AdminUserPassword = "mustbeeightchars",
AuthType = "PLAIN_TEXT",
ShardCapacity = 2,
ShardCount = 1,
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/docdb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := docdb.NewElasticCluster(ctx, "example", &docdb.ElasticClusterArgs{
Name: pulumi.String("my-docdb-cluster"),
AdminUserName: pulumi.String("foo"),
AdminUserPassword: pulumi.String("mustbeeightchars"),
AuthType: pulumi.String("PLAIN_TEXT"),
ShardCapacity: pulumi.Int(2),
ShardCount: pulumi.Int(1),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.docdb.ElasticCluster;
import com.pulumi.aws.docdb.ElasticClusterArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new ElasticCluster("example", ElasticClusterArgs.builder()
.name("my-docdb-cluster")
.adminUserName("foo")
.adminUserPassword("mustbeeightchars")
.authType("PLAIN_TEXT")
.shardCapacity(2)
.shardCount(1)
.build());
}
}
resources:
example:
type: aws:docdb:ElasticCluster
properties:
name: my-docdb-cluster
adminUserName: foo
adminUserPassword: mustbeeightchars
authType: PLAIN_TEXT
shardCapacity: 2
shardCount: 1

Import

Using pulumi import, import DocDB (DocumentDB) Elastic Cluster using the arn argument. For example,

$ pulumi import aws:docdb/elasticCluster:ElasticCluster example arn:aws:docdb-elastic:us-east-1:000011112222:cluster/12345678-7abc-def0-1234-56789abcdef

Constructors

Link copied to clipboard
constructor(adminUserName: Output<String>? = null, adminUserPassword: Output<String>? = null, authType: Output<String>? = null, backupRetentionPeriod: Output<Int>? = null, kmsKeyId: Output<String>? = null, name: Output<String>? = null, preferredBackupWindow: Output<String>? = null, preferredMaintenanceWindow: Output<String>? = null, shardCapacity: Output<Int>? = null, shardCount: Output<Int>? = null, subnetIds: Output<List<String>>? = null, tags: Output<Map<String, String>>? = null, timeouts: Output<ElasticClusterTimeoutsArgs>? = null, vpcSecurityGroupIds: Output<List<String>>? = null)

Properties

Link copied to clipboard
val adminUserName: Output<String>? = null

Name of the Elastic DocumentDB cluster administrator

Link copied to clipboard
val adminUserPassword: Output<String>? = null

Password for the Elastic DocumentDB cluster administrator. Can contain any printable ASCII characters. Must be at least 8 characters

Link copied to clipboard
val authType: Output<String>? = null

Authentication type for the Elastic DocumentDB cluster. Valid values are PLAIN_TEXT and SECRET_ARN

Link copied to clipboard
val backupRetentionPeriod: Output<Int>? = null

The number of days for which automatic snapshots are retained. It should be in between 1 and 35. If not specified, the default value of 1 is set.

Link copied to clipboard
val kmsKeyId: Output<String>? = null

ARN of a KMS key that is used to encrypt the Elastic DocumentDB cluster. If not specified, the default encryption key that KMS creates for your account is used.

Link copied to clipboard
val name: Output<String>? = null

Name of the Elastic DocumentDB cluster

Link copied to clipboard
val preferredBackupWindow: Output<String>? = null

The daily time range during which automated backups are created if automated backups are enabled, as determined by the backup_retention_period.

Link copied to clipboard
val preferredMaintenanceWindow: Output<String>? = null

Weekly time range during which system maintenance can occur in UTC. Format: ddd:hh24:mi-ddd:hh24:mi. If not specified, AWS will choose a random 30-minute window on a random day of the week.

Link copied to clipboard
val shardCapacity: Output<Int>? = null

Number of vCPUs assigned to each elastic cluster shard. Maximum is 64. Allowed values are 2, 4, 8, 16, 32, 64

Link copied to clipboard
val shardCount: Output<Int>? = null

Number of shards assigned to the elastic cluster. Maximum is 32 The following arguments are optional:

Link copied to clipboard
val subnetIds: Output<List<String>>? = null

IDs of subnets in which the Elastic DocumentDB Cluster operates.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

A map of tags to assign to the collection. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Link copied to clipboard
Link copied to clipboard
val vpcSecurityGroupIds: Output<List<String>>? = null

List of VPC security groups to associate with the Elastic DocumentDB Cluster

Functions

Link copied to clipboard
open override fun toJava(): ElasticClusterArgs