Skip to content

AWS RDS: Allow custom iops and storage_type configruation

What does this MR do?

Provides the flexibility to configure the IOPS and storage type associated with the RDS instance. By default the number of IOPS was hardcoded to 1000 and assumed io1 storage. For smaller installations a gp2 storage type might be sufficient allowing teams to save money. For larger installations being able to configure the provisioned IOPS is important to ensure the disk performance is sufficient.

With regards to documentation, I choose to keep things simple and leave it as an exercise to the engineer setting these values appropriately. If rds_postgres_storage_type is set to something other than io1, the rds_postgres_iops must be set to null otherwise AWS will complain as other storage types don't support IOPS. I am happy to add some text, but I'd rather not repeat and bring in details of the AWS system into these docs.

Related issues

Author's checklist

When ready for review, the Author applies the workflowready for review label:

  • Merge request:
    • Merge Request Title and Description are up to date, accurate, and descriptive
    • MR targeting the appropriate branch
    • MR has a green pipeline
  • Code:
    • Check the area changed works as expected. Consider testing it in different environment sizes (1k,3k,10k,etc.).
    • Documentation created/updated in the same MR.
    • If this MR adds an optional configuration - check that all permutations continue to work.
    • For Terraform changes: setup a previous version environment, then run a terraform plan with your new changes and ensure nothing will be destroyed. If anything will be destroyed and this can't be avoided please add a comment to the current MR.
  • Create any follow-up issue(s) to support the new feature across other supported cloud providers or advanced configurations. Create 1 issue for each provider/configuration. Contact the Quality Enablement team if unsure.
Edited by Matt Veitas

Merge request reports