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.

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.

View Details

This will bring up Error window with StatusReason.

Status Reason Storage Mismatch

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)"

Update Failed

Note

The 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.

AWS RDS Service

  • Find the DB Instance associated with your TED stack.

TED RDS Instance

  • Navigate to the DB Instance Configuration and check for Storage

TED RDS Instance Configuration

  • Compare the actual Configuration settings of the RDS instance with the CloudFormation Parameter values in the TED stack.

CloudFormation Stack Parameter

Step 4: Find Root Cause

Select CloudFormation stack Events tab

CFN Stack Root Cause

Select Detect root cause

CFN Stack Root Cause Details

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.

CFN Stack Grayed Out

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.

Continue Rollback Action

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.

Continue Update Rollback

This should successfully transition the stack to Update Rollback Complete, making it available for further updates with the Update now activated.

Update Rollback Complete

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.

Service Catalog TED Storage Size

Initiate Service Catalog TED Update. CloudFormation will check for changes. If there are no discrepancies, the stack will transition to Update Complete.

Status Available in Service Catalog

Step 8: Review CloudFormation Stack

Update Complete

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.