| Name | Version |
|---|---|
| terraform | >= 1.0 |
| aws | ~> 5.0 |
| Name | Version |
|---|---|
| aws | ~> 5.0 |
| Name | Source | Version |
|---|---|---|
| db | terraform-aws-modules/rds/aws | ~> 6.0 |
| Name | Type |
|---|---|
| aws_kms_alias.rds | resource |
| aws_kms_key.rds | resource |
| aws_security_group.database | resource |
| aws_security_group_rule.allow_all_egress | resource |
| aws_security_group_rule.eks_cluster_postgres_ingress | resource |
| aws_security_group_rule.eks_nodes_postgres_ingress | resource |
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| allocated_storage | Allocated storage for the RDS instance (in GB) | number |
50 |
no |
| backup_retention_period | Number of days to retain backups | number |
7 |
no |
| backup_window | Preferred backup window | string |
"03:00-06:00" |
no |
| cluster_name | Name of the EKS cluster | string |
n/a | yes |
| cluster_security_group_id | Security group ID of the EKS cluster | string |
n/a | yes |
| create_kms_key | Whether to create a new KMS key for RDS encryption. If false and kms_key_id is not specified, the default AWS managed key will be used. | bool |
false |
no |
| database_name | Name of the database to create | string |
n/a | yes |
| database_password | Password for the database | string |
n/a | yes |
| database_subnet_ids | List of subnet IDs for the database | list(string) |
n/a | yes |
| database_username | Username for the database | string |
n/a | yes |
| instance_class | Instance class for the RDS instance | string |
n/a | yes |
| kms_key_deletion_window_in_days | The waiting period, specified in number of days, after which AWS KMS deletes the KMS key. Valid values are 7-30 days. | number |
30 |
no |
| kms_key_enable_rotation | Specifies whether key rotation is enabled for the KMS key. | bool |
true |
no |
| kms_key_id | The ARN for the KMS encryption key. If not specified and create_kms_key is false, the default AWS managed key will be used. | string |
null |
no |
| maintenance_window | Preferred maintenance window | string |
"Mon:00:00-Mon:03:00" |
no |
| max_allocated_storage | Maximum storage for autoscaling (in GB) | number |
100 |
no |
| multi_az | Enable multi-AZ deployment | bool |
false |
no |
| name_prefix | Prefix for all resource names | string |
n/a | yes |
| node_security_group_id | Security group ID of the EKS nodes | string |
n/a | yes |
| postgres_version | Version of PostgreSQL to use | string |
"15" |
no |
| tags | Tags to apply to all resources | map(string) |
{} |
no |
| vpc_id | ID of the VPC | string |
n/a | yes |
| Name | Description |
|---|---|
| db_instance_endpoint | The connection endpoint for the RDS instance |
| db_instance_id | The RDS instance ID |
| db_instance_name | The database name |
| db_instance_port | The database port |
| db_instance_username | The master username for the database |
| db_security_group_id | The security group ID of the database |
| kms_key_alias | The alias of the KMS key used for RDS encryption |
| kms_key_arn | The ARN of the KMS key used for RDS encryption |
| kms_key_id | The ID of the KMS key used for RDS encryption (only if created by this module) |