A Terraform module for creating and managing AWS RDS database instances and related resources.
terraform-aws-rds is a Terraform module that automates the creation and management of Amazon RDS database resources on AWS. It provides a declarative way to provision database instances, subnet groups, parameter groups, and option groups for multiple database engines. The module solves the problem of manual, error-prone database provisioning by enabling infrastructure-as-code practices for AWS RDS.
DevOps engineers, cloud infrastructure teams, and developers who manage AWS resources using Terraform and need to provision production-ready RDS databases with security and compliance best practices.
Developers choose this module because it reduces boilerplate Terraform code, follows AWS best practices, and provides a battle-tested solution maintained by the Terraform AWS modules community. It offers extensive configuration options while maintaining security defaults and supporting complex deployment scenarios like Blue/Green deployments and cross-region replication.
Terraform module to create AWS RDS resources 🇺🇦
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Supports MySQL, PostgreSQL, Oracle, SQL Server, and MariaDB with version management, as shown in the engine and engine_version input variables and usage examples.
Composed of independent submodules for instances, subnet groups, and more, with toggleable creation flags, allowing flexible resource management and code reuse.
Includes Blue/Green deployment support, cross-region replication, and S3 import capabilities, enabling complex, low-downtime update strategies documented in examples.
Offers IAM database authentication, KMS encryption, and configurable monitoring roles, aligning with AWS security best practices as highlighted in the features list.
The module explicitly does not create RDS security groups, requiring users to manage them separately with another module like terraform-aws-security-group, adding complexity.
For gp3 storage type, iops and storage_throughput have restrictions based on allocated_storage per engine, which can lead to errors if not carefully planned, as noted in the README.
With over 100 input variables, users may find it difficult to navigate for simple use cases, increasing the risk of misconfiguration and maintenance overhead.