diff --git a/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-cfn-update-complete.png b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-cfn-update-complete.png new file mode 100644 index 00000000..d6cf63a8 Binary files /dev/null and b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-cfn-update-complete.png differ diff --git a/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-cfn-update-in-progress.png b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-cfn-update-in-progress.png new file mode 100644 index 00000000..947aecb8 Binary files /dev/null and b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-cfn-update-in-progress.png differ diff --git a/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-console-service-catalog.png b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-console-service-catalog.png new file mode 100644 index 00000000..abb81cc8 Binary files /dev/null and b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-console-service-catalog.png differ diff --git a/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-access-filter.png b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-access-filter.png new file mode 100644 index 00000000..41636aa8 Binary files /dev/null and b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-access-filter.png differ diff --git a/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-actions-update.png b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-actions-update.png new file mode 100644 index 00000000..b252893d Binary files /dev/null and b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-actions-update.png differ diff --git a/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-navigate-cfn.png b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-navigate-cfn.png new file mode 100644 index 00000000..715f7d3d Binary files /dev/null and b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-navigate-cfn.png differ diff --git a/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-select-deployment-trigger.png b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-select-deployment-trigger.png new file mode 100644 index 00000000..bab5e1d5 Binary files /dev/null and b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-select-deployment-trigger.png differ diff --git a/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-select-provisioned-products.png b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-select-provisioned-products.png new file mode 100644 index 00000000..dcdf63a7 Binary files /dev/null and b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-select-provisioned-products.png differ diff --git a/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-select-tef.png b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-select-tef.png new file mode 100644 index 00000000..b82a0c62 Binary files /dev/null and b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-select-tef.png differ diff --git a/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-select-update.png b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-select-update.png new file mode 100644 index 00000000..757ea752 Binary files /dev/null and b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-select-update.png differ diff --git a/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-tef-available.png b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-tef-available.png new file mode 100644 index 00000000..822b9d6d Binary files /dev/null and b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-tef-available.png differ diff --git a/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-tef-under-change.png b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-tef-under-change.png new file mode 100644 index 00000000..6b8b7e4d Binary files /dev/null and b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/aws-service-catalog-tef-under-change.png differ diff --git a/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/index.md b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/index.md new file mode 100644 index 00000000..60541ef3 --- /dev/null +++ b/docs/guides/hosting-guardrails/updating-stacks/blue-green-deployment/index.md @@ -0,0 +1,100 @@ +--- +title: Perform Blue-Green Deployment +sidebar_label: Perform Blue-Green Deployment +--- + +# Perform Blue-Green Deployment + +In this guide, you will: + +- Trigger a Blue-Green deployment for [TEF](https://turbot.com/guardrails/docs/reference/glossary#turbot-guardrails-enterprise-foundation-tef), [TED](https://turbot.com/guardrails/docs/reference/glossary#turbot-guardrails-enterprise-database-ted), or [TE](https://turbot.com/guardrails/docs/reference/glossary#turbot-guardrails-enterprise-te) using AWS Service Catalog. +- Learn how to keep your cloud infrastructure updated with minimal downtime and risk. + +The **Deployment Trigger** parameter serves as a manual refresh mechanism for Turbot Guardrails CloudFormation stacks. By toggling this parameter between `Blue` and `Green` values, you can force CloudFormation to re-evaluate and refresh all stack parameters without performing a full version upgrade. This technique is essential when external parameter changes—such as updated SSM parameter overrides or modified IAM role ARNs—are not automatically detected by CloudFormation's change detection system and require manual intervention to ensure the stack reflects the current configuration state. + +> [!NOTE] +> The procedure for triggering a blue-green deployment is consistent across **TEF**, **TED**, and **TE**. This guide uses the **TEF** stack as an example for illustration. + +## Prerequisites + +- Access to the Guardrails AWS account with [Administrator Privileges](/guardrails/docs/enterprise/FAQ/admin-permissions). +- Familiarity with AWS Console, Service Catalog, and CloudFormation services. + +## Step 1: Access AWS Console + +Open the AWS Console and navigate to the Service Catalog service in the region where TEF is deployed. + +![AWS Console Home Page](./aws-console-service-catalog.png) + +## Step 2: Navigate Provisioned Products + +Choose **Provisioned Products** from the left navigation menu. + +![Provisioned Product](./aws-service-catalog-select-provisioned-products.png) + +## Step 3: View Provisioned Products + +Change the **Access Filter** in AWS Service Catalog from **User** to **Account** to view all provisioned products across the account. + +![Access Filter](./aws-service-catalog-access-filter.png) + +## Step 4: Update Provisioned Product + +Select the TEF provisioned product from the list. + +![Select TEF](./aws-service-catalog-select-tef.png) + +From the **Actions** menu, select **Update**. + +![Select Update](./aws-service-catalog-actions-update.png) + +## Step 5: Update Deployment Trigger Parameter + +Under `Advanced – Deployment`, locate the `Parameter Deployment Trigger` and switch its value between `Blue` and `Green`, depending on the current state. + +![Select Deployment Parameter](./aws-service-catalog-select-deployment-trigger.png) + +## Step 6: Apply Update + +Select **Update** at the bottom of the screen to apply the changes. + +![Select Update](./aws-service-catalog-select-update.png) + +## Step 7: Monitor Update + +You have successfully updated the deployment trigger, which begins the update of nested CloudFormation stacks. + +- [ ] The TEF provisioned product `Status` changes to `Under Change`. + +![TEF Provisioned Product Status](./aws-service-catalog-tef-under-change.png) + +- [ ] Select the TEF Provisioned Product, click the `Outputs` tab, and use the `CloudFormationStackARN` link to navigate to CloudFormation and monitor the update progress. + +![Navigate To CFN](./aws-service-catalog-navigate-cfn.png) + +- [ ] The TEF stack shows `UPDATE_IN_PROGRESS` status and track changes under the Events tab. + +![CFN Update in Progress Status](./aws-cfn-update-in-progress.png) + +## Step 8: Review + +- [ ] Ensure the CloudFormation stack status shows `UPDATE_COMPLETE`. + +![CFN Update Complete](./aws-cfn-update-complete.png) + +- [ ] Ensure the TEF Provisioned Product status shows `Available`. + +![TEF Provisioned Product Available Status](./aws-service-catalog-tef-available.png) + +## Next Steps + +Please see the following resources to learn more about Turbot Guardrails Enterprise: + +- [Turbot Guardrails Enterprise - Architecture](/guardrails/docs/enterprise/architecture) + +## Troubleshooting + +| Issue | Description | Guide | +|-------|-------------|-------| +| Permission Issues | The current logged-in user lacks permission to modify, update, or create resources in the stack, or IAM roles/SCPs are preventing built-in roles from accessing required configuration settings. | [Troubleshoot Permission Issues](guides/hosting-guardrails/installation/pre-installation/admin-permissions) | +| Further Assistance | If issues persist, open a support ticket with relevant information. | [Open Support Ticket](https://support.turbot.com) | diff --git a/docs/guides/hosting-guardrails/updating-stacks/index.md b/docs/guides/hosting-guardrails/updating-stacks/index.md index 72a06b9d..06eb66a4 100644 --- a/docs/guides/hosting-guardrails/updating-stacks/index.md +++ b/docs/guides/hosting-guardrails/updating-stacks/index.md @@ -23,6 +23,7 @@ stack will be updated in tandem with the TE stack and is never deleted. - [Update Guardrails Domain Name](guides/hosting-guardrails/updating-stacks/domain-update) - [Upgrade to General Purpose (gp3) EBS Volumes](guides/hosting-guardrails/updating-stacks/general-purpose-gp3) - [Enable PgBouncer Connection Pooling](guides/hosting-guardrails/updating-stacks/update-pgbouncer) +- [Perform a Blue Green Deployment](guides/hosting-guardrails/updating-stacks/blue-green-deployment) Head over to the [Releases](/guardrails/changelog) section for release notes for TEF, TED and the TE stacks. \ No newline at end of file diff --git a/docs/sidebar.json b/docs/sidebar.json index 8fc992b8..0bc6e5fb 100644 --- a/docs/sidebar.json +++ b/docs/sidebar.json @@ -427,7 +427,8 @@ "guides/hosting-guardrails/updating-stacks/domain-update", "guides/hosting-guardrails/updating-stacks/general-purpose-gp3", "guides/hosting-guardrails/updating-stacks/upgrade-to-valkey-cache", - "guides/hosting-guardrails/updating-stacks/update-pgbouncer" + "guides/hosting-guardrails/updating-stacks/update-pgbouncer", + "guides/hosting-guardrails/updating-stacks/blue-green-deployment" ] }, "guides/hosting-guardrails/FAQ",