documentdb-cluster
cloudposse/documentdb-cluster/aws
Terraform module to provision a DocumentDB cluster on AWS
Terraform module to provision an Amazon DocumentDB cluster. > [!TIP] > #### 👽 Use Atmos with Terraform > Cloud Posse uses atmos to easily orchestrate multiple environments using Terraform. > Works with Github Actions, Atlantis, or Spacelift. > > > Watch demo of using Atmos with Terraform > > Example of running atmos to manage infrastructure from our Quick Start tutorial. > Usage For a complete example, see examples/complete. For automated tests of the complete example using bats and Terratest (which tests and deploys the example on AWS), see test. ```hcl module "documentdb_cluster" { source = "cloudposse/documentdb-cluster/aws" # Cloud Posse recommends pinning every module to a specific version # version = "x.x.x" namespace = "eg" stage = "testing" name = "docdb" cluster_size = 3 master_us
| Name | Type | Description | Default |
|---|---|---|---|
| subnet_ids | list(string) | List of VPC subnet IDs to place DocumentDB instances in | required |
| vpc_id | string | VPC ID to create the cluster in (e.g. `vpc-a22222ee`) | required |
| external_security_group_id_list | list(string) | List of external security group IDs to attach to the Document DB | [] |
| reader_dns_name | string | Name of the reader endpoint CNAME record to create in the parent DNS zone specif | "" |
| ssm_parameter_enabled | bool | Whether an SSM parameter store value is created to store the database password. | false |
| allowed_security_groups | list(string) | List of existing Security Groups to be allowed to connect to the DocumentDB clus | [] |
| enabled | bool | Set to false to prevent the module from creating any resources | null |
| descriptor_formats | any | Describe additional descriptors to be output in the `descriptors` output map. Ma | {} |
| instance_class | string | The instance class to use. For more details, see https://docs.aws.amazon.com/doc | "db.r4.large" |
| label_key_case | string | Controls the letter case of the `tags` keys (label names) for tags generated by | null |
| allow_ingress_from_self | bool | Adds the Document DB security group itself as a source for ingress rules. Useful | false |
| manage_master_user_password | bool | Whether to manage the master user password using AWS Secrets Manager. | null |
| egress_protocol | string | DocumentDB protocol for egress (e.g. `-1`, `tcp`) | "-1" |
| master_password | string | (Required unless a snapshot_identifier is provided) Password for the master DB u | null |
| preferred_maintenance_window | string | The window to perform maintenance in. Syntax: `ddd:hh24:mi-ddd:hh24:mi`. | "Mon:22:00-Mon:23:00" |
| auto_minor_version_upgrade | bool | Specifies whether any minor engine upgrades will be applied automatically to the | true |
| ca_cert_identifier | string | The identifier of the CA certificate for the DB instance | null |
| tags | map(string) | Additional tags (e.g. `{'BusinessUnit': 'XYZ'}`). Neither the tag keys nor the t | {} |
| ssm_parameter_path_prefix | string | The path prefix for the created SSM parameter e.g. '/docdb/master-password/dev'. | "/docdb/master-password/" |
| allowed_cidr_blocks | list(string) | List of CIDR blocks to be allowed to connect to the DocumentDB cluster | [] |
| context | any | Single object for setting entire context at once. See description of individual | {
"additional_tag_map": {},
"attribu |
| name | string | ID element. Usually the component or solution name, e.g. 'app' or 'jenkins'. Thi | null |
| … and 10 more inputs | |||
arn — Amazon Resource Name (ARN) of the clustermaster_host — DB master hostnamesecurity_group_arn — ARN of the DocumentDB cluster Security Groupmaster_password — Password for the master DB user. If `manage_master_user_password` is set to true, this will be set tendpoint — Endpoint of the DocumentDB clusterreader_endpoint — A read-only endpoint of the DocumentDB cluster, automatically load-balanced across replicascluster_members — List of DocumentDB Instances that are a part of this clusterreplicas_host — DB replicas hostnamesecurity_group_id — ID of the DocumentDB cluster Security Groupsecurity_group_name — Name of the DocumentDB cluster Security Groupmaster_username — Username for the master DB usercluster_name — Cluster IdentifierTerraform Module to define a consistent naming convention by (namespace, stage,
Terraform module for provisioning an EKS cluster
Terraform module to generate well-formed JSON documents (container definitions)
Terraform module that provision an S3 bucket to store the terraform.tfstate file