import * as pulumi from "@pulumi/pulumi"; /** * Provides an DocumentDB Cluster Resource Instance. A Cluster Instance Resource defines attributes that are specific to a single instance in a DocumentDB Cluster. * * You do not designate a primary and subsequent replicas. Instead, you simply add DocumentDB Instances and DocumentDB manages the replication. You can use the count meta-parameter to make multiple instances and join them all to the same DocumentDB Cluster, or you may specify different Cluster Instance resources with various `instanceClass` sizes. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as aws from "@pulumi/aws"; * * const _default = new aws.docdb.Cluster("default", { * clusterIdentifier: "docdb-cluster-demo", * availabilityZones: [ * "us-west-2a", * "us-west-2b", * "us-west-2c", * ], * masterUsername: "foo", * masterPassword: "barbut8chars", * }); * const clusterInstances: aws.docdb.ClusterInstance[] = []; * for (let range = 0; range < 2; range++) { * clusterInstances.push(new aws.docdb.ClusterInstance(`cluster_instances-${range}`, { * identifier: `docdb-cluster-demo-${range}`, * clusterIdentifier: _default.id, * instanceClass: "db.r5.large", * })); * } * ``` * * ## Import * * Using `pulumi import`, import DocumentDB Cluster Instances using the `identifier`. For example: * * ```sh * $ pulumi import aws:docdb/clusterInstance:ClusterInstance prod_instance_1 aurora-cluster-instance-1 * ``` */ export declare class ClusterInstance extends pulumi.CustomResource { /** * Get an existing ClusterInstance resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: ClusterInstanceState, opts?: pulumi.CustomResourceOptions): ClusterInstance; /** * Returns true if the given object is an instance of ClusterInstance. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is ClusterInstance; /** * Whether any database modifications are applied immediately, or during the next maintenance window. Default is`false`. */ readonly applyImmediately: pulumi.Output; /** * ARN of cluster instance */ readonly arn: pulumi.Output; /** * Parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades regardless of the value set (see [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_DBInstance.html)). Default `true`. */ readonly autoMinorVersionUpgrade: pulumi.Output; /** * EC2 Availability Zone that the DB instance is created in. See [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_CreateDBInstance.html) about the details. */ readonly availabilityZone: pulumi.Output; /** * Identifier of the certificate authority (CA) certificate for the DB instance. */ readonly caCertIdentifier: pulumi.Output; /** * Whether to restart the DB instance when rotating its SSL/TLS certificate. By default, AWS restarts the DB instance when you rotate your SSL/TLS certificate. The certificate is not updated until the DB instance is restarted. Set to `false` only if you are not using SSL/TLS to connect to the DB instance. */ readonly certificateRotationRestart: pulumi.Output; /** * Identifier of the `aws.docdb.Cluster` in which to launch this instance. */ readonly clusterIdentifier: pulumi.Output; /** * Copy all DB instance `tags` to snapshots. Default is `false`. */ readonly copyTagsToSnapshot: pulumi.Output; /** * DB subnet group to associate with this DB instance. */ readonly dbSubnetGroupName: pulumi.Output; /** * Region-unique, immutable identifier for the DB instance. */ readonly dbiResourceId: pulumi.Output; /** * Value that indicates whether to enable Performance Insights for the DB Instance. Default `false`. See [docs] (https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html) about the details. */ readonly enablePerformanceInsights: pulumi.Output; /** * DNS address for this instance. May not be writable */ readonly endpoint: pulumi.Output; /** * Name of the database engine to be used for the DocumentDB instance. Defaults to `docdb`. Valid Values: `docdb`. */ readonly engine: pulumi.Output; /** * Database engine version */ readonly engineVersion: pulumi.Output; /** * The identifier for the DocumentDB instance, if omitted, the provider will assign a random, unique identifier. */ readonly identifier: pulumi.Output; /** * Creates a unique identifier beginning with the specified prefix. Conflicts with `identifier`. */ readonly identifierPrefix: pulumi.Output; /** * Instance class to use. For details on CPU and memory, see [Scaling for DocumentDB Instances](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-cluster-manage-performance.html#db-cluster-manage-scaling-instance). See the `aws.docdb.getOrderableDbInstance` data source. See [AWS Documentation](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-instance-classes.html#db-instance-class-specs) for complete details. */ readonly instanceClass: pulumi.Output; /** * ARN for the KMS encryption key if one is set to the cluster. */ readonly kmsKeyId: pulumi.Output; /** * KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default KMS key. */ readonly performanceInsightsKmsKeyId: pulumi.Output; /** * Database port */ readonly port: pulumi.Output; /** * Daily time range during which automated backups are created if automated backups are enabled. */ readonly preferredBackupWindow: pulumi.Output; /** * Window to perform maintenance in. Syntax: "ddd:hh24:mi-ddd:hh24:mi". Eg: "Mon:00:00-Mon:03:00". */ readonly preferredMaintenanceWindow: pulumi.Output; /** * Failover Priority setting on instance level. Default `0`. The reader who has lower tier has higher priority to get promoter to writer. */ readonly promotionTier: pulumi.Output; readonly publiclyAccessible: pulumi.Output; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ readonly region: pulumi.Output; /** * Whether the DB cluster is encrypted. */ readonly storageEncrypted: pulumi.Output; /** * Map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ readonly tags: pulumi.Output<{ [key: string]: string; } | undefined>; /** * Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ readonly tagsAll: pulumi.Output<{ [key: string]: string; }>; /** * Whether this instance is writable. `False` indicates this instance is a read replica. */ readonly writer: pulumi.Output; /** * Create a ClusterInstance resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: ClusterInstanceArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering ClusterInstance resources. */ export interface ClusterInstanceState { /** * Whether any database modifications are applied immediately, or during the next maintenance window. Default is`false`. */ applyImmediately?: pulumi.Input; /** * ARN of cluster instance */ arn?: pulumi.Input; /** * Parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades regardless of the value set (see [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_DBInstance.html)). Default `true`. */ autoMinorVersionUpgrade?: pulumi.Input; /** * EC2 Availability Zone that the DB instance is created in. See [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_CreateDBInstance.html) about the details. */ availabilityZone?: pulumi.Input; /** * Identifier of the certificate authority (CA) certificate for the DB instance. */ caCertIdentifier?: pulumi.Input; /** * Whether to restart the DB instance when rotating its SSL/TLS certificate. By default, AWS restarts the DB instance when you rotate your SSL/TLS certificate. The certificate is not updated until the DB instance is restarted. Set to `false` only if you are not using SSL/TLS to connect to the DB instance. */ certificateRotationRestart?: pulumi.Input; /** * Identifier of the `aws.docdb.Cluster` in which to launch this instance. */ clusterIdentifier?: pulumi.Input; /** * Copy all DB instance `tags` to snapshots. Default is `false`. */ copyTagsToSnapshot?: pulumi.Input; /** * DB subnet group to associate with this DB instance. */ dbSubnetGroupName?: pulumi.Input; /** * Region-unique, immutable identifier for the DB instance. */ dbiResourceId?: pulumi.Input; /** * Value that indicates whether to enable Performance Insights for the DB Instance. Default `false`. See [docs] (https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html) about the details. */ enablePerformanceInsights?: pulumi.Input; /** * DNS address for this instance. May not be writable */ endpoint?: pulumi.Input; /** * Name of the database engine to be used for the DocumentDB instance. Defaults to `docdb`. Valid Values: `docdb`. */ engine?: pulumi.Input; /** * Database engine version */ engineVersion?: pulumi.Input; /** * The identifier for the DocumentDB instance, if omitted, the provider will assign a random, unique identifier. */ identifier?: pulumi.Input; /** * Creates a unique identifier beginning with the specified prefix. Conflicts with `identifier`. */ identifierPrefix?: pulumi.Input; /** * Instance class to use. For details on CPU and memory, see [Scaling for DocumentDB Instances](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-cluster-manage-performance.html#db-cluster-manage-scaling-instance). See the `aws.docdb.getOrderableDbInstance` data source. See [AWS Documentation](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-instance-classes.html#db-instance-class-specs) for complete details. */ instanceClass?: pulumi.Input; /** * ARN for the KMS encryption key if one is set to the cluster. */ kmsKeyId?: pulumi.Input; /** * KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default KMS key. */ performanceInsightsKmsKeyId?: pulumi.Input; /** * Database port */ port?: pulumi.Input; /** * Daily time range during which automated backups are created if automated backups are enabled. */ preferredBackupWindow?: pulumi.Input; /** * Window to perform maintenance in. Syntax: "ddd:hh24:mi-ddd:hh24:mi". Eg: "Mon:00:00-Mon:03:00". */ preferredMaintenanceWindow?: pulumi.Input; /** * Failover Priority setting on instance level. Default `0`. The reader who has lower tier has higher priority to get promoter to writer. */ promotionTier?: pulumi.Input; publiclyAccessible?: pulumi.Input; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input; /** * Whether the DB cluster is encrypted. */ storageEncrypted?: pulumi.Input; /** * Map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block. */ tagsAll?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; /** * Whether this instance is writable. `False` indicates this instance is a read replica. */ writer?: pulumi.Input; } /** * The set of arguments for constructing a ClusterInstance resource. */ export interface ClusterInstanceArgs { /** * Whether any database modifications are applied immediately, or during the next maintenance window. Default is`false`. */ applyImmediately?: pulumi.Input; /** * Parameter does not apply to Amazon DocumentDB. Amazon DocumentDB does not perform minor version upgrades regardless of the value set (see [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_DBInstance.html)). Default `true`. */ autoMinorVersionUpgrade?: pulumi.Input; /** * EC2 Availability Zone that the DB instance is created in. See [docs](https://docs.aws.amazon.com/documentdb/latest/developerguide/API_CreateDBInstance.html) about the details. */ availabilityZone?: pulumi.Input; /** * Identifier of the certificate authority (CA) certificate for the DB instance. */ caCertIdentifier?: pulumi.Input; /** * Whether to restart the DB instance when rotating its SSL/TLS certificate. By default, AWS restarts the DB instance when you rotate your SSL/TLS certificate. The certificate is not updated until the DB instance is restarted. Set to `false` only if you are not using SSL/TLS to connect to the DB instance. */ certificateRotationRestart?: pulumi.Input; /** * Identifier of the `aws.docdb.Cluster` in which to launch this instance. */ clusterIdentifier: pulumi.Input; /** * Copy all DB instance `tags` to snapshots. Default is `false`. */ copyTagsToSnapshot?: pulumi.Input; /** * Value that indicates whether to enable Performance Insights for the DB Instance. Default `false`. See [docs] (https://docs.aws.amazon.com/documentdb/latest/developerguide/performance-insights.html) about the details. */ enablePerformanceInsights?: pulumi.Input; /** * Name of the database engine to be used for the DocumentDB instance. Defaults to `docdb`. Valid Values: `docdb`. */ engine?: pulumi.Input; /** * The identifier for the DocumentDB instance, if omitted, the provider will assign a random, unique identifier. */ identifier?: pulumi.Input; /** * Creates a unique identifier beginning with the specified prefix. Conflicts with `identifier`. */ identifierPrefix?: pulumi.Input; /** * Instance class to use. For details on CPU and memory, see [Scaling for DocumentDB Instances](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-cluster-manage-performance.html#db-cluster-manage-scaling-instance). See the `aws.docdb.getOrderableDbInstance` data source. See [AWS Documentation](https://docs.aws.amazon.com/documentdb/latest/developerguide/db-instance-classes.html#db-instance-class-specs) for complete details. */ instanceClass: pulumi.Input; /** * KMS key identifier is the key ARN, key ID, alias ARN, or alias name for the KMS key. If you do not specify a value for PerformanceInsightsKMSKeyId, then Amazon DocumentDB uses your default KMS key. */ performanceInsightsKmsKeyId?: pulumi.Input; /** * Window to perform maintenance in. Syntax: "ddd:hh24:mi-ddd:hh24:mi". Eg: "Mon:00:00-Mon:03:00". */ preferredMaintenanceWindow?: pulumi.Input; /** * Failover Priority setting on instance level. Default `0`. The reader who has lower tier has higher priority to get promoter to writer. */ promotionTier?: pulumi.Input; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration. */ region?: pulumi.Input; /** * Map of tags to assign to the instance. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. */ tags?: pulumi.Input<{ [key: string]: pulumi.Input; } | undefined>; } //# sourceMappingURL=clusterInstance.d.ts.map