Search code examples
amazon-web-servicesamazon-aurorapulumiaws-aurora-serverless

Pulumi: convert Aurora DB cluster from serverless to provisioned


I have an AWS Aurora RDS cluster which I am upgrading from serverless v1 to serverless v2.

The AWS documentation[1] suggests that the first step in this process via the AWS CLI is to use the --engine-mode and --allow-engine-mode-change parameters in modify-db-cluster.

I have confirmed that this works via the AWS CLI.

However, in Pulumi if I change my aws.rds.Cluster's engineMode value from "serverless" to "provisioned" and try a pulumi up, the process fails ("DB Cluster already exists") as it tries to replace the cluster. There doesn't seem to be an equivalent to the allow-engine-mode-change parameter in the aws.rds.Cluster definition in the Pulumi documentation [2].

I am using Pulumi version 3.70.0.

Can anyone suggest where I'm going wrong, please? Grateful thanks in advance for any assistance.

  1. https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/aurora-serverless.modifying.html#aurora-serverless.modifying.convert
  2. https://www.pulumi.com/registry/packages/aws/api-docs/rds/cluster/

Solution

  • This conversion capability was implemented recently:

    Aurora Serverless v1 supports conversion to provisioned You can convert an Aurora Serverless v1 DB cluster directly to a provisioned > DB cluster. For more information, see Converting an Aurora Serverless v1 DB > cluster to provisioned. April 27, 2023

    from: https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/WhatsNew.html

    So it's not surprising that corresponding support isn't there yet in IaC tools. You could raise a feature request at https://github.com/pulumi/pulumi/issues