Study Guide925 words

Mastering AWS Deployment Strategies: SAP-C02 Study Guide

Design a deployment strategy to meet business requirements

Design a Deployment Strategy to Meet Business Requirements

This guide focuses on Task 2.1 of the AWS Certified Solutions Architect - Professional (SAP-C02) exam. Mastering deployment strategies involves balancing the need for rapid innovation with the stability requirements of a production environment.

Learning Objectives

By the end of this study guide, you should be able to:

  • Identify and differentiate between various deployment patterns (In-place, Rolling, Blue/Green, Canary).
  • Select appropriate AWS services (CloudFormation, CodeDeploy, Elastic Beanstalk) to implement specific strategies.
  • Design robust rollback mechanisms to minimize Mean Time to Recovery (MTTR).
  • Leverage Infrastructure as Code (IaC) to ensure environment parity and repeatability.
  • Apply configuration management using AWS Systems Manager and associated tools.

Key Terms & Glossary

  • Infrastructure as Code (IaC): The practice of managing and provisioning computing infrastructure through machine-readable definition files (e.g., AWS CloudFormation templates).
  • CI/CD (Continuous Integration/Continuous Delivery): A method to frequently deliver apps to customers by introducing automation into the stages of app development.
  • Immutable Infrastructure: A strategy where servers are never modified after deployment. If an update is needed, new servers are spun up from a common image.
  • Drift: When the actual state of an infrastructure resource deviates from its expected state (often defined in IaC).
  • Canary Deployment: A pattern where a small percentage of traffic is shifted to a new version of an application to test stability before a full rollout.

The "Big Idea"

[!IMPORTANT] The core objective is Risk Mitigation. In a Professional-level context, choosing a deployment strategy is never just about "getting the code out." It is about balancing Availability (avoiding downtime), Velocity (speed of release), and Cost (resource overhead).

Formula / Concept Box

Deployment MetricDefinition / Goal
RTO (Recovery Time Objective)Target time to restore service after a failed deployment.
RPO (Recovery Point Objective)Maximum acceptable data loss measured in time.
Deployment Success Rate(Successful Deployments / Total Deployments) * 100.
Rollback StrategyMust be predefined: e.g., Route 53 DNS swap vs. ASG Instance Refresh.

Hierarchical Outline

  1. Infrastructure as Code (IaC) Foundations
    • AWS CloudFormation: Templates, Stacks, and StackSets (for multi-region/multi-account).
    • AWS CDK: High-level construct library for defining infrastructure using familiar programming languages.
  2. Continuous Integration & Delivery (CI/CD)
    • AWS CodeCommit: Source control.
    • AWS CodeBuild: Managed build service.
    • AWS CodeDeploy: Automated deployment to EC2, Lambda, or ECS.
    • AWS CodePipeline: Orchestration of the entire workflow.
  3. Deployment Strategies
    • In-Place: Updates existing instances. High risk, low cost.
    • Rolling: Replaces instances in batches. Moderate risk, zero downtime (if sized correctly).
    • Blue/Green: Creates a parallel environment. Zero downtime, easy rollback, high cost (temporary double resources).
    • Canary: Incremental traffic shifting. Lowest risk for user experience.

Visual Anchors

CI/CD Pipeline Flow

Loading Diagram...

Blue/Green Traffic Shifting

Compiling TikZ diagram…
Running TeX engine…
This may take a few seconds

Definition-Example Pairs

  • Configuration Management: The process of maintaining consistent settings across infrastructure.
    • Example: Using AWS Systems Manager (SSM) State Manager to ensure all EC2 instances have the latest security patches and specific monitoring agents installed automatically.
  • Drift Detection: Identifying when manual changes occur outside of the IaC process.
    • Example: Running a CloudFormation Drift Detection operation to find that an administrator manually added an ingress rule to a Security Group that wasn't in the template.
  • Linear Traffic Shifting: Shifting traffic in equal increments over time.
    • Example: A CodeDeploy deployment for a Lambda function that moves 10% of traffic every 10 minutes until 100% is reached.

Worked Examples

Scenario: High-Availability E-Commerce Update

Business Requirement: Update the "Checkout" microservice with zero downtime and a recovery time of under 1 minute if a bug is found.

Step-by-Step Breakdown:

  1. Selection: Choose Blue/Green Deployment via AWS CodeDeploy.
  2. Infrastructure: CodeDeploy triggers the creation of a new Auto Scaling Group (Green) with the new code.
  3. Validation: Run Lifecycle Event Hooks (e.g., AfterAllowTestTraffic) to run integration tests against the Green environment.
  4. Cutover: Shift the Application Load Balancer (ALB) listener to point to the Green Target Group.
  5. Monitoring: Monitor CloudWatch Alarms for 5xx errors.
  6. Rollback: If errors spike, CodeDeploy automatically redirects traffic back to the Blue Target Group instantly.

Checkpoint Questions

  1. Which AWS service is best suited for managing cross-region infrastructure deployments using a single template?
  2. What is the primary difference between a "Rolling" deployment and a "Blue/Green" deployment regarding resource costs?
  3. In an AWS CodePipeline, which stage should include static code analysis and unit testing?
  4. How does a Canary deployment protect the user experience better than a standard In-place deployment?
Click to view answers
  1. AWS CloudFormation StackSets.
  2. Rolling deployments use existing or a few extra instances (lower cost), while Blue/Green duplicates the entire environment (higher temporary cost).
  3. The Build/Test stage (using AWS CodeBuild).
  4. It exposes the new version to only a tiny fraction of users, allowing for "blast radius" limitation if a bug exists.

Muddy Points & Cross-Refs

  • Canary vs. Blue/Green: Students often confuse these. Remember: Blue/Green is an all-at-once or fast switch of the whole fleet, while Canary is a phased percentage-based rollout to the same fleet or a subset of it.
  • CloudFormation vs. Systems Manager: Use CloudFormation for provisioning (the "What") and Systems Manager for configuration (the "How it behaves" after it's live).
  • Cross-Ref: For deeper disaster recovery insights, see Task 2.2: Business Continuity, as deployment strategies (like Multi-site active-active) often overlap with DR patterns.

Comparison Tables

Deployment Strategies Matrix

StrategyDowntimeRiskCostRollback Speed
In-placeYesHighLowSlow (must redeploy old version)
RollingNoMediumMediumModerate (must reverse the roll)
Blue/GreenNoLowHighVery Fast (DNS/ALB swap)
CanaryNoLowestMediumFast (stop traffic shift)

Ready to study AWS Certified Solutions Architect - Professional (SAP-C02)?

Practice tests, flashcards, and all study notes — free, no sign-up needed.

Start Studying — Free