Service Catalog Out of Sync
In this guide, you will:
- Use AWS Service Catalog to manage Turbot Guardrails Enterprise Database.
- Troubleshoot out-of-sync issues between Service Catalog and CloudFormation.
When working with the TED (Turbot Enterprise Database) stack, you may encounter an issue where the Service Catalog Provisioned Product, CloudFormation Stack, or the physical RDS instance becomes out of sync. This can prevent you from applying necessary changes or updates to the database, and may result in the TED provisioned product in the Service Catalog changing to a Tainted
status.
Prerequisites
- Access to the Guardrails AWS account with Administrator Privileges.
- Familiarity with AWS Console, Service Catalog, and CloudFormation services.
Step 1: Check Provisioned Product Status
While executing the TED update, check if the provisioned product in the Service Catalog changing to a Tainted
status.
Step 2: Check Stack Failure Details
In the selected provisioned product, select the Events tab, in UPDATE_PROVISIONED_PRODUCT
section select View details.
This will bring up Error
window with StatusReason.
Select View more in CloudFormation to navigate to CloudFormation stack. This will display Error Message as
Resource handler returned message: "Invalid storage size for engine name postgres and storage type gp3: 210 (Service: Rds, Status Code: 400, Request ID: d93b7008-0506-443d-a849-dc1c42b49656)"
NoteThe most common cause of this issue is an increase in database storage due to auto-scaling or manual update of DB storage directly in AWS console. Attempting to modify TED while in this state will result in an error.
Step 3: Review Changes
- Open the AWS Console and navigate to the RDS service in the region where TED is deployed.
- Find the DB Instance associated with your TED stack.
- Navigate to the DB Instance Configuration and check for
Storage
- Compare the actual Configuration settings of the RDS instance with the CloudFormation Parameter values in the TED stack.
Step 4: Find Root Cause
Select CloudFormation stack Events tab
Select Detect root cause
Step 5: Check CloudFormation Stack
CloudFormation stack does not allow updates when the Update button is grayed
out. This indicates that the stack is in a state that prevents updates. Any changes attempted during this state will fail.
Step 6: Fix CloudFormation Stack
To proceed with aligning the Service Catalog TED stack with the actual configuration of the RDS instance, fix the CloudFormation stack from UPDATE_ROLLBACK_FAILED
to UPDATE_ROLLBACK_COMPLETE
.
From Stack actions dropdown select Continue update rollback.
A new window titled Continue update rollback will appear. In the Advanced Troubleshooting section, select check the box next to HivePrimary under Resources to skip - optional
section to rollback for that specific resource. Select the Continue update rollback button.
This should successfully transition the stack to Update Rollback Complete
, making it available for further updates with the Update now activated.
Step 7: Execute Service Catalog Stack Update
Navigate to Service Catalog and update the TED product. Ensure the parameter values match exactly with the current RDS DB instance storage setting. For instance, if RDS storage auto-scaled or manually updated from 200 GB to 225 GB, update the Service Catalog product's TED stack Allocated Storage in GB
field to 225 GB to reflect the actual RDS value.
Initiate Service Catalog TED Update. CloudFormation will check for changes. If there are no discrepancies, the stack will transition to Update Complete
.
Step 8: Review CloudFormation Stack
If you continue to encounter issues, please Open Support Ticket and attach the relevant information to assist you more efficiently.
- A screenshot of the CloudFormation Events tab for the TED stack.
- A screenshot of the Service Catalog with provisioned products.