Skip to content

how to update CloudFormation template after RDS Aurora 5.7 to 8.0 upgrade

0

Recently i have upgraded My AWS RDS Aurora MySQL from 5.7 to 8.0.36 using Blue Green deployment manually through AWS console. Where, i had to create a new custom parameter group as we had custom parameter group in the 5.7 version. The upgrade was manual and we are done with it , able to create blue green and testing on green is in progress. I'm wondering after switch over, the new custom parameter will remain associated with the green one, which is now become the blue ( original ). I have a CFT where i am creating this custom parameter and now since my parameter is changed, how can i update the CFT? even if i update the custom parameters in CFT as only change, it will update the old custom parameter group. Please note my old custom parameter group had aurora-mysql5.7 and the new one has aurora-mysql8.0 family.

Please suggest if i should consider In Place deployment. I believe similar situation will occur.

Please guide. Thanks in Advance.

1 Answer
1

Hello,

From the description, I understand that you have performed RDS Blue/Green deployment manually and need clarification on how to reflect the same in CloudFormation (CFT).

I would like to inform you that by design, CloudFormation does not support RDS Blue/Green deployment. You can find the Open GitHub issue[1] to track the feature request.

Therefore, if you perform a Blue/Green deployment for RDS resources created by CloudFormation, it would lead to Drift. You can verify the current drift of the CFT stack using the steps in doc and proceed to fix the same.

For example, if the stack contains the following RDS resources for Aurora MySQL, I suspect that the drifted state would display changes in "DBClusterParameterGroupName" and "EngineVersion" properties for the "AWS::RDS::DBCluster" and "DBParameterGroupName" property for the "AWS::RDS::DBInstance" resources respectively.

AWS::RDS::DBCluster

AWS::RDS::DBClusterParameterGroup

AWS::RDS::DBInstance

AWS::RDS::DBParameterGroup

In the above scenario, you would have the below options to fix the drift and get back to normal stack operations:

  1. In general, we perform an IMPORT operation to resolve the drift as mentioned in doc. You can check the considerations for performing the same in doc. However, this approach is more useful for severe drifts observed for properties that mention as "Update requires: Replacement".
  2. If the only change in drift is for the ParameterGroup then you can perform a normal update the stack to add the "DbInstanceParameterGroup" and "DbClusterParameterGroup" resources with the Green MySQL 8.0 properties. However, you would have to monitor the RDS console to check if the DB goes into "Modifying" state/reboots as a change to these properties would have "Update requires: Some interruptions".

However, in case you are unable to perform the above tests and wish to get recommendation specific to your stack, you can reachout to AWS Support via Support case with the "CloudFormation" team.

AWS
SUPPORT ENGINEER

answered 2 years ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.