RDS clusters do not have an AWS Backup backup plan

Description

Ensure that RDS clusters are included in your backup plans for the AWS Backup. AWS Backup is a fully managed backup service that helps you protect your data in the cloud by automatically backing up your data to a secure, durable storage location. By creating a backup plan, you can ensure that your data is regularly backed up and can be recovered in the event of data loss or corruption.

Fix - Buildtime

Terraform
  • Resource: aws_rds_cluster, aws_backup_plan, aws_backup_selection
  • Argument: plan_id and resources

resource “aws_rds_cluster” “rds_cluster_good” {

cluster_identifier = “aurora-cluster-demo”

engine = “aurora-mysql”

engine_version = “5.7.mysql_aurora.2.03.2”

availability_zones = [“us-west-2a”, “us-west-2b”, “us-west-2c”]

database_name = “mydb”

master_username = “foo”

master_password = “bar”

}

resource “aws_backup_plan” “example” {

name = “tf_example_backup_plan”

rule {

rule_name = “tf_example_backup_rule”

target_vault_name = “vault-name”

schedule = “cron(0 12 * * ? *)”

}

}

resource “aws_backup_selection” “backup_good” {

iam_role_arn = “arn:partition:service:region:account-id:resource-id”

name = “tf_example_backup_selection”

plan_id = aws_backup_plan.example.id

resources = [

aws_rds_cluster.rds_cluster_good.arn

]

}

ReLambda