Skip to main content

Quickstart

Deploy your first Aurora cluster in minutes with a working Terraform example.

Module Inputs

Full reference for every variable the module accepts.

Guides

Step-by-step guides for MySQL, PostgreSQL, Serverless, Global Clusters, and more.

Module Outputs

All outputs exported by the module for use in other Terraform resources.

What this module provides

The terraform-aws-modules/rds-aurora module abstracts the complexity of provisioning AWS RDS Aurora infrastructure. It manages clusters, instances, security groups, parameter groups, monitoring roles, autoscaling, and secrets — all from a single module call.

Aurora MySQL & PostgreSQL

Provision provisioned or serverless Aurora clusters for both MySQL and PostgreSQL engines.

Serverless v1 & v2

Configure auto-pausing Serverless v1 clusters or the new capacity-unit-based Serverless v2.

Global Clusters

Span Aurora across multiple AWS regions with automated write forwarding and replication.

Aurora Limitless

Enable Aurora Limitless Database with shard groups for horizontal write scaling.

Aurora DSQL

Create Aurora DSQL clusters with optional multi-region peering.

Read Replica Autoscaling

Automatically scale reader instances based on CPU utilization or connection count.

Enhanced Monitoring

Get OS-level metrics via IAM-managed enhanced monitoring roles and Performance Insights.

Secrets Manager

Let RDS manage the master password lifecycle in AWS Secrets Manager with rotation support.

Security Groups & VPC

Auto-create and configure VPC security groups with fine-grained ingress/egress rules.

Supported engine modes

EngineModeDescription
aurora-mysqlprovisionedStandard MySQL-compatible Aurora cluster
aurora-postgresqlprovisionedStandard PostgreSQL-compatible Aurora cluster
aurora-mysqlserverlessServerless v1 (auto-pause, ACU-based)
aurora-postgresqlprovisioned + serverlessv2_scaling_configurationServerless v2 (sub-second scaling)
aurora-postgresqlprovisioned + cluster_scalability_type = "limitless"Aurora Limitless (sharded writes)
aurora-mysql / aurora-postgresqlglobal_cluster_identifierGlobal cluster (multi-region)
mysql / postgresallocated_storage setMulti-AZ RDS (non-Aurora engine)

Module source

terraform-aws-rds-aurora
module "aurora" {
  source = "terraform-aws-modules/rds-aurora/aws"

  name   = "my-aurora-cluster"
  engine = "aurora-postgresql"

  # ... see Quickstart for full example
}
This module requires Terraform >= 1.11.1 and the AWS provider >= 6.28.

Build docs developers (and LLMs) love