UNPKG

aws-cdk-lib

Version:

Version 2 of the AWS Cloud Development Kit library

244 lines (243 loc) 10.3 kB
import * as cdk from "../../core"; import * as constructs from "constructs"; import * as cfn_parse from "../../core/lib/helpers-internal"; /** * Creates a new Amazon DocumentDB elastic cluster and returns its cluster structure. * * @cloudformationResource AWS::DocDBElastic::Cluster * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html */ export declare class CfnCluster extends cdk.CfnResource implements cdk.IInspectable, cdk.ITaggable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnCluster from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnCluster; /** * @cloudformationAttribute ClusterArn */ readonly attrClusterArn: string; /** * The URL used to connect to the elastic cluster. * * @cloudformationAttribute ClusterEndpoint */ readonly attrClusterEndpoint: string; /** * The name of the Amazon DocumentDB elastic clusters administrator. */ adminUserName: string; /** * The password for the Elastic DocumentDB cluster administrator and can contain any printable ASCII characters. */ adminUserPassword?: string; /** * The authentication type used to determine where to fetch the password used for accessing the elastic cluster. */ authType: string; /** * The number of days for which automatic snapshots are retained. */ backupRetentionPeriod?: number; /** * The name of the new elastic cluster. This parameter is stored as a lowercase string. */ clusterName: string; /** * The KMS key identifier to use to encrypt the new elastic cluster. */ kmsKeyId?: string; /** * The daily time range during which automated backups are created if automated backups are enabled, as determined by `backupRetentionPeriod` . */ preferredBackupWindow?: string; /** * The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). */ preferredMaintenanceWindow?: string; /** * The number of vCPUs assigned to each elastic cluster shard. */ shardCapacity: number; /** * The number of shards assigned to the elastic cluster. */ shardCount: number; /** * The number of replica instances applying to all shards in the cluster. */ shardInstanceCount?: number; /** * The Amazon EC2 subnet IDs for the new elastic cluster. */ subnetIds?: Array<string>; /** * Tag Manager which manages the tags for this resource */ readonly tags: cdk.TagManager; /** * The tags to be assigned to the new elastic cluster. */ tagsRaw?: Array<cdk.CfnTag>; /** * A list of EC2 VPC security groups to associate with the new elastic cluster. */ vpcSecurityGroupIds?: Array<string>; /** * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnClusterProps); protected get cfnProperties(): Record<string, any>; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record<string, any>): Record<string, any>; } /** * Properties for defining a `CfnCluster` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html */ export interface CfnClusterProps { /** * The name of the Amazon DocumentDB elastic clusters administrator. * * *Constraints* : * * - Must be from 1 to 63 letters or numbers. * - The first character must be a letter. * - Cannot be a reserved word. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-adminusername */ readonly adminUserName: string; /** * The password for the Elastic DocumentDB cluster administrator and can contain any printable ASCII characters. * * *Constraints* : * * - Must contain from 8 to 100 characters. * - Cannot contain a forward slash (/), double quote ("), or the "at" symbol (@). * - A valid `AdminUserName` entry is also required. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-adminuserpassword */ readonly adminUserPassword?: string; /** * The authentication type used to determine where to fetch the password used for accessing the elastic cluster. * * Valid types are `PLAIN_TEXT` or `SECRET_ARN` . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-authtype */ readonly authType: string; /** * The number of days for which automatic snapshots are retained. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-backupretentionperiod */ readonly backupRetentionPeriod?: number; /** * The name of the new elastic cluster. This parameter is stored as a lowercase string. * * *Constraints* : * * - Must contain from 1 to 63 letters, numbers, or hyphens. * - The first character must be a letter. * - Cannot end with a hyphen or contain two consecutive hyphens. * * *Example* : `my-cluster` * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-clustername */ readonly clusterName: string; /** * The KMS key identifier to use to encrypt the new elastic cluster. * * The KMS key identifier is the Amazon Resource Name (ARN) for the KMS encryption key. If you are creating a cluster using the same Amazon account that owns this KMS encryption key, you can use the KMS key alias instead of the ARN as the KMS encryption key. * * If an encryption key is not specified, Amazon DocumentDB uses the default encryption key that KMS creates for your account. Your account has a different default encryption key for each Amazon Region. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-kmskeyid */ readonly kmsKeyId?: string; /** * The daily time range during which automated backups are created if automated backups are enabled, as determined by `backupRetentionPeriod` . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-preferredbackupwindow */ readonly preferredBackupWindow?: string; /** * The weekly time range during which system maintenance can occur, in Universal Coordinated Time (UTC). * * *Format* : `ddd:hh24:mi-ddd:hh24:mi` * * *Default* : a 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. * * *Valid days* : Mon, Tue, Wed, Thu, Fri, Sat, Sun * * *Constraints* : Minimum 30-minute window. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-preferredmaintenancewindow */ readonly preferredMaintenanceWindow?: string; /** * The number of vCPUs assigned to each elastic cluster shard. * * Maximum is 64. Allowed values are 2, 4, 8, 16, 32, 64. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-shardcapacity */ readonly shardCapacity: number; /** * The number of shards assigned to the elastic cluster. * * Maximum is 32. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-shardcount */ readonly shardCount: number; /** * The number of replica instances applying to all shards in the cluster. * * A `shardInstanceCount` value of 1 means there is one writer instance, and any additional instances are replicas that can be used for reads and to improve availability. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-shardinstancecount */ readonly shardInstanceCount?: number; /** * The Amazon EC2 subnet IDs for the new elastic cluster. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-subnetids */ readonly subnetIds?: Array<string>; /** * The tags to be assigned to the new elastic cluster. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-tags */ readonly tags?: Array<cdk.CfnTag>; /** * A list of EC2 VPC security groups to associate with the new elastic cluster. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-docdbelastic-cluster.html#cfn-docdbelastic-cluster-vpcsecuritygroupids */ readonly vpcSecurityGroupIds?: Array<string>; }