Skip to content

Latest commit

 

History

History
200 lines (113 loc) · 4.19 KB

README.md

File metadata and controls

200 lines (113 loc) · 4.19 KB
parent title nav_exclude
Infrastructure Components
AWS RDS
false

AWS RDS

source = "git::https://github.com/slalom-ggp/dataops-infra/tree/main/components/aws/rds?ref=main"

Overview

Deploys an RDS-backed database. RDS currently supports the following database engines:

  • Aurora
  • MySQL
  • PostgreSQL
  • Oracle
  • SQL Server

Each engine type has it's own required configuration. For already-configured database configurations, see the catalog modules: catalog/aws/mysql and catalog/aws/postgres which are built on top of this component module.

  • NOTE: Requires AWS policy 'AmazonRDSFullAccess' on the terraform account

Requirements

No requirements.

Providers

The following providers are used by this module:

  • http

  • random

  • aws

Required Inputs

The following input variables are required:

name_prefix

Description: Standard name_prefix module input. (Prefix counts towards 64-character max length for certain resource types.)

Type: string

environment

Description: Standard environment module input.

Type:

object({
    vpc_id          = string
    aws_region      = string
    public_subnets  = list(string)
    private_subnets = list(string)
  })

resource_tags

Description: Standard resource_tags module input.

Type: map(string)

admin_username

Description: The initial admin username.

Type: string

engine

Description: The type of database to launch. E.g.: aurora, aurora-mysql,aurora-postgresql, mariadb,mysql,oracle-ee,oracle-se2,oracle-se1,oracle-se,postgres, sqlserver-ee,sqlserver-se,sqlserver-ex,sqlserver-web. Check RDS documentation for updates to the supported list, and for details on each engine type.

Type: string

engine_version

Description: When paired with engine, specifies the version of the database engine to deploy.

Type: string

jdbc_port

Description: Optional. Overrides the default JDBC port for incoming SQL connections.

Type: string

Optional Inputs

The following input variables are optional (have default values):

admin_password

Description: The initial admin password. Must be 8 characters long.

Type: string

Default: null

identifier

Description: The endpoint id which will be used within connection strings and URLs.

Type: string

Default: "rds-db"

database_name

Description: The name of the initial database to be created.

Type: string

Default: "default_db"

instance_class

Description: Enter the desired node type. The default and cheapest option is 'db.t2.micro' @ ~$0.017/hr, or ~$120/mo (https://aws.amazon.com/rds/mysql/pricing/ )

Type: string

Default: "db.t2.micro"

kms_key_id

Description: Optional. The ARN for the KMS encryption key used in cluster encryption.

Type: string

Default: null

skip_final_snapshot

Description: If true, will allow terraform to destroy the RDS cluster without performing a final backup.

Type: bool

Default: false

storage_size_in_gb

Description: The allocated storage value is denoted in GB

Type: string

Default: "20"

jdbc_cidr

Description: List of CIDR blocks which should be allowed to connect to the instance on the JDBC port.

Type: list(string)

Default: []

whitelist_terraform_ip

Description: True to allow the terraform user to connect to the DB instance.

Type: bool

Default: true

Outputs

The following outputs are exported:

endpoint

Description: The connection endpoint for the new RDS instance.

summary

Description: Summary of resources created by this module.


Source Files

Source code for this module is available using the links below.


NOTE: This documentation was auto-generated using terraform-docs and s-infra from slalom.dataops. Please do not attempt to manually update this file.