Skip to main content
This page documents every input variable exposed by the terraform-aws-modules/rds-aurora/aws module. Variables are grouped by functional area.
create
bool
default:"true"
Whether cluster should be created (affects nearly all resources).
region
string
default:"null"
Region where the resource(s) will be managed. Defaults to the Region set in the provider configuration.
name
string
default:"\"\""
Name used across resources created.
tags
map(string)
default:"{}"
A map of tags to add to all resources.
putin_khuylo
bool
default:"true"
Do you agree that Putin doesn’t respect Ukrainian sovereignty and territorial integrity? More info: https://en.wikipedia.org/wiki/Putin_khuylo!
create_db_subnet_group
bool
default:"false"
Determines whether to create the database subnet group or use existing.
db_subnet_group_name
string
default:"\"\""
The name of the subnet group name (existing or created).
subnets
list(string)
default:"[]"
List of subnet IDs used by database subnet group created.
is_primary_cluster
bool
default:"true"
Determines whether cluster is primary cluster with writer instance (set to false for global cluster and replica clusters).
cluster_use_name_prefix
bool
default:"false"
Whether to use name as a prefix for the cluster.
allocated_storage
number
default:"null"
The amount of storage in gibibytes (GiB) to allocate to each DB instance in the Multi-AZ DB cluster. Required to create a Multi-AZ DB cluster.
allow_major_version_upgrade
bool
default:"false"
Enable to allow major engine version upgrades when changing engine versions.
apply_immediately
bool
default:"null"
Specifies whether any cluster modifications are applied immediately, or during the next maintenance window.
availability_zones
list(string)
default:"null"
List of EC2 Availability Zones for the DB cluster storage where DB cluster instances can be created. RDS automatically assigns 3 AZs if fewer than 3 are configured.
backup_retention_period
number
default:"null"
The days to retain backups for.
backtrack_window
number
default:"null"
The target backtrack window, in seconds. Only available for the aurora engine. To disable backtracking set to 0. Must be between 0 and 259200 (72 hours).
cluster_ca_cert_identifier
string
default:"null"
The CA certificate identifier to use for the DB cluster’s server certificate. Currently only supported for multi-AZ DB clusters.
cluster_members
list(string)
default:"null"
List of RDS Instances that are a part of this cluster.
cluster_scalability_type
string
default:"null"
Specifies the scalability mode of the Aurora DB cluster. When set to limitless, the cluster operates as an Aurora Limitless Database. When set to standard (the default), the cluster uses normal DB instance creation. Valid values: limitless, standard.
cluster_performance_insights_enabled
bool
default:"null"
Enables Performance Insights for the RDS Cluster.
cluster_performance_insights_kms_key_id
string
default:"null"
Specifies the KMS Key ID to encrypt Performance Insights data. If not specified, the default RDS KMS key (aws/rds) will be used.
cluster_performance_insights_retention_period
number
default:"null"
Specifies the amount of time to retain performance insights data. Defaults to 7 days if Performance Insights are enabled. Valid values are 7, month * 31 (where month is 1–23), and 731.
cluster_monitoring_interval
number
default:"0"
Interval, in seconds, between points when Enhanced Monitoring metrics are collected for the DB cluster. Set to 0 to disable. Valid values: 0, 1, 5, 10, 15, 30, 60.
copy_tags_to_snapshot
bool
default:"true"
Copy all Cluster tags to snapshots.
database_insights_mode
string
default:"null"
The mode of Database Insights to enable for the DB cluster. Valid values: standard, advanced.
database_name
string
default:"null"
Name for an automatically created database on cluster creation.
cluster_instance_class
string
default:"null"
The compute and memory capacity of each DB instance in the Multi-AZ DB cluster.
cluster_db_instance_parameter_group_name
string
default:"null"
Instance parameter group to associate with all instances of the DB cluster. Only valid in combination with allow_major_version_upgrade.
delete_automated_backups
bool
default:"null"
Specifies whether to remove automated backups immediately after the DB cluster is deleted.
deletion_protection
bool
default:"null"
If the DB instance should have deletion protection enabled. The database can’t be deleted when set to true.
enable_global_write_forwarding
bool
default:"null"
Whether cluster should forward writes to an associated global cluster. Applied to secondary clusters to forward writes to an aws_rds_global_cluster’s primary cluster.
enable_local_write_forwarding
bool
default:"null"
Whether read replicas can forward write operations to the writer DB instance in the DB cluster.
enable_http_endpoint
bool
default:"null"
Enable HTTP endpoint (data API). Only valid when engine_mode is set to serverless.
engine
string
default:"null"
The name of the database engine to be used for this DB cluster. Defaults to aurora. Valid values: aurora, aurora-mysql, aurora-postgresql.
engine_mode
string
default:"\"provisioned\""
The database engine mode. Valid values: global, multimaster, parallelquery, provisioned, serverless.
engine_version
string
default:"null"
The database engine version. Updating this argument results in an outage.
engine_lifecycle_support
string
default:"null"
The life cycle type for this DB instance. Valid values: open-source-rds-extended-support, open-source-rds-extended-support-disabled. Default value is open-source-rds-extended-support.
final_snapshot_identifier
string
default:"null"
The name of your final DB snapshot when this DB cluster is deleted. If omitted, no final snapshot will be made.
global_cluster_identifier
string
default:"null"
The global cluster identifier specified on aws_rds_global_cluster.
iam_database_authentication_enabled
bool
default:"null"
Specifies whether mappings of AWS IAM accounts to database accounts is enabled.
domain
string
default:"null"
The ID of the Directory Service Active Directory domain to create the instance in.
domain_iam_role_name
string
default:"null"
(Required if domain is provided) The name of the IAM role to be used when making API calls to the Directory Service.
iops
number
default:"null"
The amount of Provisioned IOPS to be initially allocated for each DB instance in the Multi-AZ DB cluster.
kms_key_id
string
default:"null"
The ARN for the KMS encryption key. When specifying kms_key_id, storage_encrypted needs to be set to true.
manage_master_user_password
bool
default:"true"
Set to true to allow RDS to manage the master user password in Secrets Manager. Cannot be set if master_password_wo is provided.
master_user_secret_kms_key_id
string
default:"null"
The AWS KMS key identifier (key ARN, key ID, alias ARN, or alias name) for the KMS key used to encrypt the master user secret.
master_password_wo
string
default:"null"
Write-only password for the master DB user. Required unless manage_master_user_password is true, a snapshot_identifier, replication_source_identifier, or global_cluster_identifier is provided. This field is sensitive and ephemeral.
master_password_wo_version
number
default:"null"
Used together with master_password_wo to trigger a password update. Increment this value when an update to master_password_wo is required.
master_username
string
default:"null"
Username for the master DB user. Required unless snapshot_identifier, replication_source_identifier, or global_cluster_identifier is provided (secondary cluster).
network_type
string
default:"null"
The type of network stack to use. Valid values: IPV4, DUAL.
port
string
default:"null"
The port on which the DB accepts connections.
preferred_backup_window
string
default:"null"
Daily time range during which automated backups are created if enabled. Time in UTC, e.g. 04:00-09:00.
preferred_maintenance_window
string
default:"null"
Weekly time range during which system maintenance can occur (UTC), e.g. wed:04:00-wed:04:30.
replication_source_identifier
string
default:"null"
ARN of a source DB cluster or DB instance if this DB cluster is to be created as a Read Replica.
restore_to_point_in_time
object
default:"null"
Map of nested attributes for cloning an Aurora cluster.
s3_import
object
default:"null"
Configuration map used to restore from a Percona Xtrabackup in S3. Only MySQL is supported.
scaling_configuration
object
default:"null"
Map of nested attributes with scaling properties. Only valid when engine_mode is set to serverless.
serverlessv2_scaling_configuration
object
default:"null"
Map of nested attributes with serverless v2 scaling properties. Only valid when engine_mode is set to provisioned.
skip_final_snapshot
bool
default:"false"
Determines whether a final snapshot is created before the cluster is deleted. If true, no snapshot is created.
snapshot_identifier
string
default:"null"
Specifies whether or not to create this cluster from a snapshot. You can use either the name or ARN when specifying a DB cluster snapshot, or the ARN when specifying a DB snapshot.
source_region
string
default:"null"
The source region for an encrypted replica DB cluster.
storage_encrypted
bool
default:"true"
Specifies whether the DB cluster is encrypted.
storage_type
string
default:"null"
Determines the storage type for the DB cluster. Optional for Single-AZ, required for Multi-AZ DB clusters. Valid values for Single-AZ: aurora, "" (Aurora Standard), aurora-iopt1 (Aurora I/O Optimized). Valid values for Multi-AZ: io1.
cluster_tags
map(string)
default:"{}"
A map of tags to add to only the cluster. Used for AWS Instance Scheduler tagging.
cluster_timeouts
object
default:"null"
Create, update, and delete timeout configurations for the cluster.
instances
map(object)
default:"{}"
Map of cluster instances and any specific/overriding attributes to be created.
instances_use_identifier_prefix
bool
default:"false"
Determines whether cluster instance identifiers are used as prefixes.
instance_timeouts
object
default:"null"
Create, update, and delete timeout configurations for the cluster instance(s).
endpoints
map(object)
default:"{}"
Map of additional cluster endpoints and their attributes to be created.
role_associations
map(object)
default:"{}"
Map of IAM roles and supported feature names to associate with the cluster.
create_monitoring_role
bool
default:"true"
Determines whether to create the IAM role for RDS enhanced monitoring.
monitoring_role_arn
string
default:"\"\""
IAM role used by RDS to send enhanced monitoring metrics to CloudWatch. Provide an existing ARN to skip role creation.
iam_role_name
string
default:"null"
Friendly name of the monitoring role.
iam_role_use_name_prefix
bool
default:"false"
Determines whether to use iam_role_name as-is or create a unique name beginning with iam_role_name as the prefix.
iam_role_description
string
default:"null"
Description of the monitoring role.
iam_role_path
string
default:"null"
Path for the monitoring role.
iam_role_permissions_boundary
string
default:"null"
The ARN of the policy used to set the permissions boundary for the monitoring role.
iam_role_max_session_duration
number
default:"null"
Maximum session duration (in seconds) to set for the monitoring role.
autoscaling_enabled
bool
default:"false"
Determines whether autoscaling of the cluster read replicas is enabled.
autoscaling_max_capacity
number
default:"2"
Maximum number of read replicas permitted when autoscaling is enabled.
autoscaling_min_capacity
number
default:"0"
Minimum number of read replicas permitted when autoscaling is enabled.
autoscaling_policy_name
string
default:"\"target-metric\""
Autoscaling policy name.
predefined_metric_type
string
default:"\"RDSReaderAverageCPUUtilization\""
The metric type to scale on. Valid values: RDSReaderAverageCPUUtilization, RDSReaderAverageDatabaseConnections.
autoscaling_scale_in_cooldown
number
default:"300"
Cooldown in seconds before allowing further scaling operations after a scale in.
autoscaling_scale_out_cooldown
number
default:"300"
Cooldown in seconds before allowing further scaling operations after a scale out.
autoscaling_target_cpu
number
default:"70"
CPU threshold which will initiate autoscaling.
autoscaling_target_connections
number
default:"700"
Average number of connections threshold which will initiate autoscaling. Default value is 70% of db.r4/r5/r6g.large’s default max_connections.
create_security_group
bool
default:"true"
Determines whether to create security group for RDS cluster.
security_group_name
string
default:"\"\""
The security group name. Defaults to var.name.
security_group_use_name_prefix
bool
default:"true"
Determines whether the security group name (var.name) is used as a prefix.
security_group_description
string
default:"null"
The description of the security group. If set to an empty string it will contain the cluster name in the description.
vpc_id
string
default:"\"\""
ID of the VPC where the security group will be created.
vpc_security_group_ids
list(string)
default:"[]"
List of VPC security groups to associate to the cluster in addition to the security group created.
security_group_ingress_rules
map(object)
default:"{}"
Map of security group ingress rules to add to the security group created.
security_group_egress_rules
map(object)
default:"{}"
Map of security group egress rules to add to the security group created. Uses the same object schema as security_group_ingress_rules.
security_group_tags
map(string)
default:"{}"
Additional tags for the security group.
cluster_parameter_group_name
string
default:"null"
The name of an existing DB cluster parameter group. Required when cluster_parameter_group is not provided.
cluster_parameter_group
object
default:"null"
Map of nested arguments for the created DB cluster parameter group.
db_parameter_group
object
default:"null"
Map of nested arguments for the created DB parameter group.
enabled_cloudwatch_logs_exports
list(string)
default:"[]"
Set of log types to export to CloudWatch. The following log types are supported: audit, error, general, slowquery, postgresql.
create_cloudwatch_log_group
bool
default:"false"
Determines whether a CloudWatch log group is created for each enabled_cloudwatch_logs_exports.
cloudwatch_log_group_retention_in_days
number
default:"7"
The number of days to retain CloudWatch logs for the DB instance.
cloudwatch_log_group_kms_key_id
string
default:"null"
The ARN of the KMS Key to use when encrypting log data.
cloudwatch_log_group_skip_destroy
bool
default:"null"
Set to true to remove the log group from Terraform state at destroy time without deleting it from CloudWatch.
cloudwatch_log_group_class
string
default:"null"
Specifies the log class of the log group. Possible values: STANDARD, INFREQUENT_ACCESS.
cloudwatch_log_group_tags
map(string)
default:"{}"
Additional tags for the CloudWatch log group(s).
cluster_activity_stream
object
default:"null"
Map of arguments for the created DB cluster activity stream.
manage_master_user_password_rotation
bool
default:"false"
Whether to manage the master user password rotation. Setting this to false after previously being true will disable automatic rotation.
master_user_password_rotate_immediately
bool
default:"null"
Specifies whether to rotate the secret immediately or wait until the next scheduled rotation window.
master_user_password_rotation_automatically_after_days
number
default:"null"
Specifies the number of days between automatic scheduled rotations of the secret. Either this or master_user_password_rotation_schedule_expression must be specified.
master_user_password_rotation_duration
string
default:"null"
The length of the rotation window in hours, e.g. 3h for a three-hour window.
master_user_password_rotation_schedule_expression
string
default:"null"
A cron() or rate() expression that defines the schedule for rotating the secret. Either this or master_user_password_rotation_automatically_after_days must be specified.
shard_group
object
default:"null"
Arguments for the DB shard group to be created.

Build docs developers (and LLMs) love