AWS Certified Solutions Architect (SAP-C02 / SAA-C03) Revision Notes
-
- Amazon EC2
- AWS Auto Scaling
- AWS Elastic Beanstalk
- AWS Lambda
- AWS Step Functions
- Lambda@Edge
- AWS Fargate
- Amazon Elastic Container Service (ECS)
- Amazon Elastic Kubernetes Service (EKS)
- AWS App Runner
- AWS Batch
- AWS Lightsail
- Comparison: AWS EC2 ASG Placement Groups
- Comparison: AWS Compute Savings
- Comparison: AWS Hybrid Cloud and On-Premises Compute
-
- Amazon S3 (Simple Storage Service)
- AWS S3 Event Notifications
- S3 Cross-Region Replication (CRR)
- Amazon S3 Requester Pays
- Amazon S3 Inventory
- Amazon S3 Storage Lens
- Amazon S3 Select and Glacier Select
- S3 Encryption Types (Server-Side)
- S3 Encryption Types (Client-Side)
- Amazon EBS Volumes (Elastic Block Store)
- EBS with Provisioned IOPS
- Amazon Elastic File System (EFS)
- AWS EFS vs. EBS
- AWS Storage Gateway
- AWS S3 Static Website Hosting
-
- Amazon Aurora
- AWS RDS (Relational Database Service)
- RDS Proxy
- Aurora vs RDS
- AWS RDS Multi-AZ
- AWS RDS Multi-Region (Cross-Region Read Replicas)
- On-Premises to RDS MySQL Replication
- AWS Aurora Multi-AZ
- AWS Aurora Multi-Region (Aurora Global Database)
- RDS Multi-AZ vs. Aurora Multi-AZ (Within Region HA)
- RDS Multi-Region vs. Aurora Global Database (Cross-Region DR)
- Amazon DynamoDB
- AWS DynamoDB Accelerator (DAX)
- DynamoDB Auto Scaling, Capacity Management, and Costing
- DynamoDB Primary Keys and Indexes
- DynamoDB Fine-Grained Access Control
- Amazon Neptune DB
- Amazon ElastiCache
- Comparison: Database Offerings
- Comparison: AWS Elasticache Engines
- Comparison: OLTP vs OLAP
-
IV. Networking & Content Delivery
- VPC DNS Attributes
- AWS Elemental MediaConnect
- AWS Ground Station
- Amazon CloudFront
- CloudFront: Field-Level Encryption
- CloudFront: Caching
- CloudFront: Origin Access Control (OAC)
- CloudFront: Custom SSL Certificates
- CloudFront: User-Agent & Host Header Forwarding
- CloudFront Geo-restriction
- AWS Direct Connect (Dedicated Private Connectivity)
- Direct Connect with VPN (Encrypted Private Connectivity)
- AWS Direct Connect + VPN (Encrypted)
- AWS Direct Connect Gateway (DXGW)
- Virtual Private Gateway (VPG)
- AWS Direct Connect Virtual Interfaces (VIFs)
- AWS Site-to-Site VPN
- On-Premises to Multiple AWS VPCs via Direct Connect
- Link Aggregation Group (LAG) for AWS Direct Connect
- AWS PrivateLink & Related Services
- VPN Tunnels to Multiple VPCs (Decentralized VPN)
- VPC Peering (Direct 1:1 VPC Connectivity)
- AWS Transit Gateway
- AWS Network Firewall
- AWS RAM Shared Services VPC with VPC Peering & Cross-Account DNS
- Amazon Route 53
- Amazon Route 53 DNS Record Types
- Route 53 Health Checks
- DNSSEC
- DNS Spoofing
- Route 53 DNSSEC
- AWS Global Accelerator
- Elastic Load Balancing (ELB)
- Network Address Translation (NAT)
- AWS Client VPN
- Elastic Fabric Adapter (EFA)
- Amazon FSx for Lustre
- Comparison: AWS Elastic Load Balancing Types
-
- AWS Control Tower
- AWS Systems Manager Maintenance Windows
- AWS Systems Manager Patch Manager
- AWS Systems Manager Patch Baselines
- AWS Systems Manager Automation
- AWS Systems Manager Parameter Store
- AWS Systems Manager State Manager
- AWS IAM Service Role (for On-Premises to SSM Access)
- AWS Systems Manager Session Manager
- AWS Config
- AWS CloudFormation
- AWS CloudFormation StackSets
- AWS Organizations
- AWS Organizations (+ AWS Config)
- AWS Resource Access Manager (AWS RAM)
- AWS Identity Center (formerly AWS SSO)
- AWS Service Control Policies (SCPs)
- AWS Service Catalog
- AWS Audit Manager
- Comparison: AWS Systems Manager State Manager vs AWS Config
-
- AWS WAF (Web Application Firewall)
- Network ACLs (NACLs)
- AWS Shield Standard
- AWS Shield Advanced
- AWS CloudTrail
- CloudTrail Trail (Logging & Archiving)
- CloudTrail Lake (Advanced Analytics & immutable storage)
- AWS KMS (Key Management Service)
- KMS Key Deletion
- AWS Certificate Manager (ACM)
- AWS Macie
- AWS GuardDuty
- Amazon Inspector
- AWS CloudHSM
- Comparison: AWS KMS Key Types
-
VII. Analytics & Data Processing
- Amazon Athena
- AWS Glue Data Catalog & Crawlers
- AWS Glue
- Amazon Redshift
- Redshift Spectrum
- Amazon QuickSight
- Amazon OpenSearch Service
- AWS Kendra
- Amazon Textract
- AWS Kinesis (Overall Service Family)
- Kinesis Data Streams (KDS)
- Kinesis Data Firehose (Now Amazon Data Firehose)
- Kinesis Video Streams (KVS)
- Amazon Kinesis Data Analytics (Now Amazon Managed Service for Apache Flink)
- Key Service Comparisons (Kinesis)
-
VIII. Application Integration & Messaging
- Amazon SQS (Simple Queue Service)
- SQS Visibility Timeout
- Dead-Letter Queues (DLQs) & Redrive Policy
- SQS Message Attributes
- SQS Short vs. Long Polling
- Note on SQS message persistence when it comes to DLQs
- Amazon SNS (Simple Notification Service)
- Amazon EventBridge (Advanced Event-Driven Architecture - Preferred)
- Amazon CloudWatch Events (Event-Driven Automation - Legacy)
- Amazon Managed Streaming for Apache Kafka (MSK)
- AWS AppSync
- Comparison: MSK + S3 vs. DynamoDB
- Comparison: SQS vs SNS vs EventBridge
-
- AWS Purchasing Options & Monitoring Tools
- EC2 Instance Savings Plans vs. Compute Savings Plans
- Spot Instances
- EC2 Spot Fleet
- EC2 Reserved Instances (RIs)
- EC2 On-Demand Instances
- EC2 Savings Plans
- EC2 Dedicated Hosts
- EC2 Dedicated Instances
- EC2 On-Demand Capacity Reservations
- Database Instance Cost Optimization
- Elastic Compute Cloud (EC2): Provides resizable compute capacity (virtual servers) in the cloud, offering various instance types optimized for different workloads; combined with EC2 Auto Scaling, it automatically adjusts the number of EC2 instances in response to changing application load or based on schedules, using Launch Templates/Configurations and scaling policies (e.g., target tracking, simple/step, scheduled, predictive); fundamental for building highly available, fault-tolerant, elastic, and cost-optimized compute layers by ensuring optimal performance and efficiency, a cornerstone of virtually every SAP-C02 architectural design.
- AWS Auto Scaling (Groups): Elastic, Self-Healing Compute Capacity for High Availability & Cost Optimization: AWS Auto Scaling (specifically EC2 Auto Scaling Groups or ASGs) automatically adjusts the number of EC2 instances in response to changing demand, maintaining application availability and optimizing costs by only running necessary capacity. It ensures application resilience by automatically replacing unhealthy instances and distributing instances across multiple Availability Zones for high availability.
- Scaling Policies: Uses various policies for scaling: Target Tracking (most recommended; e.g., keep CPU utilization at 70%), Step Scaling (adjusts capacity in steps based on alarm breaches), Simple Scaling(older, similar to step but with cooldowns), Scheduled Scaling (for predictable load changes), and Predictive Scaling (uses ML to forecast future load and proactively scale).
- Lifecycle Hooks: Allow you to pause instances at specific points during launch (e.g., Pending:Wait) or termination (e.g., Terminating:Wait) to perform custom actions (e.g., bootstrapping, logging, draining connections) before the instance is fully brought into service or terminated.
- Warm Pools: Maintain a pool of pre-initialized instances in a stopped or hibernated state, ready to quickly scale out to reduce application startup time and improve responsiveness during scaling events.
- Suspendable Processes (Crucial for Troubleshooting/Maintenance): ASGs manage various processes that can be individually suspended and resumed to prevent automated actions during troubleshooting or manual intervention:
- Launch: Prevents new instances from being launched.
- Terminate: Prevents instances from being terminated (e.g., for troubleshooting unhealthy instances before they're replaced).
- HealthCheck: Stops ASG from checking instance health.
- ReplaceUnhealthy: Stops ASG from terminating and replacing unhealthy instances.
- AZRebalance: Stops rebalancing instances across AZs.
- AlarmNotification: Stops notifications from scaling policies.
- ScheduledActions: Stops scheduled scaling actions.
- AddToLoadBalancer: Stops instances from being registered with load balancers.
- SAP-C02 Relevance: Auto Scaling is foundational for designing resilient, fault-tolerant, and cost-effective architectures for dynamic workloads. Understanding scaling policies, lifecycle hooks for custom actions, and the ability to suspend specific processes for controlled maintenance/troubleshooting is critical for advanced operational management and disaster recovery strategies in a professional context.
- AWS Auto Scaling (Elasticity & Cost Optimization): A service that automatically adjusts the number of EC2 instances (or other scalable resources like DynamoDB throughput, ECS tasks) in response to changing demand (e.g., CPU utilization, network I/O, custom metrics) or on a schedule; utilizes Launch Templates/Configurations to define instance properties and various scaling policies (e.g., Target Tracking, Step, Simple, Predictive) to achieve high availability, fault tolerance, and cost optimization by only paying for capacity when needed, fundamental for building elastic and resilient architectures in SAP-C02.
- AWS Elastic Beanstalk: Managed PaaS for Rapid Application Deployment and Scaling: Elastic Beanstalk is a Platform as a Service (PaaS) that simplifies the deployment, scaling, and management of web applications and services (Java, .NET, PHP, Node.js, Python, Ruby, Go, Docker) by automatically provisioning and managing the underlying infrastructure (EC2, ASG, ELB, RDS, etc.). It abstracts away infrastructure complexities, enabling developers to focus on code. For SAP-C02, Beanstalk is ideal for accelerating time-to-market for new applications, reducing operational overhead, and implementing various deployment strategies (e.g., all-at-once, rolling, rolling with additional batch, immutable, blue/green traffic splitting for near-zero downtime), offering a balance between flexibility and management for diverse application architectures.
- AWS Lambda & Lambda Costing: A serverless, event-driven compute service that automatically scales to run code in response to diverse triggers; critical for modern architectures due to its stateless nature, event-based execution, and integrations with numerous AWS services; concurrency management involves Reserved Concurrency (guarantees a minimum, sets a maximum, free) to prevent throttling for critical functions, and Provisioned Concurrency (paid) to minimize cold starts for latency-sensitive interactive workloads; costing is based on requests and execution duration (milliseconds) multiplied by allocated memory, with memory being a key performance/cost optimization lever.
- AWS Step Functions: A serverless workflow orchestrator that coordinates and manages distributed applications and microservices using visual workflows (state machines), enabling architects to define complex, long-running business processes with built-in retry logic, error handling, parallelism, and human approval steps, ensuring reliable execution and auditing of multi-step workloads without managing underlying compute. Note: An SQS queue cannot be used as a direct input for an AWS Step Function workflow.
- Lambda@Edge: An extension of AWS Lambda that allows you to run Node.js or Python code (Lambda functions) at AWS CloudFront Edge Locations in response to CloudFront events (Viewer Request, Origin Request, Origin Response, Viewer Response); enables real-time customization of content delivery, dynamic content routing, user authentication/authorization, A/B testing, SEO optimization, and security header enforcement closer to the user, significantly reducing latency and offloading processing from origin servers, making it a key component for optimizing global application performance, security, and user experience in complex CloudFront architectures, a frequent topic in SAP-C02. You can use Lambda functions to change CloudFront requests and responses at the following points: 1. After CloudFront receives a request from a viewer (viewer request) 2. Before CloudFront forwards the request to the origin (origin request) 3. After CloudFront receives the response from the origin (origin response) 4. Before CloudFront forwards the response to the viewer (viewer response)
- AWS Fargate: Serverless Compute for Containers (ECS/EKS) with Managed Infrastructure: AWS Fargate is a serverless compute engine for Amazon ECS and Amazon EKS that allows you to run containers without managing the underlying EC2 instances, eliminating operational overhead for server provisioning, patching, and scaling. This makes it ideal for variable, burstable, or intermittent workloads where operational simplicity and granular resource consumption-based billing are prioritized over deep infrastructure control.
- Networking (awsvpc mode & Public IP): Fargate tasks exclusively use the awsvpc network mode, which assigns a dedicated Elastic Network Interface (ENI) to each task. This ENI gets its own private IP address from your VPC subnet's IP address range, making each task appear as a distinct network entity within your VPC.
- Auto-assign Public IP: For tasks needing direct inbound/outbound internet access, you can enable "Auto-assign public IP" when launching a Fargate task in a public subnet. This assigns a public IP to the task's ENI.
- Private Subnet Best Practice: For production workloads, Fargate tasks are typically placed in private subnets, without auto-assigning public IPs. Outbound internet access is then routed through a NAT Gateway in a public subnet, and inbound access is typically through a Load Balancer (ALB/NLB) placed in public subnets, maintaining a secure network posture.
- No Bridge/Host Modes: Fargate does not support bridge or host network modes (which are available for ECS on EC2 launch type), as it abstracts away the host EC2 instance. Each Fargate task has its own isolated network stack, preventing port conflicts and simplifying service discovery compared to shared host networking.
- Fargate vs. EC2 Launch Type:
- Control vs. Simplicity: Fargate offers less control over underlying compute (no SSH access, no custom AMIs, limited instance type/OS choice) in exchange for maximum operational simplicity. The EC2 launch type provides full control over EC2 instances, allowing for custom configurations, GPU instances, and cost optimization via Reserved Instances/Savings Plans for consistent, high-utilization workloads.
- Cost Model: Fargate billing is based on vCPU and memory consumed per second by the task, often more cost-effective for low-utilization or bursty workloads by eliminating wasted capacity. EC2 launch type bills for instance uptime, which can be cheaper for consistently high-utilization workloads if efficiently packed.
- Use Cases: Fargate is preferred for modern, microservices-based applications, event-driven functions, batch processing, and smaller, highly scalable services where infrastructure management is to be minimized. EC2 is for legacy applications, specialized hardware requirements (e.g., GPUs), extremely high-performance needs, or when deep OS-level control/customization is mandatory.
- Networking (awsvpc mode & Public IP): Fargate tasks exclusively use the awsvpc network mode, which assigns a dedicated Elastic Network Interface (ENI) to each task. This ENI gets its own private IP address from your VPC subnet's IP address range, making each task appear as a distinct network entity within your VPC.
- Amazon Elastic Container Service (ECS): A fully managed container orchestration service that supports running Docker containers on AWS, offering two primary launch types: EC2 launch type (you manage EC2 instances in an Auto Scaling group for granular control, cost optimization with Spot Instances) and AWS Fargate launch type (serverless compute where AWS manages the underlying infrastructure, ideal for simpler, short-lived tasks, pay-per-task, less operational overhead); tasks are defined by Task Definitions (specifying image, CPU/memory, ports), managed by Services (maintaining desired task count), and run on Clusters, integrating deeply with other AWS services (ALB for load balancing, CloudWatch for monitoring, ECR for image storage) to enable scalable, reliable container deployments.
- Spot Instances with ECS (ECS_ENABLE_SPOT_INSTANCE_DRAINING): When running ECS tasks on Spot Instances, the ECS_ENABLE_SPOT_INSTANCE_DRAINING=true configuration in the ECS agent (via user data or ecs.config) is critical for gracefully handling Spot Instance interruptions; upon receiving the 2-minute EC2 Spot interruption notice, the ECS agent automatically sets the container instance to DRAINING status, preventing new tasks from being scheduled, and attempting to stop existing service tasks gracefully (sending SIGTERM, allowing containers to perform cleanup within the 2-minute window) before the instance is terminated, thus minimizing service disruption for interruptible workloads.
- Amazon Elastic Kubernetes Service (EKS): A fully managed Kubernetes control plane service that simplifies running Kubernetes on AWS, enabling you to deploy, manage, and scale containerized applications using standard Kubernetes APIs and tooling, while AWS manages the Kubernetes master nodes (control plane) across multiple AZs for high availability; you provision worker nodes via Managed Node Groups (simplifying cluster operations and updates for EC2 instances) or Fargate (serverless option for Pods, abstracting worker nodes), making it ideal for organizations seeking Kubernetes portability, advanced cluster management, and hybrid cloud strategies.
- AWS App Runner: A fully managed container application service simplifying the deployment of containerized web applications and APIs directly from source code (e.g., GitHub, CodeCommit, automatic CI/CD integration) or container images (ECR), abstracting away all underlying infrastructure (servers, load balancers, scaling); it automatically handles scaling based on concurrent requests with configurable Min/Max size (for cost/availability balance) and Max Concurrency per instance, provides built-in TLS, and critically, offers VPC Connectors to establish secure, outbound-only network access to private VPC resources (e.g., RDS, DynamoDB, Redis) by creating Hyperplane ENIs in specified private subnets and security groups, allowing developers a "no-ops" serverless experience for web apps while still enabling private resource access, with costing based on Provisioned Instance memory (idle cost) and Active InstancevCPU/memory (when processing requests), plus a small build fee. It leverages AWS Fargate as its serverless compute engine for running containers (and other AWS services like Elastic Load Balancing, AWS CodePipeline for CI/CD, and CloudWatch for monitoring).
- AWS Batch: Managed Batch Processing for High-Throughput Workloads: AWS Batch is a fully managed service that enables developers, scientists, and engineers to run hundreds of thousands of batch computing jobs on AWS. It dynamically provisions and scales compute resources (EC2 instances, including Spot Instances for cost optimization, Fargate) based on job queue demand. For SAP-C02, Batch is the ideal solution for scheduling, managing, and executing large-scale, time-insensitive, or interruptible computational workloads such as scientific simulations, financial modeling, media processing, or genomic analysis, where cost-efficiency (leveraging Spot Instances) and automated resource management are critical, reducing operational overhead compared to managing custom job schedulers.
- AWS Lightsail: Offers a simplified, fixed-price Virtual Private Server (VPS) experience for small-scale applications, websites, and development/test environments, abstracting much of the underlying AWS complexity (like VPC, EC2 instance types, and networking details) to provide a quick, easy, and predictable entry point into the cloud, with built-in features like managed databases (MySQL, PostgreSQL), load balancers (with free SSL/TLS), CDN distributions (powered by CloudFront), block storage, and object storage, making it ideal for users prioritizing simplicity and cost predictability over the granular control and extensive scalability of traditional AWS services like EC2 and RDS.
Feature/Type |
Cluster Placement Group |
Spread Placement Group |
Partition Placement Group |
Purpose |
Maximize network throughput and achieve lowest latency. |
Minimize correlated failures by spreading instances across distinct hardware. |
Isolate instances across logical partitions to reduce the likelihood of correlated failures for large distributed systems. |
Placement |
Instances are packed closely together on the same rack(s) within a single Availability Zone (AZ). |
Each instance is placed on separate underlying hardware (racks) within a single AZ or across multiple AZs. |
Instances are divided into logical partitions, with each partition on a distinct set of racks within a single AZ or across multiple AZs. |
Ideal for |
High-Performance Computing (HPC), tightly coupled applications, big data processing (e.g., Spark, Hadoop HDFS NameNode). |
Small number of critical instances where independent failure is paramount (e.g., critical web servers, database master nodes, key microservices). |
Large distributed and replicated workloads (e.g., Hadoop, Cassandra, Kafka) that are partition-aware and benefit from fault isolation across partitions. |
Network Performance |
High (10 Gbps and higher, often 25 Gbps aggregate throughput). |
Standard EC2 network performance. |
Standard EC2 network performance, with isolation between partitions. |
Fault Tolerance |
Lower, as all instances are on the same or very few racks, making them susceptible to a single rack failure. |
High, as instances are on independent hardware, minimizing impact of single hardware failure. |
High, as hardware failures in one partition do not affect instances in other partitions. |
Instance Limit |
No strict limit, but performance is optimized for specific instance types and network configurations. |
Maximum of 7 running instances per Availability Zone per group. |
Supports a large number of instances across partitions (up to 7 partitions per AZ per group, each with many instances). |
Visibility |
No direct visibility into specific physical hosts/racks. |
No direct visibility into specific physical hosts/racks. |
AWS exposes the partition ID for each instance, allowing applications to be topology-aware. |
Feature |
Compute Savings Plan |
EC2 Instance Savings Plan |
Standard Reserved Instances (RIs) |
Convertible Reserved Instances (RIs) |
Spot Instances |
On-Demand Instances |
Commitment Type |
Hourly spend ( |
Hourly spend (/hour) for an EC2 instance family |
Specific instance configuration (type, OS, tenancy, region) |
Specific instance configuration (but exchangeable) |
No commitment |
No commitment |
Flexibility |
Highest: Across instance family, size, OS, tenancy, region, EC2, Fargate, Lambda |
High: Within chosen EC2 instance family in a region (size, OS, tenancy) |
Low: Specific attributes, limited changes (Linux size flex) |
Medium-High: Can exchange for different attributes (equal/greater value) |
Highest: No long-term lock-in |
Highest: Pay-as-you-go |
Discount |
Up to ~66% |
Up to ~72% |
Up to ~72% (highest RI discount) |
Up to ~66% (lower than Standard RI) |
Up to 90% (variable based on supply/demand) |
0% (full price) |
Capacity Reserve? |
No |
No |
Optional (Zonal RIs only) |
Optional (Zonal RIs only) |
No |
No |
Applicable Services |
EC2, Fargate, Lambda |
EC2 only |
EC2, RDS, ElastiCache, Redshift, OpenSearch, etc. |
EC2, RDS, ElastiCache, Redshift, OpenSearch, etc. |
EC2 only |
All services |
Ideal Workload |
Dynamic, evolving compute needs (EC2, Fargate, Lambda) |
Stable EC2 instance family usage, but size/OS may change |
Stable, predictable, long-running, unchanging workloads |
Evolving, long-running workloads with future type changes |
Fault-tolerant, flexible, stateless, interruptible jobs |
Unpredictable, short-term, or dev/test |
Management Overhead |
Low (auto-applies) |
Low (auto-applies) |
Moderate (monitor utilization, possible selling on Marketplace) |
Moderate (monitor utilization, manual exchanges) |
Moderate (handle interruptions, use fleets/ASG) |
Low (no planning required) |
Payment Options |
All Upfront, Partial Upfront, No Upfront |
All Upfront, Partial Upfront, No Upfront |
All Upfront, Partial Upfront, No Upfront |
All Upfront, Partial Upfront, No Upfront |
N/A (hourly) |
N/A (hourly/per second) |
Exam Focus |
Newest/most flexiblecommitment; broad coverage |
Higher discount within EC2 families |
Max savings for stable, fixedworkloads; capacity option |
Flexibility for changing RI attributes; value exchange |
Max discount for interruptibleworkloads; Spot Fleets |
Baseline for comparison; high flexibility |
Feature |
ECS Anywhere |
EKS Anywhere |
AWS Outposts |
Service Type |
Feature of ECS (hybrid container orchestration) |
Software for self-managed Kubernetes (on-premises Kubernetes) |
Fully managed AWS infrastructure extension (hardware in your DC) |
Control Plane Location |
AWS Cloud (managed by AWS) |
On-premises (managed by you) |
AWS Cloud (manages Outpost hardware/services) |
Compute Location |
Your on-premises VMs/servers (registered as external instances) |
Your on-premises VMs/servers/bare metal |
AWS-owned hardware in your data center |
Management Responsibility |
Shared: AWS manages ECS control plane, you manage on-prem hosts |
You are responsible for Kubernetes control plane and underlying infrastructure |
AWS manages the physical Outpost, hardware, and lifecycle. You manage deployed applications. |
Runs on AWS Cloud? |
Yes, the control plane is always in AWS; EC2/Fargate can be part of the same cluster. |
No, designed specifically for your own infrastructure (not EC2 in AWS Regions). |
Yes, Outposts extend the AWS Region into your on-premises environment. |
Cluster Spans AWS & On-Prem? |
Yes, a single ECS cluster can contain both AWS-based tasks (EC2/Fargate) and tasks on on-premises external instances. |
No, an EKS Anywhere cluster is self-contained on-premises. While EKS Connector provides cloud visibility, the cluster itself doesn't span. (EKS Hybrid Nodes for managed EKS is a different approach). |
Yes, resources on Outposts are an extension of a VPC in an AWS Region, enabling seamless hybrid architectures. |
Use Case |
Extending ECS management to on-premise containers; simpler orchestration; data residency; unified hybrid container cluster. |
Running Kubernetes on-premises with AWS's distro and tooling; air-gapped environments; high control; you manage Kubernetes. |
Extending AWS services locally for low-latency, data residency, local processing, consistent hybrid experience; AWS manages the infrastructure. |
Underlying Tech |
ECS Agent on your hosts connects to ECS control plane |
EKS Distro, Cluster API, runs on your chosen virtualization/hardware |
AWS-designed hardware, runs same AWS services as in regions |
Connectivity Requirement |
Requires connectivity to AWS Region for control plane |
Can run connected or disconnected (air-gapped) from AWS Region |
Requires consistent connectivity to an AWS Region for management and updates |
Pricing Model |
Per active registered external instance (per hour) |
Subscription-based (per cluster basis for support) |
Upfront commitment for hardware (1 or 3 years), then hourly use of services deployed on it |
Supported Services |
Containerized workloads managed by ECS |
Kubernetes clusters running your containerized workloads |
EC2, EBS, S3 on Outposts, RDS, ElastiCache, EKS, ECS, ALB, EMR, etc. (No Fargate) |
SAP-C02 Focus |
Simpler hybrid container orchestration; leverage existing ECS skills;Â single pane of glass for hybrid ECS. |
Advanced Kubernetes on-premises; high control;Â you manage Kubernetes;Â designed for on-premises isolation. |
AWS hardware delivered to your site; consistent experience;Â AWS manages the infrastructure;Â deep AWS service integration locally. |
- Amazon S3 (Simple Storage Service): An object storage service offering industry-leading durability (11 nines), high availability, and scalability for virtually unlimited data; supports various storage classes (Standard, Infrequent Access, Glacier, Intelligent-Tiering) for cost optimization, strong read-after-write consistency, server-side encryption, versioning, and lifecycle policies; crucial for highly available, durable data lakes, static website hosting, backups, archives, and big data analytics in SAP-C02 designs, often integrated with CloudFront for content delivery.
- Amazon S3 (Simple Storage Service): Provides highly durable, available, and scalable object storage for various use cases, including data archiving, backup, disaster recovery, data lakes, and static website hosting, with options for encryption at rest (SSE-S3, SSE-KMS, SSE-C) and in transit, and features like versioning and cross-Region replication crucial for data protection and business continuity.
- AWS S3 Event Notifications: Real-time Event-Driven Processing & Workflow Automation from Object Changes: S3 Event Notifications provide a serverless, asynchronous mechanism to trigger automated workflows or processes in response to changes in S3 objects, enabling real-time data processing, media transformations, and data lake pipelines.
- Types of Events: Supports a granular range of events on objects including:
s3:ObjectCreated:*
: (e.g.,s3:ObjectCreated:Put
,s3:ObjectCreated:Post
,s3:ObjectCreated:Copy
,s3:ObjectCreated:CompleteMultipartUpload
) triggered when new objects are uploaded.s3:ObjectRemoved:*
: (e.g.,s3:ObjectRemoved:Delete
,s3:ObjectRemoved:DeleteMarkerCreated
) triggered when objects are deleted.s3:ObjectRestore:*
: (e.g.,s3:ObjectRestore:Post
,s3:ObjectRestore:Completed
) triggered during Glacier/Deep Archive restore operations.s3:ReducedRedundancyLostObject
: Triggered when S3 detects that it has lost an object stored in the Reduced Redundancy Storage (RRS) class. Events can be filtered by object key prefix (e.g., images/) and/or suffix (e.g., .jpg, .csv), allowing for fine-grained control over which events trigger notifications.
- Supported Destinations (Key Integrations):
- Amazon SQS (Simple Queue Service): For decoupling event producers and consumers, enabling reliable messaging and buffering events for batch processing or when consumers might be temporarily unavailable. Ideal for loosely coupled, asynchronous architectures.
- Amazon SNS (Simple Notification Service): For fan-out messaging, delivering notifications to multiple subscribers (e.g., email, SMS, other HTTP/S endpoints, Lambda functions via subscriptions). Good for real-time alerts or triggering multiple parallel workflows.
- AWS Lambda (Serverless Compute): For direct, real-time serverless processing of S3 events (e.g., resizing images, extracting metadata, performing virus scans, initiating data lake ingestion via Glue). This is a very common pattern for event-driven architectures and immediate data transformations.
- SAP-C02 Relevance: S3 Event Notifications are fundamental for designing scalable, resilient, and event-driven data processing pipelines in a data lake context (e.g., triggering Glue ETL jobs upon new data arrival in S3, sending alerts for object deletions), for media processing workflows, and for auditing/compliance by integrating with services like CloudWatch Logs or security tools. They are crucial for implementing loosely coupled architectures that react dynamically to data changes in S3 without polling.
- Types of Events: Supports a granular range of events on objects including:
- S3 Cross-Region Replication (CRR): An asynchronous, automatic replication feature that copies objects from a source S3 bucket in one AWS Region to a destination S3 bucket in a different AWS Region; enables disaster recovery (DR), reduces latency for global users (by serving from a closer region), and simplifies compliance by maintaining data copies in separate geographies; essential for multi-region resiliency, global content distribution, and meeting regulatory requirements in SAP-C02 architectures. AWS S3 Cross-Region Replication (CRR): automatically and asynchronously replicates objects between S3 buckets in different AWS Regions, supporting versioning-enabled buckets. It's primarily used for disaster recovery (DR) strategies to minimize RPO (as replication is near real-time but asynchronous, allowing for non-zero RPO), data sovereignty/compliance requirements, and reducing latency for geographically dispersed users by placing data closer to them. For SAP-C02, CRR is a key component for robust S3-based DR solutions and optimizing data access for global applications leveraging S3 as a data lake or content store.
- Amazon S3 Requester Pays: Is a bucket-level setting that shifts the responsibility for storage and data transfer (egress) costs from the bucket owner to the requester when data is accessed (downloaded or read) from that S3 bucket. This feature is primarily used for scenarios where data is shared publicly or with a large number of diverse users (e.g., publicly accessible datasets, data marketplaces, open data projects), preventing the data owner from incurring significant costs from other users downloading their data, while the requester is charged based on standard S3 pricing for reads and egress, requiring the requester to include specific headers (
x-amz-request-payer: requester
) in their requests and have the necessary IAM permissions to access the bucket.
- Amazon S3 Inventory: Provides daily or weekly fixed-format reports of your objects and their corresponding metadata (e.g., object size, storage class, encryption status) for a bucket or a shared prefix; this comprehensive overview is invaluable for auditing, managing storage classes, understanding object distribution patterns, and planning data lifecycle policies, especially for large-scale data lakes.
- Amazon S3 Storage Lens: Is a cloud storage analytics feature that provides organization-wide visibility into object storage usage and activity trends across all your AWS accounts and regions; it offers a centralized dashboard with drill-down capabilities, intelligent recommendations for optimizing costs and applying data protection best practices, and identifies outliers, empowering architects to make informed decisions about storage management.
- Amazon S3 Select and Glacier Select: Are features that allow architects to improve query performance and reduce data transfer costs by executing simple SQL queries directly on a single object in S3 or an archive in Glacier (respectively) to retrieve only a subset of the data; this is particularly valuable for large objects where only a small portion of the data is needed, eliminating the need to download and process the entire object client-side.
- Server-Side Encryption with Amazon S3-managed keys (SSE-S3): SSE-S3 provides default encryption at rest for objects in S3 using Amazon-managed keys (AES-256), where S3 handles all key management and rotation, offering simplicity and automatic encryption for data at rest without any customer key management overhead, and is now applied automatically to new object uploads unless another encryption method is specified.
- Server-Side Encryption with AWS KMS-managed keys (SSE-KMS): SSE-KMS encrypts S3 objects using keys stored and managed in AWS KMS, offering customer control over key usage, auditability (via CloudTrail), and integration with IAM policies for granular key permissions, enabling you to use either AWS-managed KMS keys or Customer Managed Keys (CMKs) that you create and control, providing a balance of security control and management simplicity for sensitive data.
- Server-Side Encryption with Customer-provided keys (SSE-C): SSE-C allows you to encrypt S3 objects using encryption keys that you provide and manage entirely outside of AWS, requiring you to provide the encryption key with every PUT and GET request (via HTTP headers over HTTPS) for both encryption and decryption, offering maximum key control for specific compliance needs but placing the full responsibility of key management and rotation on the customer.
- S3 Bucket Keys (with SSE-KMS): S3 Bucket Keys are a feature that reduces the cost of SSE-KMS encryption by using a single, short-lived bucket-level key derived from the KMS CMK to encrypt objects within a bucket, significantly reducing the number of requests to KMS (and thus KMS costs) for large numbers of objects or frequent requests, while still providing the benefits of KMS-managed keys like auditability and centralized control.
- Client-Side Encryption (CSE): Client-Side Encryption (CSE) involves encrypting data on the client-side before it's sent to S3, where you manage the encryption process and keys (either with a KMS Customer Master Key (CMK) via the S3 Encryption Client - CSE-KMS, or with a master key managed entirely by you - CSE-C), providing end-to-end encryption where the data is encrypted before it leaves your application and remains encrypted throughout transit and at rest in S3, ensuring AWS never has access to the plaintext data or the encryption keys.
- Amazon EBS Volumes (Elastic Block Store): Persistent block storage volumes that can be attached to a single EC2 instance in the same Availability Zone (AZ) (with Multi-Attach for io1/io2 volumes in the same AZ); provides high performance, durability, and point-in-time snapshots for backup/DR; ideal for root volumes, databases, and general purpose block storage requiring low-latency access, a fundamental component for stateful EC2 workloads and a key consideration for performance and data persistence in SAP-C02 designs.
- EBS with Provisioned IOPS (io1/io2/io2 Block Express): SSD-backed EBS volume types specifically designed for I/O-intensive, latency-sensitive, and throughput-intensive workloads (e.g., large relational/NoSQL databases like SAP HANA, Microsoft SQL Server, Oracle) that require sustained high performance and consistent sub-millisecond latency; allows you to provision a specific number of IOPS independent of volume size, with io2 Block Expressoffering the highest performance (up to 256,000 IOPS) and durability (99.999%), critical for meeting stringent performance SLAs in SAP-C02 solutions.
- Amazon Elastic File System (EFS): Scalable, Highly Available Shared File Storage for Linux Workloads: EFS provides a fully managed, scalable, and highly available Network File System (NFS) shared file system for Amazon EC2 instances and on-premises servers (via AWS Direct Connect or VPN), ideal for Linux-based applications requiring shared file access across multiple instances or AZs. It offers elastic scaling (terabytes to petabytes) and multi-AZ availability by distributing data across multiple AZs within a region. For SAP-C02, EFS is the go-to solution for use cases such as lift-and-shift of traditional enterprise applications dependent on shared file storage (e.g., content management systems, web serving, development environments), SAP application servers requiring shared file systems for profiles, logs, or transport directories (e.g., for SAP NetWeaver AS ABAP/Java, SAP HANA scale-out shared filesystem), and scenarios demanding simplicity of scale and management for POSIX-compliant file access without provisioning storage capacity.
- AWS EFS vs. EBS:
- Access Pattern & Multi-AZ Capability: The most critical difference is that EFS (Elastic File System) is a network file system (NFSv4.1) providing shared, concurrent access across multiple EC2 instances, even across different Availability Zones (AZs), making it ideal for distributed applications and shared file systems (e.g., SAP NetWeaver global host, transport directories, shared binaries) that require single-source-of-truth file access with inherent multi-AZ resilience. In contrast, EBS (Elastic Block Store) provides dedicated, low-latency block-level storage that can typically be attached to only a single EC2 instance at a time within the same AZ, making it suitable for boot volumes and high-performance, single-attach database volumes (e.g., SAP HANA data/log, Oracle, SQL Server). While EBS Multi-Attach exists for specific scenarios (like Windows Failover Cluster), it doesn't provide the same shared file system semantics as EFS.
- Performance Characteristics & Scalability: EBS volumes (especially io2 Block Express, gp3) are optimized for consistent, high IOPS and throughput with very low latency (single-digit milliseconds), making them the superior choice for transactional database workloads that demand predictable, high-performance block I/O. EFSperformance is more variable, scaling with the file system size and selected throughput mode (Bursting or Provisioned); it typically exhibits higher latency and lower IOPS per client due to its shared, distributed nature, making it less suitable for direct database storage but highly effective for elastic, dynamically scaling file system needs that can burst or scale throughput as data grows without manual provisioning.
- Availability & Durability: EFS is inherently multi-AZ durable and highly available by design, as data is redundantly stored across multiple AZs within a region, automatically replicating and self-healing. EBS volumes are AZ-specific; while highly durable within their AZ, achieving cross-AZ high availability for EBS-backed instances requires architecting solutions using Multi-AZ deployments (for databases like RDS), EC2 Auto Scaling Groups, or snapshot/AMI-based recovery for disaster recovery.
- Cost Model & Operational Overhead: EFS charges based on consumed storage and throughput, offering elasticity without over-provisioning, but often at a higher cost per GB per month than general-purpose EBS. EBS charges based on provisioned storage (size and IOPS/throughput), requiring careful sizing, but can be more cost-effective for dedicated, fixed-size volumes. EFS typically has lower operational overhead for shared file systems due to its fully managed, auto-scaling nature, while EBS requires more manual management of volume types, sizing, and snapshot strategies.
- AWS Storage Gateway: Hybrid Cloud Storage Bridge for On-Premises Integration: AWS Storage Gateway is a hybrid cloud storage service that connects on-premises applications and IT environments to AWS cloud storage (S3, EBS, Glacier). It acts as a virtual or physical appliance (VMware ESXi, Microsoft Hyper-V, KVM, or hardware appliance) deployed on-premises, providing low-latency access to cloud storage while efficiently transferring data. For SAP-C02, Storage Gateway is crucial for accelerating workload migration and modernization (Domain 4), particularly for integrating existing on-premises applications with cloud storage for backups, archives, disaster recovery (DR), and cloud bursting scenarios, reducing the need for costly on-premises storage expansion.
- File Gateway: Presents AWS S3 as an NFS (v3/v4.1) or SMB file share on-premises. It's ideal for file-based cloud migration, cloud-backed file shares, and tiered storage to S3, allowing on-premises applications to interact with S3 objects as if they were local files, often used for data archival or shared drives.
- Volume Gateway: Presents cloud-backed storage as iSCSI block storage volumes to on-premises applications.
- Cached Volumes: Stores primary data in S3 while retaining a local cache of frequently accessed data for low-latency access. Best for primary storage with cloud-backed scalability and durability, reducing on-premises footprint (e.g., consolidating application data to the cloud).
- Stored Volumes: Stores primary data locally on-premises, with asynchronous backups (snapshots) to S3. Ideal for maintaining local copies of data for low-latency access while providing durable, offsite backups in AWS (e.g., application data that needs local performance but cloud DR).
- Tape Gateway: Presents a virtual tape library (VTL) to on-premises backup software (e.g., NetBackup, Veeam), allowing it to write backup data to virtual tapes that are stored in S3 and can be tiered to S3 Glacier/Glacier Deep Archive. It's the go-to solution for replacing physical tape infrastructure with cost-effective, scalable cloud archival for long-term data retention and compliance.
- Deployment Locations: Storage Gateway can be deployed as a virtual machine (VM) on-premises(VMware ESXi, Microsoft Hyper-V, KVM), as a hardware appliance purchased from AWS, or as an AMI on an EC2 instance within AWS for specific hybrid cloud scenarios or testing.
- File Gateway: Ideal for on-premises applications requiring NFS/SMB file shares that need to store data directly as S3 objects for cloud-native consumption (e.g., data lakes, analytics, content distribution), with local caching for low-latency access and seamless integration with S3 lifecycle policies and object-level features.
- Volume Gateway (Cached Volumes): Best for extending on-premises iSCSI block storage to the cloud, storing primary data in S3 while retaining a local cache for frequently accessed data, enabling disaster recovery and cloud-based backups for applications needing block-level access with a focus on cost-effective cloud-tiering.
- Volume Gateway (Stored Volumes): Suited for on-premises applications needing low-latency access to their entire dataset locally (iSCSI block storage) with asynchronous point-in-time snapshots to S3 as EBS snapshots for offsite backup and disaster recovery, prioritizing on-premises performance while leveraging cloud durability.
- Tape Gateway: Designed to modernize existing physical tape-based backup workflows by presenting a virtual tape library (VTL) via iSCSI to traditional backup software, archiving data to Amazon S3 Glacier Flexible Retrieval or Deep Archive for highly durable, cost-effective long-term retention without managing physical media. Keep in mind that the tape gateway in the AWS Storage Gateway service is primarily used as an archive solution.
Gateway Type |
Interface Protocol(s) |
Underlying AWS Storage |
Primary Use Case(s) |
Data Access Pattern |
File Gateway |
NFS, SMB |
Amazon S3 (as objects) |
Hybrid cloud file sharing, cloud bursting, database backups, data lakes, content distribution. |
File-based access, objects directly accessible in S3. |
Volume Gateway |
iSCSI |
Amazon S3 (as EBS snapshots) |
Disaster recovery, on-premises application backups, extending on-premises block storage. |
Block-level access, data stored as EBS snapshots (not directly S3 objects). |
Tape Gateway |
iSCSI VTL |
Amazon S3, S3 Glacier, S3 Glacier Deep Archive |
Replacing physical tape backups, long-term data archiving. |
Emulates tape drives for backup applications. |
- AWS S3 Static Website Hosting: Cost-Effective, Highly Available, Serverless Web Hosting for Static Content: S3 static website hosting leverages S3's inherent durability (11 9s), high availability (99.99%), and scalability (virtually limitless) to serve static web content (HTML, CSS, JavaScript, images) directly from S3 buckets, eliminating the need for EC2 web servers. This offers a highly cost-optimized, serverless solution suitable for corporate websites, single-page applications (SPAs), developer documentation, or content distribution. ReactJs webapps also are static from S3 perspective.
- Enabling Static Website Hosting with Route 53:
- Bucket Naming: The S3 bucket name MUST exactly match the domain name you intend to use (e.g., example.com for the root domain, www.example.com for the subdomain).
- Bucket Policy: A public bucket policy must be applied to the S3 bucket(s) to allow
s3:GetObject
permissions forAllUsers
(or specific CloudFront OAI/OAC if used for security). - Website Configuration: Enable "Static website hosting" in the S3 bucket properties, specifying an index document (e.g., index.html) and optionally an error document (e.g., error.html).
- Route 53 Alias Records: In Route 53, create an Alias record (A record for IPv4, AAAA for IPv6 if using CloudFront) for your domain (e.g., example.com) and point it to the S3 website endpoint. For apex domains (root domain, e.g., example.com), an A record with Alias to S3 Website Endpoint is mandatory, as CNAMEs cannot be used at the zone apex. If also hosting www.example.com, a separate bucket and Alias record (or a redirect from www.example.com bucket to example.com bucket) is typically configured.
- HTTPS/SSL (Crucial Distinction): S3 static website endpoints DO NOT natively support HTTPS/SSL. For secure (HTTPS) access, a CloudFront distribution is REQUIRED as a CDN in front of the S3 bucket, using a Custom SSL Certificate provisioned via AWS Certificate Manager (ACM) in us-east-1. The CloudFront distribution's origin would be the S3 website endpoint (or the S3 REST API endpoint with an OAI/OAC for enhanced security). Route 53 would then point the domain's Alias record to the CloudFront distribution's domain name.
- Troubleshooting Steps (SAP-C02 Exam Focus):
- Bucket Naming Mismatch: Verify the S3 bucket name exactly matches the domain nameconfigured in Route 53. This is a common root cause for "Server not found" or DNS resolution issues when directly pointing to S3.
- Bucket Policy (Permissions): Check the S3 bucket policy to ensure
s3:GetObject
permission is correctly granted toPrincipal: "*"
(for public access) or the CloudFront Origin Access Identity (OAI)/Origin Access Control (OAC). A "403 Forbidden" error often indicates a permissions issue. - Website Hosting Enabled: Confirm static website hosting is enabled in the S3 bucket properties and that the index/error documents are correctly specified.
- Route 53 Alias Target: Ensure the Alias record in Route 53 correctly points to the S3 website endpoint (if no CloudFront) or the CloudFront distribution domain name. For root domains, confirm it's an Alias record, not a CNAME.
- DNS Propagation: Allow sufficient time for DNS changes to propagate (TTL values can delay this). Use dig or nslookup to verify DNS resolution.
- CloudFront Origin/Cache Issues: If using CloudFront, verify the origin is correctly set (S3 website endpoint or S3 REST API endpoint with OAI/OAC), the Alternate Domain Names (CNAMEs) in CloudFront match the custom domain, and the SSL certificate is correctly attached and valid. Clear CloudFront cache if content isn't updating.
- Content Errors (404/403): Check the specified index/error documents for typos or missing files. If the index file is missing, a 404 will occur. If specific files (e.g., CSS/JS) are not accessible, check their S3 object permissions.
- Enabling Static Website Hosting with Route 53:
- Amazon Aurora: Cloud-Native Performance & Scalability: A high-performance, highly available, and scalable relational database engine that's MySQL and PostgreSQL-compatible, designed for enterprise-grade workloads, offering up to 5x MySQL and 3x PostgreSQL throughput and automatic storage scaling up to 128 TiB. Its distributed, fault-tolerant, self-healing storage across three AZs with 6 copies of data ensures high durability and minimal data loss. For SAP-C02, this means Aurora is ideal for critical, high-transactional SAP workloads demanding extreme performance, durability, and automatic scaling capabilities.
- Aurora storage automatically scales with the data in your cluster volume. As your data grows, your cluster volume storage expands up to a maximum of 128 tebibytes (TiB). Even though an Aurora cluster volume can scale up in size to many tebibytes, you are only charged for the space that you use in the volume. The mechanism for determining billed storage space depends on the version of your Aurora cluster. Aurora stores copies of the data in a DB cluster across multiple Availability Zones in a single AWS Region. Aurora stores these copies regardless of whether the instances in the DB cluster span multiple Availability Zones. However, you still need to create a read-replica for the high availability of the Aurora DB instance. A single read-replica is enough to quickly recover the database in case the primary instance fails.
- Unlike other databases, after a database crash, Amazon Aurora does not need to replay the redo log from the last database checkpoint (typically five minutes) and confirm that all changes have been applied before making the database available for operations. Amazon Aurora moves the buffer cache out of the database process and makes it available immediately at restart time. This prevents you from having to throttle access until the cache is repopulated to avoid brownouts. This reduces database restart times to less than 60 seconds in most cases.
- AWS RDS: Managed Relational Database Service: Provides managed relational databases (MySQL, PostgreSQL, Oracle, SQL Server, MariaDB) with automated administrative tasks like patching, backups, and monitoring. Offers Multi-AZ deployments for high availability and Read Replicas for read scaling, but its performance and scalability are tied to the chosen instance type and storage, and failover times are generally longer than Aurora's. For SAP-C02, RDS is suitable for many SAP applications that require managed database services and good availability, but not the extreme performance and cloud-native architecture of Aurora, and careful consideration of supported SAP products with specific RDS engines is necessary (e.g., SAP BusinessObjects BI on RDS for SQL Server).
- RDS Proxy: Is a fully managed, highly available database proxy that sits between your application and your Amazon RDS or Aurora database, primarily used to efficiently manage database connections (connection pooling), improve application scalability and resilience to database failures, and enhance security by enabling IAM authentication and centralizing credential management through AWS Secrets Manager. With RDS Proxy, you can build applications that can transparently tolerate database failures without needing to write complex failure-handling code. The proxy automatically routes traffic to a new database instance while preserving application connections. It also bypasses Domain Name System (DNS) caches to reduce failover times by up to 66% for Aurora Multi-AZ databases. Connecting through a proxy makes your application more resilient to database failovers. When the original DB instance becomes unavailable, RDS Proxy connects to the standby database without dropping idle application connections. Doing so helps to speed up and simplify the failover process. The result is faster failover that's less disruptive to your application than a typical reboot or database problem.
- Aurora vs RDS #1: Aurora excels in performance (5x MySQL/3x PostgreSQL), automated storage scaling (up to 128 TiB vs. 64 TiB for RDS MySQL/PostgreSQL), high availability with faster failover (seconds vs. minutes for RDS Multi-AZ), and more read replicas (up to 15 vs. 5 for RDS), making it superior for highly demanding, mission-critical SAP workloads requiring extreme scalability and minimal downtime, often at a higher cost for its advanced features. RDS offers broader engine choice and can be more cost-effective for smaller, less demanding SAP deployments, with scaling being more manual and performance directly linked to instance provisioning. For SAP-C02, the choice hinges on the specific SAP workload's performance, availability, and scalability requirements, and certified SAP support for the chosen database engine.
- AWS RDS Multi-AZ: High Availability & Durability (within Region): RDS Multi-AZ creates a synchronous standby replica of your database in a different Availability Zone (AZ) within the same AWS Region. This provides enhanced availability with automatic failover (typically 35-120 seconds, depending on the Multi-AZ option) and durability with zero data loss in the event of an AZ outage, primary instance failure, or underlying storage issues. The standby instance is not directly accessible for reads, as its primary purpose is for failover. From an SAP-C02 perspective, this is crucial for ensuring uptime for SAP workloads where cross-AZ fault tolerance and RTO/RPO of minutes are acceptable.
- AWS RDS Multi-Region (Cross-Region Read Replicas): Disaster Recovery & Read Scaling (across Regions): RDS multi-region typically involves creating cross-region read replicas (asynchronous replication) in a different AWS Region. While primarily for read scaling and disaster recovery, a read replica can be manually promoted to a standalone primary in the event of a regional disaster. This offers a disaster recovery solution with a higher RPO (Recovery Point Objective) than Multi-AZ (due to asynchronous replication, some data loss is possible) and requires manual intervention for full regional failover. For SAP-C02, this is a common strategy for business continuity planning for SAP systems, where an RPO of minutes to hours and an RTO of minutes to hours are acceptable in a full regional outage.
- You can set up replication between an Amazon RDS MySQL (or MariaDB DB instance) that is running in AWS and a MySQL (or MariaDB instance) to your on-premises data center. A read replica is a read-only copy of a MySQL database instance that is kept synchronized with the source instance. Read replicas can be used to offload read traffic from the primary instance, improving performance and scalability.
- To allow communication between RDS and to your on-premises network, you must first set up a VPN or an AWS Direct Connect connection. Once that is done, just follow the below steps to perform the replication: Set up a MySQL database server in the on-premises environment, which will act as the read replica for the RDS instance. Configure the RDS MySQL instance as the replication source (master) for the on-premises MySQL instance. Use the mysqldump utility to transfer the initial data from the Amazon RDS instance to the on-premises MySQL instance. This step is necessary to establish the initial replication state. After the initial data transfer, start the replication process from the on-premises MySQL instance, which will act as a read replica of the Amazon RDS instance.
- AWS Aurora Multi-AZ: Continuous Availability & Performance (within Region): Aurora's architecture is inherently Multi-AZ by design. Its distributed, self-healing storage volume is spread across three AZs, and Aurora Replicas (read-only instances) can be distributed across these AZs. Failover to an Aurora Replica is typically sub-30 seconds (often within seconds), making it significantly faster than RDS Multi-AZ. Aurora Replicas are also actively used for read scaling. From an SAP-C02 standpoint, this provides superior high availability and performance for critical SAP applications demanding very low RTO and highly scalable read operations within a single AWS Region.
- AWS Aurora Multi-Region (Aurora Global Database): Global Disaster Recovery & Low-Latency Global Reads: Aurora Global Database spans multiple AWS Regions, with a primary cluster in one Region and up to 16 secondary read-only clusters in different Regions. It uses a high-speed, dedicated replication mechanism that offers significantly lower replication lag (typically less than 1 second) than RDS cross-region read replicas, enabling very low RPO and RTO for regional disaster recovery. Secondary clusters can also serve low-latency reads to geographically dispersed users. For SAP-C02, Aurora Global Database is the gold standard for global SAP deployments requiring near-zero data loss (RPO) and rapid regional failover (RTO) for extreme business continuity, and is ideal for distributed SAP applications with global read access requirements.
- RDS Multi-AZ vs. Aurora Multi-AZ (Within Region HA): Aurora Multi-AZ offers inherently faster failover (sub-30s vs. 35-120s), shared storage across AZs, and read replicas that can also act as failover targets, leading to superior continuous availability and read scaling within a single region compared to RDS Multi-AZ's dedicated synchronous standby. For SAP-C02, Aurora is chosen for mission-critical SAP systems needing the lowest possible RTO and maximum read throughput within an AZ, while RDS Multi-AZ is suitable for applications with less stringent RTO requirements where the managed service simplicity and broader engine choice are priorities.
- RDS Multi-Region (Cross-Region Read Replicas) vs. Aurora Global Database (Cross-Region DR): Aurora Global Database provides significantly lower RPO (near zero) and faster RTO (minutes) for regional disaster recovery due to its dedicated, high-speed, storage-based replication, making it the preferred choice for the most critical SAP workloads requiring continuous operation across regions. RDS cross-region read replicas, with their asynchronous replication and manual promotion process, will have a higher RPO (potential data loss) and RTO (longer recovery time), making them suitable for SAP DR scenarios where some data loss and a longer recovery window are acceptable trade-offs for potentially lower cost and simpler architecture compared to Aurora Global Database.
- Amazon DynamoDB: Serverless NoSQL for High-Scale, Low-Latency Key-Value/Document Workloads: DynamoDB is a fully managed, serverless NoSQL database designed for single-digit millisecond latency at any scale, supporting both key-value and document data models. It's the go-to solution for high-throughput, low-latency, mission-critical applications (e.g., real-time analytics, user profiles, gaming leaderboards, IoT data ingestion) where unpredictable traffic patterns and automatic scaling are paramount, eliminating the need for server management. Its features like DynamoDB Global Tables provide a fully managed, multi-region, active-active database solution where data is automatically and asynchronously replicated across multiple chosen AWS Regions. This enables low-latency reads and writes from any region, ensures high availability and disaster recovery with near-zero RPO and RTO by allowing applications to seamlessly fail over to another region in case of a regional outage. For SAP-C02, Global Tables are critical for designing globally distributed, mission-critical applications that demand extreme resilience, continuous availability, and low-latency access for users worldwide, providing a highly scalable and highly available data layer for modern global applications (e.g., multi-region user profiles, IoT device states). And DynamoDB Accelerator (DAX) offers an in-memory cache for ultra-low latency reads.
- Amazon DynamoDB TTL (Time to Live): Automated Cost-Effective Data Expiry for Ephemeral Data: DynamoDB TTL is a cost-optimization feature that automatically deletes items from a table after a predefined timestamp (TTL attribute value) has passed, without consuming any write capacity units (WCUs). This is critical for managing data lifecycle for temporary, ephemeral, or compliance-driven data (e.g., session data, event logs, temporary sensor readings) to reduce storage costs and maintain data cleanliness on a large scale, directly contributing to cost optimization and operational efficiency in high-volume, short-lived data scenarios.
- AWS DynamoDB Accelerator (DAX): A DynamoDB-compatible, highly available, in-memory cache delivering microsecond reads for read-heavy/bursty workloads, using write-through caching (ensuring consistency for writes) and eventual consistency for reads from the cache (strongly consistent reads bypass DAX); best deployed with 3+ nodes for fault tolerance, primarily reducing DynamoDB RCU consumption and cost for latency-sensitive applications.
- DynamoDB Auto Scaling, Capacity Management, and Costing: DynamoDB offers On-Demand mode (pay-per-request, automatically scales for unpredictable workloads, simpler but potentially higher cost per request) and Provisioned mode (specify RCU/WCU, cost-effective for predictable workloads, optimized by Auto Scaling using CloudWatch metrics to dynamically adjust capacity within defined min/max for cost/performance, and further optimized with Reserved Capacity for long-term discounts); architectural decisions here involve balancing cost predictability, operational overhead, and workload variability.
- RCU (Read Capacity Unit): One RCU represents one strongly consistent read of an item up to 4 KB per second. One RCU can also represent two eventually consistent reads of an item up to 4 KB per second.
- WCU (Write Capacity Unit): One WCU represents one write of an item up to 1 KB per second.
- DynamoDB Primary Keys and Indexes: DynamoDB utilizes a primary key to uniquely identify each item in a table, which is composed of either a single attribute called the Partition Key (for simple primary keys, enabling high-performance reads and writes by distributing data across partitions) or a composite key consisting of a Partition Key and a Sort Key (for composite primary keys, allowing for efficient range queries and ordering of items within the same partition, defining a hierarchy for data access). Additionally:
- Local Secondary Indexes (LSIs): Provide an alternative sort key for a given partition key, allowing for different sort orderings and additional query flexibility within the same partition as the base table. They share the same partition key as the base table and their size is limited by the 10GB item collection size limit.
- Global Secondary Indexes (GSIs): Allow for querying on any attribute (or combination of attributes) as an alternative primary key (composed of a GSI partition key and optional GSI sort key). They are "global" because their partition key does not have to be the same as the base table's partition key, and they are physically separate from the base table, enabling queries across all partitions of the base table, albeit with eventual consistency for read operations by default (though strongly consistent reads are now an option).
- DynamoDB Fine-Grained Access Control: DynamoDB fine-grained access control allows you to implement highly granular permissions down to individual items and specific attributes within a DynamoDB table, achieved by leveraging IAM policies with condition keys that evaluate the request's context (e.g.,
dynamodb:LeadingKeys
for partition key values,dynamodb:Attributes
for specific columns, or user identity variables like${aws:username}
), enabling scenarios like multi-tenant applications where users only access their own data, and supporting both item-level and attribute-level read/write permissions for robust data security and the principle of least privilege. Important Note on Scan: You generally cannot use Scan operations with item-level access control viadynamodb:LeadingKeys
. A Scan operation reads the entire table, and DynamoDB cannot apply adynamodb:LeadingKeys
condition to filter rows before reading the entire table. You must use GetItem, Query, BatchGetItem, etc., which explicitly provide key values. Crucial Point on restricting columns: For this policy to work correctly, the application (or user making the request) MUST specify aProjectionExpression
in their DynamoDB API call (e.g., GetItem, Query). If the application requests attributes that are not in thedynamodb:Attributes
list, the request will be denied. If noProjectionExpression
is provided (which implies requesting all attributes), the request will also be denied unless all attributes are explicitly listed in the policy.
- Amazon Neptune DB: A fully managed, highly available, and scalable graph database service optimized for storing, querying, and navigating highly connected datasets (relationships between data points) using popular graph models (Property Graph, RDF) and query languages (Gremlin, SPARQL, openCypher), ideal for use cases like social networking, recommendation engines, fraud detection, and knowledge graphs where relationships are as important as the data itself.
- Amazon ElastiCache: Is a fully managed in-memory caching service that supports Redis and Memcached engines to significantly improve application performance by reducing database load and latency for frequently accessed data. Redis offers advanced features like persistence (snapshots), replication (read replicas), automatic failover, pub/sub, geospatial indexing, transactions, and complex data structures (lists, sets, hashes), making it suitable for leaderboards, session management, and real-time analytics, supporting encryption at rest and in transit; Memcached is simpler, multi-threaded, and ideal for object caching and scaling out by adding/removing nodes, but lacks persistence or replication features, while both engines provide sub-millisecond latency and are integrated with CloudWatch for monitoring.
Feature / DB Type |
Amazon RDS (Relational Database Service) |
Amazon Aurora |
Amazon DynamoDB |
Amazon Redshift |
Amazon Neptune |
Amazon ElastiCache (Redis/Memcached) |
Database Type |
Relational (SQL) |
Relational (SQL) - MySQL & PostgreSQL compatible |
NoSQL (Key-Value, Document) |
Data Warehouse (Columnar, SQL) |
Graph (Property Graph, RDF) |
In-Memory Cache (Key-Value, Data Structures) |
Core Use Cases |
Traditional OLTP (e.g., CRM, ERP, e-commerce backend), known schema, strong transactional consistency (ACID). |
High-performance OLTP, demanding SaaS, global apps, where high availability & performance are critical for relational workloads. |
High-scale, low-latency applications (e.g., mobile, gaming, IoT, ad tech), flexible schema, serverless backends, often with bursty traffic. |
OLAP (Online Analytical Processing), large-scale analytics, business intelligence, complex SQL queries on petabytes of data. |
Social networking, recommendation engines, fraud detection, knowledge graphs, network security. |
Caching, session stores, real-time analytics, leaderboards, message brokers (Redis Pub/Sub). |
Scalability |
Vertical(instance size), Horizontal(Read Replicas up to 15), Storage Autoscaling; Read Replicas do not support writes. |
Vertical (master instance resize), Horizontal (Aurora Replicas auto-scaling 0-15), Storage Auto-scaling (up to 128TB); Separate reader/writer endpoints. |
Massive horizontal scaling (auto-partitioning); scales read/write capacity units (RCU/WCU) automatically (On-Demand) or provisioned. |
Horizontal(add/remove nodes in a cluster), Vertical(resize nodes); scales storage and compute separately. |
Horizontal(Read Replicas up to 15), Storage Auto-scaling; Separate writer/reader endpoints; Supports serverless. |
Horizontal (add shards/clusters), Vertical(node size); Auto-discovery of nodes. |
Availability |
Multi-AZ deployments(synchronous standby) for auto-failover, automatic backups, point-in-time recovery. |
Designed for 99.99% availability; self-healing storage, auto-failover to replicas (15 replicas across 3 AZs), Global Database for cross-region disaster recovery. |
Multi-AZ (3 AZs per region), Global Tables(multi-region active-active replication) for high availability and low latency globally. |
Multi-AZ deployments(managed for redundancy), automated snapshots to S3. |
Multi-AZ deployments (6 copies across 3 AZs), auto-failover to replicas, continuous backup. |
Multi-AZ with replication groups(Redis) for failover; Memcached is simpler, less HA. |
Consistency |
Strongly Consistent(ACID compliant) |
Strongly Consistent(ACID compliant) |
Eventually Consistent(default for reads), Strongly Consistent(optional for reads at higher cost). |
Strongly Consistent(for analytics queries) |
Strongly Consistent(for writes to master), eventual for replica reads. |
Eventually Consistent(Memcached), Configurable (Redis - can be strongly consistent with AOF/snapshots). |
Pricing Model |
Instance hours, storage, I/O, backup storage, data transfer. |
Instance hours, I/O (separate charge for I/O-Optimized), storage, backup, data transfer. |
RCU/WCU (provisioned or On-Demand), storage, global tables, backup. |
Compute node hours, storage (managed storage option available), data transfer. |
Instance hours, I/O, storage, backup. |
Node hours, storage, data transfer. |
Schema |
Strict, predefined(relational) |
Strict, predefined(relational) |
Flexible, schemaless(NoSQL documents/key-value pairs) |
Strict, predefined(relational for OLAP) |
Flexible (nodes and edges can have varying properties) |
Flexible (key-value, simple data structures) |
Query Language |
SQL |
SQL (MySQL/PostgreSQL compatible) |
PartiQL (SQL-like), API operations (GetItem, PutItem, Query, Scan). |
SQL |
Gremlin, SPARQL, openCypher |
N/A (API operations specific to Redis/Memcached) |
Serverless Option |
RDS Serverless v2 (scaling based on demand, for relational). |
Aurora Serverless v2 (rapid scaling for relational), Aurora Serverless v1 (older, slower scaling). |
Fully Serverless(no instances to manage, scales automatically). |
Redshift Serverless (pay per usage, automatic scaling for analytical workloads). |
Neptune Serverless (automatic scaling for graph workloads). |
No direct serverless; managed service. |
Managed By AWS |
Yes(Automates patching, backups, scaling, replication, monitoring). |
Yes (Even more managed than RDS, auto-healing storage, continuous backup). |
Fully Managed (no servers, OS, or patching), auto-scaling. |
Yes(Automates provisioning, patching, scaling, monitoring, backups). |
Fully Managed(provisioning, patching, backup, scaling). |
Fully Managed(setup, patching, scaling, backups). |
Feature |
Amazon ElastiCache for Redis(Redis OSS) |
Amazon ElastiCache for Memcached |
Amazon ElastiCache for Valkey |
Engine Type |
Open-source, in-memory data store |
Open-source, in-memory key-value cache |
Open-source fork of Redis (aims for drop-in compatibility) |
Primary Use Case |
Advanced Caching, Leaderboards, Session Stores, Pub/Sub, Real-time analytics, geospatial. |
Simple object caching, reducing database load, scaling reads. |
Similar to Redis:Â Advanced Caching, Session Stores, Pub/Sub, Real-time analytics. |
Data Structures |
Rich data structures: Strings, Hashes, Lists, Sets, Sorted Sets, Streams, Bitmaps, Geospatial. |
Simple key-value store(strings only). |
Rich data structures (same as Redis OSS): Strings, Hashes, Lists, Sets, Sorted Sets, etc. |
Persistence |
Yes: RDB snapshots (point-in-time) and AOF (Append-Only File) for data durability/recovery. |
No: Purely in-memory, data is lost on node failure or restart. |
Yes: RDB snapshots and AOF for data durability/recovery. |
Replication |
Yes: Primary-replica replication (read replicas) for high availability and read scaling. |
No: Achieved through client-side sharding across nodes. |
Yes: Primary-replica replication for high availability and read scaling. |
High Availability (HA) |
Multi-AZ with automatic failover to a read replica; Global Datastore for cross-Region replication. |
Client-side partitioning/sharding; no built-in failover. |
Multi-AZ with automatic failover to a read replica; Global Datastore for cross-Region replication. |
Multi-Threading |
Single-threaded (per shard/core) – scales with more cores. |
Multi-threaded – scales by utilizing multiple cores. |
Single-threaded (per shard/core) – scales with more cores. |
Clustering/Sharding |
Yes (Cluster Mode Enabled): Data partitioning across multiple shards (node groups). |
Yes: Data partitioning across multiple nodes (client-side). |
Yes (Cluster Mode Enabled): Data partitioning across multiple shards. |
Transactions |
Yes: Supports atomic execution of commands. |
No. |
Yes: Supports atomic execution of commands. |
Pub/Sub |
Yes: Message broker capabilities. |
No. |
Yes: Message broker capabilities. |
Encryption |
Yes: Encryption in transit (TLS) and encryption at rest. |
No: No built-in encryption. |
Yes: Encryption in transit (TLS) and encryption at rest. |
Use Cases (Specific) |
Session management, caching, gaming leaderboards, real-time analytics, geospatial, message queues. |
Simple, high-performance object caching, DNS caching. |
Similar to Redis OSS; aiming for full compatibility while being community-driven. |
Scalability |
Scale up/down, scale out (read replicas/shards). |
Scale out (add/remove nodes) or scale up/down. |
Scale up/down, scale out (read replicas/shards). |
Serverless Option |
Yes, ElastiCache Serverless supports Redis OSS. |
Yes, ElastiCache Serverless supports Memcached. |
Yes, ElastiCache Serverless supports Valkey. |
Exam Focus |
Feature-rich, persistence, HA, complex data. For critical cached data. |
Simple, high-performance, no persistence/HA built-in, scale-out for objects. |
New alternative to Redis OSS, retains Redis features, open-source focus. |
Feature |
OLTP (Online Transaction Processing) |
OLAP (Online Analytical Processing) |
Primary Purpose |
To manage and process day-to-day business transactions in real-time. |
To analyze historical and aggregated data for business intelligence and decision-making. |
Workload Type |
High volume of small, frequent, and short transactions (INSERT, UPDATE, DELETE, simple SELECT). |
Low volume of complex, long-running queries (SELECT with aggregations, joins, etc.). |
Data Type |
Current, operational data. Reflects the most up-to-date state. |
Historical and aggregated data, often from multiple sources, including OLTP systems. |
Data Model/Schema |
Highly normalized (e.g., 3NF) to minimize data redundancy and ensure data integrity. |
Often denormalized (e.g., Star Schema, Snowflake Schema) to optimize for analytical queries. |
Database Design |
Optimized for fast write operations and data integrity (ACID properties). |
Optimized for fast read operations and complex analytical queries. |
Response Time |
Milliseconds (critical for user experience). |
Seconds, minutes, or even hours (depending on complexity and data volume). |
Users |
Front-line employees (cashiers, sales associates, customer service reps) and customer-facing applications. |
Business analysts, data scientists, executives, and reporting tools. |
Data Volume |
Generally smaller, as historical data is often moved to OLAP systems. |
Very large (terabytes to petabytes), as it stores vast amounts of historical data. |
Availability |
High availability is crucial (24/7), as downtime impacts business operations directly. |
High availability is important, but not as critical as OLTP; data can often be reloaded. |
Backup Strategy |
Frequent, often continuous backups to ensure data integrity and minimal data loss. |
Less frequent backups; data can often be reloaded from source OLTP systems or ETL processes. |
Examples of Use |
E-commerce transactions, online banking, ATM withdrawals, order entry, customer relationship management (CRM) systems, inventory management. |
Sales forecasting, trend analysis, financial reporting, market basket analysis, customer segmentation, budget planning. |
Typical AWS Services |
Amazon RDS, Amazon DynamoDB, Amazon Aurora, Amazon DocumentDB. |
Amazon Redshift, Amazon Athena, Amazon EMR, AWS Lake Formation, Amazon QuickSight. |
- enableDnsHostnames: Indicates whether the instances launched in the VPC get public DNS hostnames. If this attribute is true, instances in the VPC get public DNS hostnames, but only if the enableDnsSupport attribute is also set to true.
- enableDnsSupport: Indicates whether the DNS resolution is supported for the VPC. If this attribute is false, the Amazon-provided DNS server in the VPC that resolves public DNS hostnames to IP addresses is not enabled. If this attribute is true, queries to the Amazon provided DNS server at the 169.254.169.253 IP address, or the reserved IP address at the base of the VPC IPv4 network range plus two (
*.*.*.2
) - (e.g., for a VPC with CIDR 10.0.0.0/16, the DNS server is 10.0.0.2) will succeed. - When using interface VPC endpoints for AWS services (AWS PrivateLink), enabling
enableDnsHostnames
andenableDnsSupport
in the VPC is a prerequisite for the private DNS option of the endpoint to work correctly. This allows service names to resolve to private IP addresses of the endpoint, preventing traffic from traversing the public internet.
- AWS Elemental MediaConnect: Secure, Reliable, High-Quality Live Video Transport in the Cloud: AWS Elemental MediaConnect is a highly reliable, secure, and flexible service for transporting high-value live video streams into, through, and out of the AWS Cloud. It supports various industry-standard protocols (e.g., Zixi, RIST, SRT) and offers features like automatic reliability via redundant ingest/egress, built-in security (AES encryption), and integrated monitoring. For SAP-C02, MediaConnect is critical for designing broadcast-grade live video workflows, content contribution, and distribution at scale, especially for scenarios involving high-value, low-latency live video streams that require guaranteed quality of service and robust transport across complex network environments, including hybrid setups via MediaConnect Gateway for on-premises multicast integration.
- AWS Ground Station: Fully Managed Satellite Ground Station as a Service: AWS Ground Station is a fully managed service that provides a global network of ground stations (antennas) that allow you to control your satellites and downlink satellite data (telemetry, imagery, mission data) directly into AWS Regions. It eliminates the need for customers to build or lease their own physical ground station infrastructure. For SAP-C02, Ground Station is a specialized service for use cases in aerospace, defense, scientific research, and commercial satellite operations, enabling on-demand access to satellites for command & control and high-volume data ingestion. It integrates directly with other AWS services (S3 for storage, EC2/Lambda for processing) for immediate, low-latency data processing and analysis once downlinked, significantly reducing the cost and complexity of satellite communications.
- Amazon CloudFront: A global Content Delivery Network (CDN) service that securely delivers content (static, dynamic, streaming, interactive) to users with low latency and high transfer speeds by caching data at Edge Locations worldwide; reduces origin server load, improves user experience, and integrates seamlessly with S3 (for static content), EC2/ALB (for dynamic content), and AWS WAF for security, making it critical for high-performance, globally distributed, and secure web architectures, a common SAP-C02 scenario.
- CloudFront: Field-Level Encryption: CloudFront's Field-Level Encryption provides an additional layer of security for specific sensitive data fields (e.g., PII, credit card numbers) within HTTPS requests, by encrypting them at the CloudFront edge location using an application's public key before the request is forwarded to the origin, ensuring the sensitive data remains encrypted end-to-end and only the application's private key (stored at the origin or a secure location) can decrypt it, thereby helping meet specific compliance requirements and reducing the attack surface on the origin.
- CloudFront: Caching (Cache Control & Modifiable Parameters): CloudFront's caching mechanism optimizes content delivery by storing copies of objects at edge locations; its behavior is highly customizable via Cache Policies(which replace older Cache Behaviors and offer more granular control), allowing you to define min-TTL, max-TTL, default-TTL (for Cache-Control header overrides), and specify which HTTP methods (GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE) to cache; you can further optimize caching by including or excluding specific HTTP headers, query string parameters, and cookies in the cache key, which creates unique cache entries but reduces cache hit ratio if too many variations are allowed, while also configuring compression (Gzip/Brotli) for supported content types to reduce transfer sizes. Look for Cache-Control (: no-cache / max-age=X / etc.) or Expired header in the origin response - default values for Managed-CachingOptimized policy: 24h, min=0, max=1year.
- CloudFront: Origin Access Control (OAC): Origin Access Control (OAC) is the recommended and more secure method for restricting direct public access to your S3 buckets and HTTP custom origins, ensuring that content can onlybe accessed through CloudFront; OAC utilizes a stronger and more secure authentication mechanism (IAM service principals and OIDC) compared to the older Origin Access Identity (OAI), supports all S3 Regions and all HTTP methods (GET, PUT, POST, DELETE, etc.) for S3 origins, and seamlessly integrates with CloudFront functions for advanced authorization, crucial for protecting your origin content from being bypassed.
- CloudFront: Custom SSL Certificates: CloudFront supports Custom SSL Certificates to enable HTTPS for your custom domain names (e.g., www.example.com), ensuring secure communication between clients and CloudFront edge locations. For global CloudFront distributions, any SSL/TLS certificate managed by AWS Certificate Manager (ACM) or imported into ACM must be provisioned in the US East (N. Virginia) us-east-1 Region, as this is the canonical region from which CloudFront's global edge network retrieves and distributes certificates; this allows secure HTTPS traffic to be served from any edge location worldwide using your custom domain.
- CloudFront: User-Agent & Host Header Forwarding: CloudFront allows you to control whether User-Agent and Host headers are forwarded from the client request to your origin server, a critical configuration that can influence caching behavior and origin logic. Forwarding the Host header is often necessary for origins hosting multiple websites or requiring the original hostname for routing. Forwarding the User-Agent header enables origins to serve device-specific content or perform analytics based on the client's browser/device. Both are configured via Cache Policies (specifically through the "Headers" setting); however, forwarding these headers (or any header, query string, or cookie) makes the cache key more specific, potentially reducing the cache hit ratio as it creates more unique cache entries, requiring careful consideration for performance vs. dynamic content needs.
- CloudFront Geo-restriction: CloudFront geo-restriction provides edge-level content access control by allowing or blocking viewers based on their geographic country location (IP address), configured directly on the distribution with an allow or block list; it's ideal for enforcing content licensing agreements or regulatory compliance, ensuring restricted users never even reach your origin.
- AWS Direct Connect (Dedicated Private Connectivity): Establishes a dedicated, private network connection from your on-premises data center to an AWS Direct Connect location, bypassing the public internet; offers consistent network performance, reduced bandwidth costs, and increased security compared to internet-based VPNs, ideal for high-throughput, low-latency, and consistent performance requirements (e.g., hybrid cloud databases, large data transfers, real-time applications) to a single VPC (or multiple via Transit Gateway/VGWs) in SAP-C02 hybrid architecture designs. One Dedicated DC can support upto 50 VIFs (see below for VIFs); Hosted DCs usually support 1 VIF per connection.
- Direct Connect with VPN (Encrypted Private Connectivity): Combines a Direct Connect private connection with an AWS Site-to-Site VPN (over the private DX circuit) to add an extra layer of encryption (IPsec) for data in transit; provides both the dedicated bandwidth and performance of Direct Connect plus the end-to-end encryption often required for sensitive data or compliance mandates, forming a highly secure and performant hybrid cloud connection for mission-critical enterprise workloads in SAP-C02.
- AWS Direct Connect + VPN (Encrypted): Hybrid Cloud Private, Encrypted, and Consistent Connectivity: AWS Direct Connect (DX) provides a dedicated, high-bandwidth, and consistent network connection between your on-premises network and AWS, bypassing the public internet. By default, DX itself does not encrypt traffic in transit; however, to achieve end-to-end IPsec encryption, you combine DX with AWS Site-to-Site VPN. This combined solution offers the reliable performance and reduced data transfer costs of DX with the security of IPsec VPN tunnels, critical for regulatory compliance and protecting sensitive data in hybrid environments.
- Virtual Interfaces (VIFs) and Encryption Methods:
- Private/Transit Virtual Interface (Private/Transit VIF) + Private IP VPN: This is the most secure and recommended approach for SAP-C02. It allows IPsec VPN tunnels to be established over your private DX connection using private IP addresses for both the on-premises Customer Gateway and the AWS VPN endpoint (on a Transit Gateway). This ensures end-to-end encrypted traffic remains entirely on the private network path, never touching the public internet, offering maximum privacy and security for critical workloads.
- Public Virtual Interface (Public VIF) + VPN: An older, still valid method where IPsec VPN tunnels are established over the DX connection to public IP addresses of AWS VPN endpoints. While using the DX backbone, the VPN termination points are publicly routable. This is less secure than Private IP VPN as it involves public endpoints.
- MACsec (Layer 2 Encryption): (Optional, for 10/100 Gbps DX links) Provides Layer 2 encryption directly on the Direct Connect physical link, between your network device and the DX router, offering high-performance link encryption, distinct from IPsec VPN.
- SAP-C02 Relevance: This combined approach is vital for designing secure and compliant hybrid architectures where both performance/cost efficiency (DX) and data confidentiality (VPN) are paramount. Choosing between Public VIF-based VPN and the preferred Private IP VPN over Private/Transit VIFs is a critical design decision for network security posture, meeting strict compliance requirements (e.g., HIPAA, PCI DSS), and optimizing RTO/RPO for disaster recovery by ensuring sensitive data remains fully private.
- Virtual Interfaces (VIFs) and Encryption Methods:
- AWS Direct Connect Gateway (DXGW): A globally available network device that serves as a centralized hub to connect multiple Direct Connect (DX) connections (from various AWS Direct Connect locations or customer on-premises data centers) to Virtual Private Gateways (VPGs) for single VPC connectivity or Transit Gateways (TGWs)for multi-VPC/multi-account connectivity, even across different AWS Regions and accounts; DXGW allows you to avoid creating multiple DX connections to each region/VPC, providing a highly scalable and resilient hybrid cloud architecture, with Transit VIFs specifically used for TGW associations, but crucially, it does not support transitive routing between associated VPGs or TGWs (i.e., traffic cannot flow directly between two VPCs or two TGWs through the DXGW itself without additional routing).
- Virtual Private Gateway (VPG): The VPN endpoint on the Amazon side of a Site-to-Site VPN connection (for IPsec VPN over the internet) or a Direct Connect private virtual interface (VIF), providing a highly available connection to a single VPC within a single AWS Region; it's the fundamental component for establishing secure and private network connectivity from your on-premises network to your AWS VPC, propagating routes to the VPC route table via BGP (if configured) or static routes, and is commonly used for simpler, single-VPC hybrid setups, often superseded by Transit Gateway for more complex multi-VPC or multi-account scenarios.
- AWS Direct Connect Virtual Interfaces (VIFs): Logical network connections over a dedicated or hosted Direct Connect connection, enabling access to different AWS services:
- Private VIF: Connects to a Virtual Private Gateway (VPG) for private access to a single VPC in the same AWS Region, or to a Direct Connect Gateway (DXGW) for private access to multiple VPCs/Transit Gateways (TGWs) across regions/accounts.
- Public VIF: Connects to AWS public services (e.g., S3, EC2 public endpoints, DynamoDB public endpoints) that are reachable via a public IP address, directly over the Direct Connect connection, bypassing the internet.
- Transit VIF: Specifically used to connect to a Direct Connect Gateway (DXGW), which is then associated with one or more AWS Transit Gateways (TGWs), enabling private connectivity to a large number of VPCs across multiple AWS accounts and Regions via the Transit Gateway.
- AWS Site-to-Site VPN: A managed service providing a secure, encrypted (IPsec) VPN tunnel over the public internet between your on-premises network (via a Customer Gateway device) and an AWS VPC (via a Virtual Private Gateway or Transit Gateway); it provides two tunnels for redundancy and high availability and is a cost-effective alternative or backup to Direct Connect for establishing hybrid connectivity, especially for lower bandwidth needs or when a physical Direct Connect presence isn't feasible.
- On-Premises to Multiple AWS VPCs via Direct Connect (SAP-C02 Architecture):
- The architecture for highly available, scalable on-premises to multi-VPC AWS connectivity centers on leveraging AWS Direct Connect (DX) with Direct Connect Gateway (DXGW) and AWS Transit Gateway (TGW). From the On-Premises Network, redundant routers (supporting BGP) connect via Direct Connect connections (either Dedicated 1-400Gbps physical ports or Hosted connections provided by a DX Partner). For high availability and increased bandwidth, multiple DX connections should terminate at diverse AWS DX locations, potentially bundled into a Link Aggregation Group (LAG) using LACP for logical bundling and resilience. Over these physical connections, Virtual Interfaces (VIFs) are provisioned: Public VIFs access AWS public service endpoints; Private VIFs (legacy) connect to a single Virtual Private Gateway (VPG) attached to one VPC; but for multi-VPC scale, Transit VIFs are crucial, connecting to a Direct Connect Gateway (DXGW). The DXGW is a globally available hub that associates Transit VIFs with Transit Gateways (TGWs) located in different AWS Regions and accounts, enabling a single DX connection to reach multiple TGWs/VPCs; importantly, DXGW does not support transitive routing between associated TGWs/VPCs directly. The AWS Transit Gateway (TGW), a regional resource, acts as the central routing hub within AWS, attaching to multiple VPCs (including cross-account via AWS RAM) and also to the DXGW. Each VPC attached to the TGW must have a non-overlapping CIDR block with all other connected networks, with VPC route tables directing relevant traffic to the TGW attachment. Finally, for DNS resolution in this hybrid environment, AWS Route 53 Resolver is critical, with Inbound Endpoints allowing on-premises DNS to query AWS Private Hosted Zones (PHZs), and Outbound Endpointsenabling AWS resources to query on-premises DNS; best practice for cross-account private DNS involves centralizing the PHZ in a shared services account, sharing it via AWS RAM, and programmatically associating other accounts' VPCs with this central PHZ, rather than using complex NS delegations.
- If you are using a Transit Gateway to connect multiple VPCs to your on-premises network via VPN or Direct Connect, you would typically need zero (0) Virtual Private Gateways (VGWs) on the VPC side that connect directly to on-premises. Here's why:
- VPC-attached VGWs vs. Transit Gateway:
- Historically, to connect an on-premises network to an AWS VPC, you would attach a Virtual Private Gateway (VGW) directly to that specific VPC and then establish a Site-to-Site VPN or Direct Connect private VIF to that VGW. This meant one VGW per VPC you wanted to connect to on-premises.
- Transit Gateway centralizes this. When using a Transit Gateway, your on-premises network (via VPN or Direct Connect) connects directly to the Transit Gateway, not to individual VPCs' VGWs.
- How it works with Transit Gateway:
- You establish a Site-to-Site VPN connection or a Direct Connect Gateway (DXGW) associated with a Private Virtual Interface (VIF) to the Transit Gateway.
- All your VPCs then attach to the Transit Gateway as VPC attachments.
- The Transit Gateway acts as the central router, allowing traffic to flow between your on-premises network and any of the attached VPCs.
- VPC-attached VGWs vs. Transit Gateway:
- Link Aggregation Group (LAG) for AWS Direct Connect: A logical interface that combines multiple dedicated AWS Direct Connect connections (e.g., 1Gbps, 10Gbps, 100Gbps, 400Gbps ports) at a single AWS Direct Connect location into a single, managed connection, leveraging Link Aggregation Control Protocol (LACP) for dynamic negotiation, load balancing (per flow), and automatic failover across the bundled connections; LAGs enhance bandwidth, resilience (e.g., specifying a minimum number of operational links for the LAG to stay up), and provide a single BGP session over the aggregated links, making them a critical component for high-throughput, highly available on-premises to AWS connectivity.
- AWS PrivateLink & Related Services (SAP-C02): AWS PrivateLink enables private, secure, one-way connectivitybetween VPCs, AWS services (e.g., S3, DynamoDB, Kinesis, EC2 APIs), and on-premises networks without traversing the public internet, public IP addresses, or requiring VPC peering/Transit Gateway for direct service access. It works by creating Interface VPC Endpoints (powered by PrivateLink) within your consumer VPCs, which are represented by Elastic Network Interfaces (ENIs) with private IPs in your chosen subnets. Service providers create an Endpoint Service by placing their service behind a Network Load Balancer (NLB), then grant permissions to specific AWS accounts to consume this service. Traffic flows from the consumer VPC to the Interface Endpoint ENI, then directly to the NLB/service in the provider's VPC via AWS's private network backbone. This provides enhanced security, simplified network architecture (no route table management or CIDR overlap issues between consumer and provider VPCs for the specific service), and reduced operational overhead. For accessing S3 or DynamoDB, Gateway VPC Endpoints (which are free and do not use PrivateLink) are used, requiring route table updates to direct traffic to the endpoint; for all other supported AWS services and partner/custom services, Interface VPC Endpoints are used. PrivateLink also supports cross-Region connectivity for Endpoint Services, allowing consumers in one region to privately access services in another.
- VPN Tunnels to Multiple VPCs (Decentralized VPN): Involves establishing separate AWS Site-to-Site VPN connections from on-premises to individual Virtual Private Gateways (VGWs) attached to each desired VPC; provides secure, encrypted connectivity over the public internet (or over Direct Connect for encryption), but can lead to operational complexity and scaling challenges (e.g., many VPN tunnels to manage, routing complexities) as the number of VPCs grows, often prompting a move to AWS Transit Gateway for centralized routing in SAP-C02 scaling scenarios.
- VPC Peering (Direct 1:1 VPC Connectivity): A network connection between two VPCs (in the same or different AWS accounts/regions) that allows private IP communication between instances as if they were in the same network, without traversing the public internet; non-transitive (meaning VPC A peered to VPC B, and B to C, does not mean A can talk to C), requiring a full mesh for many-to-many connectivity, making it suitable for simple, limited inter-VPC communication needs but scales poorly for complex hub-and-spoke or large multi-VPC environments, a key distinction for SAP-C02 network design.
- AWS Transit Gateway (Centralized Network Hub): A highly scalable and fully managed network transit hub that connects thousands of VPCs, on-premises networks (via VPN/Direct Connect), and even other Transit Gateways (peering) in a hub-and-spoke model; simplifies network architecture by centralizing routing and eliminating the need for a full mesh of VPC peering connections, offering enhanced security control, simplified routing tables, and inter-VPC/hybrid connectivity through a single gateway, making it the go-to solution for complex, large-scale, multi-VPC, multi-account, and hybrid cloud network designs in SAP-C02.
- AWS Transit Gateway (Highly Available, Managed, Scalable): A fully managed Regional virtual router that inherently provides high availability by being deployed across multiple Availability Zones within a region without requiring customer configuration (AWS handles redundancy); it requires no customer management of underlying infrastructure; elastically scales based on network traffic, supporting up to 5,000 VPC attachments and tens of Gbps to 100 Gbps of burst bandwidth per VPC/DX attachment, with Connect attachments reaching 20 Gbps total (via 4 GRE tunnels, each up to 5 Gbps, supporting ECMP for higher throughput); this centralized, highly resilient, and performant network hub is the go-to solution for complex, large-scale, multi-VPC, and hybrid cloud network designsin SAP-C02 scenarios, simplifying routing and improving operational efficiency.
- AWS Network Firewall: A fully managed, stateful network firewall and intrusion detection/prevention service(IDS/IPS) for VPCs, enabling granular L3-L7 traffic filtering (IP, port, protocol, FQDN/domain, Suricata-compatible rules) with automatic scaling up to 100 Gbps per AZ, logs to S3/CloudWatch/Kinesis Firehose, and is commonly deployed in a centralized inspection VPC (often connected via Transit Gateway) or distributed across individual VPCs, allowing for fine-grained control over North-South (Internet/on-prem to VPC) and East-West (VPC-to-VPC) traffic.
- AWS RAM Shared Services VPC with VPC Peering & Cross-Account DNS: For common DNS management across multiple AWS accounts connected by VPC Peering or (preferably for scale/complexity) AWS Transit Gateway to a central Shared Services VPC, the most scalable and recommended approach for private DNS resolution is to host the central Private Hosted Zone (PHZ) in the Shared Services account and programmatically associate (via AWS CLI/SDK, not console) the VPCs from other accounts with this central PHZ. This leverages Route 53 Resolver (and potentially Resolver Rules/Endpoints for hybrid DNS) for cross-account DNS lookups, avoids the complexities and limitations of NS delegations for private zones, and is superior to individual PHZs with NS entries in each account, which adds significant management overhead and can cause resolution issues with overlapping namespaces.
- You can use the Amazon Route 53 console to associate more VPCs with a private hosted zone if you created the hosted zone and the VPCs by using the same AWS account. Additionally, you can associate a VPC from one account with a private hosted zone in a different account. If you want to associate VPCs that you created by using one account with a private hosted zone that you created by using a different account, you first must authorize the association. In addition, you can't use the AWS console either to authorize the association or associate the VPCs with the hosted zone. To associate an Amazon VPC and a private hosted zone that you created with different AWS accounts, perform the following procedure:
- Using the account that created the hosted zone, authorize the association of the VPC with the private hosted zone by using one of the following methods:
- -AWS CLI – using the
create-vpc-association-authorization
in the AWS CLI / -AWS SDK or AWS Tools for Windows PowerShell / -Amazon Route 53 API – Using theCreateVPCAssociationAuthorization
API -
- When you authorize the association, you must specify the hosted zone ID, so the private hosted zone must already exist.
- -AWS CLI – using the
- Using the account that created the VPC, associate the VPC with the hosted zone. As with authorizing the association, you can use the AWS SDK, Tools for Windows PowerShell, the AWS CLI, or the Route 53 API. Optional but recommended – Delete the authorization to associate the VPC with the hosted zone. Deleting the authorization does not affect the association, it just prevents you from reassociating the VPC with the hosted zone in the future. If you want to reassociate the VPC with the hosted zone, you'll need to repeat steps 1 and 2 of this procedure.
Feature |
Approach 1: Individual PHZ with NS Delegation |
Approach 2: Central PHZ with VPC Association (Recommended) |
Centralization |
Partial (only NS records) |
Full (all shared records) |
Scalability |
Poor (N+M updates) |
Excellent (N updates for N VPCs) |
Management |
High overhead, error-prone |
Low overhead, streamlined |
Complexity |
Higher for private DNS delegation |
Lower, leverages native R53 features |
Troubleshooting |
Difficult |
Easier |
Best Use Case |
Not ideal for private cross-account DNS. |
Enterprise-scale multi-account private DNS. |
Recommended |
No |
Yes |
- Amazon Route 53: Highly Available & Scalable DNS Web Service with Hybrid Cloud DNS Capabilities: Route 53 is a highly available and scalable cloud DNS (Domain Name System) web service that acts as a domain registrar, DNS service, and health checker. It translates human-readable domain names (e.g., example.com) into numerical IP addresses (e.g., 192.0.2.1), routing user requests to AWS resources or external endpoints.
- Custom Domains & Routing Policies: You manage DNS records in public or private hosted zones. Route 53 offers various routing policies to optimize traffic flow, including:
- Simple: Basic DNS record.
- Failover: Routes traffic to a healthy secondary endpoint if the primary fails (requires health checks).
- Latency-Based: Routes traffic to the region with the lowest latency.
- Geolocation: Routes traffic based on the user's geographic location.
- Geoproximity: Routes traffic based on user location and resource location, with optional "bias" to favor certain regions.
- Weighted: Distributes traffic across multiple endpoints based on assigned weights.
- Multivalue Answer: Returns multiple IP addresses for DNS queries for highly available, random load balancing (not health-checked).
- IP-Based: Routes traffic based on the client's source IP address ranges (using CIDR collections).
- Hybrid Cloud DNS (Route 53 Resolver Endpoints):
- Inbound Resolver Endpoints: Allows on-premises DNS resolvers to forward DNS queries to Route 53 for resolving DNS records in your AWS VPCs (e.g., Private Hosted Zones). This enables on-premises servers to resolve names for AWS resources.
- Outbound Resolver Endpoints: Allows AWS VPC resources to forward DNS queries to on-premises DNS resolvers (or other external DNS servers) for resolving on-premises or external domain names. This enables AWS resources to resolve names for on-premises systems.
- These endpoints are critical for seamless DNS resolution in hybrid cloud environments (via Direct Connect or VPN), eliminating the need to deploy and manage DNS servers in your VPCs for hybrid scenarios.
- SAP-C02 Relevance: Route 53 is fundamental for global application architectures, disaster recovery (RTO/RPO via failover routing), and hybrid cloud integration. Understanding its various routing policies for traffic management and its Resolver endpoints for seamless DNS resolution between AWS and on-premises environments is crucial for designing highly available, performant, and well-integrated enterprise solutions.
- Custom Domains & Routing Policies: You manage DNS records in public or private hosted zones. Route 53 offers various routing policies to optimize traffic flow, including:
- Amazon Route 53 DNS Record Types: Core Building Blocks for Domain Name Resolution: Route 53 manages different DNS record types, each serving a specific purpose in translating domain names to IP addresses or other resources, crucial for traffic routing and service discovery.
- A Record (Address Record): Maps a domain name (e.g., example.com or www.example.com) directly to an IPv4 address (e.g., 192.0.2.1). This is the most common record type for pointing a domain to a server or web application.
- AAAA Record (Quad-A Record): Maps a domain name to an IPv6 address (e.g., 2001:0db8:85a3::8a2e:0370:7334). Used for IPv6-enabled resources.
- CNAME Record (Canonical Name Record): Maps an alias or subdomain (e.g., blog.example.com) to another domain name (a canonical name), not directly to an IP address. The DNS resolver then performs an additional lookup for the canonical name to get its IP.
- Key Restriction: CNAME records CANNOT be created at the "zone apex" or "naked domain" (e.g., example.com itself). This is a fundamental DNS standard limitation, as the apex needs to resolve to an IP directly.
- Alias Record (Route 53 Specific Extension): A Route 53-specific virtual record type that functions similarly to a CNAME but has crucial advantages for AWS resources:
- Zone Apex Support: Unlike CNAMEs, Alias records CAN be created at the zone apex(example.com), allowing you to point your root domain to AWS resources (like ALBs, CloudFront distributions, S3 static websites) that are themselves DNS names.
- AWS Resource Targets: Can only point to selected AWS resources (ALBs, CloudFront distributions, S3 buckets configured for static website hosting, API Gateway, Elastic Beanstalk environments, VPC interface endpoints, Global Accelerator).
- Automatic IP Resolution: Route 53 resolves the target AWS resource's IP address internally and responds directly with the IP, avoiding additional DNS lookups by the client, leading to faster resolution.
- Free Queries: Queries for Alias records targeting AWS resources are free in Route 53.
- Health Check Integration: Alias records can directly inherit the health of their target AWS resource (e.g., an ALB), enabling seamless failover routing policies without needing separate Route 53 health checks.
- MX Record (Mail Exchange Record): Specifies the mail servers responsible for accepting email messages on behalf of a domain, often including a priority value for multiple servers.
- NS Record (Name Server Record): Identifies the authoritative DNS name servers for a hosted zone. These records are automatically created by Route 53 when you create a hosted zone and must be updated with your domain registrar for public domains.
- SOA Record (Start of Authority Record): Provides administrative information about a domain/zone, including the primary name server, domain administrator's email, serial number, and various timers for zone transfers. Automatically created by Route 53.
- TXT Record (Text Record): Stores arbitrary text information associated with a domain, commonly used for domain verification (e.g., for SSL certificates, G Suite), SPF (Sender Policy Framework) for email authentication, and DKIM (DomainKeys Identified Mail).
- PTR Record (Pointer Record): Maps an IP address back to a domain name (Reverse DNS lookup). Primarily used for email validation, troubleshooting, and security checks.
- SRV Record (Service Record): Specifies the location (hostname and port number) of servers for specific services (e.g., SIP for VoIP, XMPP for instant messaging).
- SAP-C02 Relevance: A deep understanding of these record types is critical for designing highly available, scalable, and secure application architectures on AWS. The distinction between CNAME and Alias records (especially regarding zone apex support, performance, and cost) is a frequent exam topic. Knowing when to use each record type is fundamental to optimizing DNS resolution and traffic flow for various AWS and hybrid cloud deployments.
- Route 53 Health Checks: Actively monitor the health and performance of your endpoints (EC2 instances, ELBs, web servers, on-premises resources, etc.) by making HTTP, HTTPS, TCP, or string match requests from diverse global locations, enabling DNS Failover to unhealthy endpoints (via weighted, latency-based, geolocation, or multivalue routing policies), and can also monitor CloudWatch alarms for resources in private VPCs or for composite application health, distinct from ALB/NLB health checks which monitor the health of targets within their target groups to distribute traffic, while Route 53 health checks influence DNS resolution at the global level.
- DNSSEC (Domain Name System Security Extensions): Is a set of security extensions to the DNS protocol that adds cryptographic digital signatures to DNS data. Its primary purpose is to provide data origin authentication and data integrity verification for DNS responses. This means it helps to ensure that a DNS response (e.g., an IP address for a domain name) originated from the legitimate authoritative DNS server and that the response has not been tampered with in transit. It achieves this by creating a "chain of trust" from the DNS root zone down to the specific domain's authoritative name server, using public-key cryptography (Key Signing Keys - KSK, and Zone Signing Keys - ZSK) to sign and validate DNS records. DNSSEC does not provide confidentiality (encryption) for DNS lookups, as DNS data is still publicly visible.
- DNS Spoofing: Also commonly known as DNS Cache Poisoning, is a type of cyberattack where forged or malicious DNS data is introduced into a DNS resolver's cache. This manipulation causes the DNS resolver to return an incorrect IP address for a legitimate domain name. Consequently, when a user attempts to visit the legitimate website, their browser is unknowingly redirected to a fraudulent or malicious website (often designed to look identical to the real one), where attackers can then steal credentials, personal data, or distribute malware. The attack exploits the fundamental trust model of the original DNS protocol, which lacks inherent mechanisms to verify the authenticity of DNS responses.
- Route 53 DNSSEC: Allows you to enable DNSSEC signing for your public hosted zones, leveraging AWS's robust infrastructure and integration with AWS KMS. When enabled, Route 53 manages the cryptographic signing of your zone's DNS records, generating RRSIG records (Resource Record Signature) for each record set and publishing DNSKEY records (containing public keys like the Key Signing Key (KSK) and Zone Signing Key (ZSK)).
- AWS Global Accelerator: Global Performance & Availability with Static Anycast IPs: AWS Global Accelerator is a networking service that improves the availability and performance of your applications for global users by directing traffic over the AWS global network backbone. It provides two static Anycast IP addresses (fixed entry points, often your own BYOIP addresses) that are advertised from multiple AWS Edge Locations globally. User traffic ingresses at the closest edge location, then traverses the highly optimized AWS network to the nearest healthy application endpoint (e.g., ALB, NLB, EC2 instance, Elastic IP) in any AWS Region.
- Routing Traffic: Global Accelerator uses advanced routing algorithms (based on health, geography, and traffic dials) to automatically direct traffic to the optimal endpoint group and endpoint. It offers both Standard Accelerators (for general applications) and Custom Routing Accelerators (for deterministic routing of users to specific EC2 instances, common in gaming or IoT). It operates at Layer 4 (TCP/UDP), making it suitable for a wide range of protocols beyond just HTTP/S, and crucially, it maintains client IP addresses to the backend, unlike CloudFront (when used without specific configurations).
- SAP-C02 Relevance: Global Accelerator is a key solution for improving application performance and availability for global users, especially for non-HTTP/S traffic or applications requiring static IPs. It's often compared with CloudFront, where Global Accelerator shines for dynamic, non-cacheable content, games, VoIP, and applications needing deterministic routing or client IP preservation, while CloudFront excels at caching static content closer to users. It's vital for multi-Region active-active architectures for robust disaster recovery and low-latency global access.
- Elastic Load Balancing (ELB): Is a fully managed service that automatically distributes incoming application traffic across multiple targets (such as EC2 instances, containers, IP addresses, Lambda functions, or network appliances) in multiple Availability Zones, ensuring high availability, fault tolerance, and scalability for your applications by continuously monitoring target health, dynamically scaling the load balancer's capacity, and offering SSL/TLS termination (often integrated with ACM) and various routing features to enhance application performance and resilience while eliminating single points of failure.
- Network Address Translation (NAT): Is a crucial networking feature that allows instances in a private subnet within a Virtual Private Cloud (VPC) to initiate outbound connections to the internet (e.g., for software updates, external API calls, or accessing other AWS services like S3 or DynamoDB via their public endpoints), without allowing unsolicited inbound connections from the internet to reach those private instances. This enhances security by keeping private resources isolated from direct internet exposure, as NAT devices translate the private IP addresses of instances to a public IP address (typically an Elastic IP) for outbound traffic and discard unsolicited inbound traffic.
Feature |
AWS NAT Gateway |
AWS NAT Instance |
Management |
Fully Managed by AWS; no OS patching, scaling, or HA configuration. |
Customer Managed; you are responsible for OS updates, patching, security, and scaling. |
High Availability |
Built-in redundancy within a single AZ; for cross-AZ HA, deploy a NAT Gateway in each AZ. |
No built-in HA; requires manual setup (e.g., Auto Scaling Group with custom scripts for failover). |
Scalability |
Automatically scales up to 100 Gbps bandwidth and 10 million packets per second. |
Limited by EC2 instance type; manual scaling (changing instance size, managing ASG). |
Performance |
Higher bandwidth, better performance, and lower operational overhead. |
Lower bandwidth, performance tied to instance type, potential bottleneck. |
Cost |
Per hour charge + data processing charge (per GB processed). |
EC2 instance costs (hourly) + EBS volume costs + Elastic IP costs + data transfer costs. May be cheaper for very low traffic, but often more expensive with management overhead. |
Security |
Managed by AWS;Â cannot associate Security Groupsdirectly (use NACLs on subnet, SG on instances). |
Requires Security Group on the instance; you are responsible for its security hardening. |
Elastic IP (EIP) |
Required and associated during creation. |
Required and associated with the EC2 instance. |
Placement |
Must be deployed in a public subnet. |
Must be deployed in a public subnet. |
Client IP Preserve |
No (source IP translated to NAT Gateway's EIP). |
No (source IP translated to NAT Instance's EIP/Public IP). |
Port Forwarding/Customization |
Not supported directly. |
Supported through custom configuration on the EC2 instance. |
Use Case |
Recommended for almost all new deployments due to ease of use, scalability, and reliability. |
Legacy deployments or very specific custom routing/software requirements (rare). |
Exam Focus |
Preferred solution, managed service, HA, scalability, cost-effectiveness at scale. |
Depreciated, customer management overhead, less performant, costly for HA setup. |
- AWS Client VPN: Is a fully managed, scalable, and highly available client-based VPN service that enables individual remote users to securely connect from anywhere to resources within their Amazon VPCs and on-premises networks using standard OpenVPN clients, supporting various authentication methods (Active Directory, federated SAML 2.0, certificate-based) and offering features like split-tunneling, authorization rules, and integration with AWS Directory Service for centralized user management.
- Elastic Fabric Adapter (EFA): EFA is a network interface for EC2 instances enabling high-performance computing (HPC) and machine learning (ML) workloads by providing low-latency, high-throughput internode communication(especially for MPI and NCCL) and bypassing the OS network stack, ideal for tightly coupled parallel processing where network performance is the primary bottleneck.
- Amazon FSx for Lustre: FSx for Lustre is a fully managed, high-performance file system optimized for compute-intensive workloads (HPC, ML, media processing, electronic design automation) requiring petabyte-scale throughput and sub-millisecond latencies for accessing data, leveraging the popular Lustre file system to rapidly process large datasets, often integrated with S3 for long-term storage and data lakes.
Feature |
Application Load Balancer (ALB) |
Network Load Balancer (NLB) |
Gateway Load Balancer (GLB) |
Classic Load Balancer (CLB) |
OSI Layer |
Layer 7Â (Application Layer) |
Layer 4Â (Transport Layer) |
Layer 3Â (Network Layer) + Layer 4 Load Balancing |
Layer 4 or Layer 7 (older, mixed) |
Protocols |
HTTP, HTTPS, gRPC, WebSockets |
TCP, UDP, TLS |
IP (any IP-based protocol), utilizes GENEVE for traffic encapsulation. |
HTTP, HTTPS, TCP, SSL/TLS |
Routing Features |
Content-based routing (Host-based, Path-based, HTTP header/method, Query String, Source IP), redirects, fixed responses, user authentication (Cognito/OIDC). |
Flow-based routing(5-tuple hash for TCP/TLS, 2-tuple for UDP) to preserve client IP. |
Routes all IP packets to virtual appliances;Â maintains flow stickinessfor stateful inspection. |
Basic round robin or least outstanding requests; sticky sessions (cookie-based). |
Target Types |
Instances, IPs, Lambda functions, ALB(as target for NLB/GLB setup). |
Instances, IPs, ALB(as target for GLB setup). |
Instances, IPs(typically network virtual appliances). |
Instances |
IP Addresses |
Dynamic public/private IPs. No static IP address directly on ALB. |
Static IP addresses(Elastic IPs can be associated). |
Static IP addresses(Elastic IPs can be associated). |
Dynamic public/private IPs. |
Performance |
Designed for complex routing, flexible. |
Ultra-high performance, low latency; millions of requests/sec. |
High performance for appliance insertion. |
Limited performance compared to ALB/NLB. |
SSL/TLS Offload |
Yes (supports SNI, authentication). |
Yes (supports SNI). |
No (passes traffic, appliances handle TLS). |
Yes (supports SNI partially, custom policies). |
Health Checks |
HTTP, HTTPS, gRPC. |
TCP, HTTP, HTTPS. |
TCP, HTTP, HTTPS. |
HTTP, HTTPS, TCP, SSL/TLS. |
Cross-Zone LB |
Enabled by default (charge applies for cross-AZ data transfer). |
Disabled by default (can be enabled, charge applies). |
Enabled by default. |
Enabled by default. |
Proxy Behavior |
Proxies connections; terminates client connection and opens new one to target. |
Proxies connections; terminates client connection and opens new one to target. |
Transparent network gateway; does not terminate connections; inserts appliances into network path. |
Proxies connections. |
Main Use Case |
Microservices, containerized apps, web applications requiring advanced routing, user auth, or HTTP/HTTPS. |
Extreme performance, low latency, TCP/UDP applications (gaming, IoT, SIP), exposing static IPs. |
Deploying, scaling, and managing third-party network virtual appliances (firewalls, IDS/IPS, DPI). |
Legacy applications(not recommended for new designs). |
Exam Focus |
Content-based routing, advanced features, microservices. |
Layer 4, extreme performance, static IPs, low latency. |
Third-party appliances, transparent insertion, network chaining. |
Legacy, avoid for new builds, being phased out. |
- AWS Control Tower: An opinionated service for setting up and governing a secure, multi-account AWS environment (landing zone) using AWS Organizations; automates the creation of a baseline multi-account structure with pre-configured security and compliance guardrails (preventive and detective), provides a dashboard for continuous monitoring, and offers Account Factory for provisioning new, compliant accounts, making it a cornerstone for establishing a well-architected, scalable, and secure cloud foundation for enterprises in SAP-C02 scenarios.
- AWS Systems Manager Maintenance Windows (The "When"): Defines a recurring schedule (e.g., weekly, Sunday 2 AM for 3 hours) during which any Systems Manager task (Run Command, Automation, Lambda, Step Functions) can be safely executed on specified targets (instances, resource groups) to minimize operational disruption during business-critical hours; crucial for orchestrating automated patching (using Patch Manager), deployments, or other administrative tasks in high-availability architectures as per SAP-C02 best practices.
- AWS Systems Manager Patch Manager (The "How"): Automates the process of identifying and applying security and other updates to operating systems (Windows, Linux, macOS) and certain Windows applications on managed instances; uses Patch Baselines to determine approved patches and is most commonly scheduled and executed as a Run Commandtask within a Maintenance Window for controlled patching operations, enabling automated compliance reporting and operational excellence for large fleets, a key SAP-C02 concern.
- AWS Systems Manager Patch Baselines (The "What"): A policy document that defines which patches are approved or rejected for installation on managed instances, specific to an operating system; includes approval rules (e.g., approve critical security updates 7 days after release), explicit approved/rejected patch lists, and compliance levels; fundamental for granular control over patching policies across different environments (e.g., Dev vs. Prod via Patch Groups) to manage risk, ensure stability, and meet strict compliance requirements, a critical design aspect for professional solutions. When you run AWS-RunPatchBaseline, you can target managed instances using their instance ID or tags. SSM Agent and Patch Manager will then evaluate which patch baseline to use based on the patch group value that you added to the instance. You create a patch group by using Amazon EC2 tags. Unlike other tagging scenarios across Systems Manager, a patch group must be defined with the tag key: Patch Group. Note that the key is case-sensitive. You can specify any value, for example, "web servers," but the key must be Patch Group. The AWS-DefaultPatchBaseline baseline is primarily used to approve all Windows Server operating system patches that are classified as "CriticalUpdates" or "SecurityUpdates" and that have an MSRC severity of "Critical" or "Important". Patches are auto-approved seven days after release.
- AWS Systems Manager Automation: Orchestrated Automation for Operational Efficiency & Remediation: AWS Systems Manager Automation provides a serverless and scalable framework for defining, executing, and orchestrating complex operational workflows (runbooks) across EC2 instances and other AWS resources, crucial for operational excellence and automation at scale. It enables proactive and reactive automated responses to operational events (e.g., automated instance restarts, AMI creation, patch management, resource configuration, or troubleshooting tasks), leveraging pre-defined or custom runbooks that execute sequential steps, with support for input/output passing between steps. For SAP-C02, it's a key service for reducing manual operational overhead, enforcing consistent configurations, enabling faster mean time to recovery (MTTR) through automated remediation, and implementing advanced automation strategies for large, complex environments by integrating with services like Amazon EventBridge for event-driven triggering and notifications.
- AWS Systems Manager Parameter Store: Secure, Centralized Configuration and Secrets Management: Parameter Store provides a highly available, durable, and secure hierarchical store for configuration data and secrets (passwords, database strings, AMI IDs), which can be stored as plain text or encrypted with KMS. It's crucial for decoupling application configuration from code, enabling centralized management and secure retrieval of parameters by various AWS services (e.g., Lambda, ECS, CloudFormation, CodeBuild) and EC2/on-premises instances (via SSM Agent). For SAP-C02, it's key for automating deployments, ensuring consistent configurations across environments, and enhancing security by avoiding hardcoded credentials, with integration into automation workflows for dynamic parameter updates and change notifications. Supports three types: String: For plain text configuration values. StringList: For comma-separated lists of values (e.g., a list of allowed IP addresses). SecureString: For sensitive data (passwords, API keys, database connection strings) which is encrypted at rest using KMS (default or customer-managed CMKs) and decrypted only when retrieved by authorized principals. Only SecureString parameters are encrypted at rest by KMS. String and StringList parameters are NOT encrypted by KMS. They are stored as plain text. However, all parameters (regardless of type) are encrypted in transit using TLS (Transport Layer Security)when you interact with the Systems Manager API, and they are also encrypted at rest with an AWS-owned key in AWS KMS by the Parameter Store service itself. This is an AWS service-level encryption for all parameters.
- AWS Systems Manager State Manager: Is a fully managed configuration management service that helps you define and enforce a desired state for your Amazon EC2 instances and on-premises servers and virtual machines at scale. It uses associations to continuously apply configuration policies (like installing software, applying patches, joining a domain, enforcing security configurations, or bootstrapping servers) defined in SSM documents (pre-defined or custom), ensuring that your instances remain compliant with organizational policies, automatically remediating deviations, and enabling scheduled or event-driven automation to maintain consistent and predictable operational environments without manual intervention.
- AWS IAM Service Role (for On-Premises to SSM Access): Enabling On-Premises/Hybrid Management via SSM Agent: For on-premises servers, VMs, or non-EC2 cloud instances to be managed by AWS Systems Manager (including Parameter Store, Run Command, Session Manager), they must be registered as "managed instances". This requires an IAM Service Role specifically configured for hybrid environments, which is assumed by the SSM Agent installed on the on-premises machine. This role typically includes the AmazonSSMManagedInstanceCore AWS managed policy, granting the necessary permissions for the SSM Agent to communicate with the Systems Manager service via AWS Security Token Service (STS) for AssumeRole. This secure mechanism allows on-premises assets to be treated as logical extensions of your AWS environment for operational management, without requiring direct inbound network connectivity to AWS from the on-premises network (only outbound to SSM endpoints).
- AWS Systems Manager Session Manager: Secure, Auditable Browser-Based or CLI Access to Instances (No SSH/Bastion Host): Systems Manager Session Manager provides secure, auditable, and browser-based or CLI access to EC2 instances and on-premises servers/VMs (managed instances) without the need for SSH keys, bastion hosts, or opening inbound ports (like SSH port 22) in security groups. It uses the SSM Agent on the instance to establish a session over an encrypted connection to the Systems Manager service endpoint. For SAP-C02, Session Manager is critical for enhancing security posture by eliminating public SSH exposure, simplifying instance access for administrators, and providing centralized logging and auditing of session activity in CloudWatch Logs and S3, which is essential for compliance and troubleshooting in highly regulated or complex environments.
- AWS Config: A service that continuously monitors and records your AWS resource configurations and changes, enabling configuration history, compliance auditing (via Config Rules - managed or custom), and security analysis; can automate remediation actions for non-compliant resources using Systems Manager Automation documents, and is crucial for maintaining compliance, enforcing desired configurations, and providing an audit trail across a multi-account environment, directly addressing governance and compliance scenarios in SAP-C02.
- AWS CloudFormation: Infrastructure as Code (IaC) for Consistent Resource Provisioning: CloudFormation allows you to define and provision AWS infrastructure (and some third-party resources) as code using templates (YAML/JSON), enabling consistent, repeatable, and automated resource deployment and management. It facilitates version control, rollback capabilities, and environmental parity by creating and managing stacks of AWS resources as a single unit, which is crucial for standardizing complex enterprise deployments (e.g., SAP landscapes), ensuring compliance, and reducing manual configuration errors across development, test, and production environments.
- AWS CloudFormation StackSets: Multi-Account, Multi-Region Deployment of CloudFormation Stacks: CloudFormation StackSets extends CloudFormation's IaC capabilities by enabling simultaneous, centralized deployment and management of CloudFormation stacks across multiple AWS accounts and/or multiple AWS Regions from a single CloudFormation template. This is invaluable for governed, scalable deployment of common infrastructure components (e.g., VPCs, IAM roles, logging configurations, baseline SAP infrastructure) across an AWS Organization, ensuring organizational consistency, compliance, and efficiency without manual operations in each account/region, aligning with enterprise-scale governance and automation strategies.
- AWS Organizations: A service that allows you to centrally manage and govern multiple AWS accounts, enabling consolidated billing, centralized security and compliance policies (via Service Control Policies - SCPs), and simplified account provisioning and management, crucial for large-scale enterprise environments.
- AWS Organizations (+ AWS Config) (Centralized Governance & Billing): A service that enables centralized management and governance of multiple AWS accounts, allowing you to consolidate billing, manage security policies (via Service Control Policies - SCPs) to restrict actions across accounts, and group accounts into Organizational Units (OUs); often used with AWS Config to enforce account-wide compliance rules (via Config Rules), and with AWS Control Tower to automate multi-account landing zone setup, crucial for implementing enterprise-scale governance, cost management, and security baselines as per SAP-C02 best practices. AWS Config for multi-account, multi-region data aggregation (via an aggregator) to centralize compliance monitoring and auditing for enterprises, and works with CloudWatch Events/EventBridge to trigger alerts (e.g., via SNS) for sensitive organizational actions (e.g., new account creation, account leaving organization) by capturing CloudTrail API calls, crucial for robust enterprise-scale governance, cost control, and security baselines in SAP-C02 designs. Multi-account, multi-region data aggregation in AWS Config enables you to aggregate AWS Config data from multiple accounts and regions into a single account. Multi-account, multi-region data aggregation is useful for central IT administrators to monitor compliance for multiple AWS accounts in the enterprise. An aggregator is a new resource type in AWS Config that collects AWS Config data from multiple source accounts and regions. Create an aggregator in the Region where you want to see the aggregated AWS Config data. While creating an aggregator, you can choose to add either individual account IDs or your organization.
- For billing purposes, the consolidated billing feature of AWS Organizations treats all the accounts in the organization as one account. This means that all accounts in the organization can receive the hourly cost-benefit of Reserved Instances that are purchased by any other account. In the payer account, you can turn off Reserved Instance discount sharing for the entire organization or specific member accounts on the Preferences page on the Billing and Cost Management console. The master account of an organization can turn off Reserved Instance (RI) sharing for member accounts in that organization. This means that Reserved Instances are not shared between that member account and other member accounts.
- AWS Resource Access Manager (AWS RAM): Enables you to share specified AWS resources that you own with other AWS accounts. To enable trusted access with AWS Organizations: From the AWS RAM CLI, use the
enable-sharing-with-aws-organizations
command. Name of the IAM service-linked role that can be created in accounts when trusted access is enabled:AWSResourceAccessManagerServiceRolePolicy
. You can use trusted access to enable an AWS service that you specify, called the trusted service, to perform tasks in your organization and its accounts on your behalf. This involves granting permissions to the trusted service but does not otherwise affect the permissions for IAM users or roles. When you enable access, the trusted service can create an IAM role called a service-linked role in every account in your organization. That role has a permissions policy that allows the trusted service to do the tasks that are described in that service's documentation. This enables you to specify settings and configuration details that you would like the trusted service to maintain in your organization's accounts on your behalf. - AWS RAM (Resource Access Manager): Enables secure sharing of AWS resources (e.g., subnets, Transit Gateways, license configurations, AMIs) across AWS accounts within your AWS Organization, or with specific AWS accounts, reducing operational overhead by eliminating resource duplication and simplifying centralized management of shared resources.
- --enable-sharing-with-aws-organizations parameter (for AWS RAM): When enabled in the AWS RAM console or via CLI, this parameter allows you to share resources with all accounts within your AWS Organization or specific Organizational Units (OUs) without requiring invitations and individual acceptance by each account, greatly simplifying resource sharing at scale within an organizational structure. It creates a service-linked role (
AWSServiceRoleForResourceAccessManager
) to facilitate this. Who can do it? Only a principal in the management account of your AWS Organization. Required Permissions (for the IAM user or role in the management account):ram:EnableSharingWithAwsOrganization
: This is the primary permission to enable the feature within AWS RAM.iam:CreateServiceLinkedRole
: When you enable sharing with AWS Organizations, AWS RAM automatically creates a service-linked role namedAWSServiceRoleForResourceAccessManager
. This permission allows the creation of that role.organizations:EnableAWSServiceAccess
: This permission allows AWS RAM to be registered as a trusted service with AWS Organizations, enabling it to interact with your organization's structure.organizations:DescribeOrganization
: This permission allows RAM to retrieve information about your organization's structure.
- AWS Identity Center (formerly AWS SSO): A core service within AWS Organizations that provides centralized identity and access management for workforce users to access multiple AWS accounts and cloud applications (SAML 2.0/OIDC-enabled), acting as the single source of truth for permissions. It simplifies multi-account access by automatically provisioning IAM roles in member accounts based on centrally defined permission sets. For integration with on-premises Active Directory (AD), Identity Center leverages AWS Directory Service via two primary modes:
- AD Connector: A proxy that forwards authentication requests directly to your existing on-premises AD, requiring network connectivity (VPN/Direct Connect) and maintaining AD management on-premises, suitable for environments preferring minimal cloud footprint for directory services.
- AWS Managed Microsoft AD: A fully managed, highly available (multi-AZ) Microsoft AD hosted in AWS that can establish trust relationships (two-way or one-way) with your on-premises AD, offering a fully cloud-managed AD experience, enabling seamless domain join for EC2 instances, and providing schema extensibility, often preferred for larger enterprises or those extending their AD infrastructure into AWS.
- AWS Service Control Policies (SCPs): Organizational Guardrails for Maximum Permissions (Deny-by-Default/Allow-List): SCPs are organizational-level policies (part of AWS Organizations) that define the maximum permissions that any IAM user or role within an affected AWS account can have. They DO NOT grant permissions themselves; instead, they act as guardrails, filtering the permissions that IAM policies would otherwise grant.
- How they apply: SCPs are hierarchical, applying to the root, Organizational Units (OUs), and individual accounts in an AWS Organization. A permission is only effective if it's explicitly allowed by all SCPs in the direct path from the root down to the account, and explicitly allowed by the relevant IAM policy. If anySCP in the hierarchy explicitly denies an action, that action is denied, regardless of IAM policies (explicit Deny in SCPs overrides Allow in IAM policies).
- FullAWSAccess: By default, every new root, OU, and account has an AWS-managed FullAWSAccess SCP attached, which allows all actions (
"Effect": "Allow", "Action": "*", "Resource": "*"
). This is a deny-list strategy; you add Deny SCPs to restrict specific actions. For a more restrictive allow-list strategy, you would detach FullAWSAccess and attach SCPs that explicitly Allow only desired services/actions, effectively denying everything else by default. - Multiple Policies: You can attach up to 5 SCPs directly to a root, OU, or account. Effective permissions are the intersection of all applicable SCPs.
- Relationship to Service-Linked Roles (Key Exam Detail): SCPs DO NOT affect permissions granted to Service-Linked Roles (SLRs). SLRs are unique IAM roles that allow AWS services to perform actions on your behalf and are controlled by the specific AWS service, making them immune to SCP restrictions. This is a common exam trick question.
- Relationship to IAM Policies: SCPs define the maximum permissions; IAM policies grant specific permissions to users/roles within those boundaries. Both must allow an action for it to be permitted. SCPs affect all principals (including the root user) within member accounts but do not affect the management account's root user or IAM entities by default.
- Best Practice for SAP-C02: Use SCPs primarily for broad, preventive guardrails at the OU level (e.g., restricting access to specific regions, preventing CloudTrail deletion, enforcing resource tagging) to ensure organizational compliance and security at scale, while using IAM policies for fine-grained permissions within individual accounts.
- AWS Service Catalog: Centralized Governance & Self-Service Provisioning of Approved Resources: AWS Service Catalog allows organizations to centrally manage and distribute a portfolio of approved IT services (products), which can be anything from single EC2 instances to complex multi-tier application stacks (often defined by CloudFormation templates). It enables end-users to self-service provision these standardized, pre-approved products while ensuring governance, compliance, and cost control through constraints (e.g., instance types, regions, auto-tagging) defined by administrators. For SAP-C02, Service Catalog is crucial for enforcing organizational standards, reducing shadow IT, streamlining resource provisioning for developers/teams, and maintaining consistent security and compliance postures across a multi-account AWS environment, thereby supporting Domain 1: Design Solutions for Organizational Complexity and Domain 3: Continuous Improvement for Existing Solutions by promoting standardized, secure, and repeatable deployments.
- AWS Audit Manager: Is a fully managed service that simplifies and automates the continuous collection of evidence for audits and compliance with regulations and industry standards, leveraging prebuilt frameworks (e.g., HIPAA, PCI DSS, GDPR) or custom frameworks to map AWS resources to control requirements, thereby reducing the manual effort, cost, and time typically associated with preparing for and responding to audits.
Feature |
AWS Systems Manager State Manager |
AWS Config |
Core Function |
Enforces desired state, applies configurations. |
Monitors state, audits changes, assessescompliance. |
Nature |
Action-oriented / Remediation |
Reporting-oriented / Auditing |
Scope of Management |
EC2 instances, on-premises servers/VMs (managed nodes). |
Nearly all AWS resource types (not just instances). |
Operational Flow |
Proactive: Makes instances conform. |
Reactive: Detects non-compliance after it occurs. |
Primary Output |
Consistent configurations, applied changes. |
Configuration history, compliance status, audit trails. |
Relationship |
Can be used as a remediation tool for AWS Config (e.g., Config detects non-compliance, triggers SSM Automation/State Manager to fix it). |
Can track configuration changesmade by State Manager associations. |
- AWS WAF (Web Application Firewall): Protects web applications or APIs from common web exploits and bots that may affect availability, compromise security, or consume excessive resources, by allowing you to create custom rules to filter web traffic based on IP addresses, HTTP headers, URI strings, custom SQL injection, and XSS patterns; deployed in front of CloudFront, Application Load Balancers (ALB), or API Gateway without additional software, DNS/SSL management, or reverse proxy setup, and can be centrally managed across accounts/applications via AWS Firewall Manager (across multiple accounts in the Organisation), making it essential for enhancing the security posture and compliance of internet-facing applications in SAP-C02 designs.
- Network ACLs (NACLs): Act as a stateless firewall at the subnet level, evaluating traffic rules in numerical order (lowest to highest) with both allow and deny rules (explicitly denying traffic is possible); applies to all instances within a subnet, processing inbound and outbound traffic separately, and serves as a coarse-grained security layer, often used in conjunction with Security Groups for DDoS mitigation by explicitly blocking known malicious IPs at the subnet boundary, a distinction vital for SAP-C02 network security questions.
- AWS Shield Standard: Provides automatic, no-cost, baseline DDoS protection for all AWS customers against common, most frequently occurring network and transport layer (Layer 3 and 4) DDoS attacks (e.g., SYN floods); automatically mitigates common infrastructure layer attacks, and is a foundational component of AWS's shared responsibility model for security, relevant for any SAP-C02 architecture.
- AWS Shield Advanced: A paid service offering enhanced DDoS protection against larger, more sophisticated, and application layer (Layer 7) DDoS attacks for specific resources (ELB, CloudFront, Route 53, Global Accelerator, Elastic IPs); includes 24/7 access to the AWS Shield Response Team (SRT) for manual mitigation, DDoS cost protection(credit for attack-related spikes in protected resource usage), automatic application layer DDoS mitigation (integrating with WAF to auto-create rules), and health-based detection for faster response, making it critical for mission-critical applications requiring maximum DDoS resilience and cost predictability in SAP-C02 designs.
- AWS CloudTrail: Provides a record of actions taken by a user, role, or an AWS service in AWS, enabling governance, compliance, operational auditing, and risk auditing of your AWS account. It logs API calls and non-API events.
- CloudTrail --is-multi-region-trail parameter: Ensures a single trail logs events from all enabled AWS Regions in your account, delivering them to a specified S3 bucket and CloudWatch Logs log group, centralizing logging for a comprehensive view of account activity across your global AWS infrastructure.
- CloudTrail --include-global-service-events parameter: Captures events for global services like IAM, STS, CloudFront, and Route 53, which are not tied to a specific AWS Region but are crucial for a complete audit trail of your account's security and operational posture. These events are logged in US East (N. Virginia) regardless of the trail's home region.
- CloudTrail Trail (Logging & Archiving): Configures continuous recording of API activity (management, data, insights events) to an S3 bucket for long-term, verifiable storage, and integrates with services like CloudWatch Logs/SNS for real-time monitoring and alerting, crucial for compliance, forensic analysis, and operational troubleshooting.
- CloudTrail Lake (Advanced Analytics & immutable storage): A managed data lake for aggregating and immutably storing AWS and non-AWS activity logs (up to 10 years), optimized for SQL-based queries and advanced analytics (e.g., security investigations, audit, anomaly detection) across multiple accounts and regions, offering deeper insights than basic trail log analysis.
- AWS KMS (Key Management Service): Manages cryptographic keys that you use to encrypt your data, providing centralized control over encryption keys and their use across various AWS services (like S3, EBS, RDS) and applications, supporting compliance and data protection requirements. It offers various key types, including customer managed keys (CMKs) and AWS managed keys, and integrates with CloudTrail for auditability of key usage. Multi-Region KMS keys enable consistent encryption/decryption across regions for replicated data.
- KMS Key Deletion: Deleting a Customer Managed Key (CMK) in AWS KMS is a destructive and irreversible operation that renders all data encrypted by that key permanently unrecoverable, which is why a mandatory waiting period of 7 to 30 days (chosen by the user, default 30 days) is enforced; during this PendingDeletion state, the key cannot be used for cryptographic operations but the deletion can be canceled at any point before the period expires, providing a crucial safety net against accidental data loss, particularly before the key and all associated metadata are permanently removed. When you initiate the
ScheduleKeyDeletion
operation (via the console, CLI, or SDK), you provide aPendingWindowInDays
parameter. You can specify any integer value between 7 and 30, inclusive. The waiting period allows you to cancel the deletion (usingCancelKeyDeletion
) at any time before the period expires.
- AWS Certificate Manager (ACM): Is a fully managed service that simplifies the provisioning, management, and deployment of public and private SSL/TLS certificates for use with integrated AWS services (e.g., Elastic Load Balancing, CloudFront, API Gateway). ACM automates the traditionally complex and manual processes of certificate acquisition, renewal (for ACM-issued certificates), and deployment, supporting both DNS validation (preferred, automated) and email validation, offering free public SSL/TLS certificates and paid private certificates (via ACM Private CA), thereby enhancing application security, enabling HTTPS for web traffic, and removing operational overhead by ensuring certificates remain current and valid without requiring manual intervention. Crucially for regionality, ACM certificates are regional resources: for services like Elastic Load Balancing (ELB), the certificate must be created or imported into the same AWS Region as the ELB; however, for Amazon CloudFront, the certificate must always be provisioned in the US East (N. Virginia) us-east-1 Region, as CloudFront's global edge network leverages certificates from this single region.
- AWS Macie: Amazon Macie is a data security and privacy service that uses machine learning and pattern matchingto discover sensitive data (e.g., PII, financial data) primarily in Amazon S3 buckets, providing automated visibility into data security risks, generating findings for policy violations or sensitive data exposure, and supporting compliance requirements through automated sensitive data discovery and reporting.
- AWS GuardDuty: Amazon GuardDuty is a fully managed threat detection service that continuously monitors for malicious activity and unauthorized behavior across your AWS accounts and workloads by analyzing CloudTrail management and S3 data events, VPC Flow Logs, DNS logs, and EKS audit logs, leveraging threat intelligence and machine learning to generate prioritized security findings that can be integrated with EventBridge for automated responses.
- Amazon Inspector: Amazon Inspector is an automated security assessment service that continuously scans your EC2 instances and ECR (Elastic Container Registry) container images for software vulnerabilities (CVEs) and unintended network exposure, leveraging an optional SSM agent for EC2 host assessments and providing risk scores to prioritize findings, compliance checks against standards like CIS Benchmarks, and SBOM generation for better software transparency.
- AWS CloudHSM: Provides a dedicated, single-tenant, FIPS 140-2 Level 3 validated Hardware Security Module (HSM) within the AWS Cloud, specifically designed for customer-controlled cryptographic key storage and operations to meet stringent compliance (e.g., PCI DSS, HIPAA) or organizational security policies, ensuring AWS never accesses your keys. While a CloudHSM cluster is deployed within a VPC, high availability is not default with a single HSM; it's achieved by explicitly adding multiple HSMs to the cluster and distributing them across different Availability Zones, where AWS automatically synchronizes all keys and users across these HSMs. Your application, running on EC2 instances, integrates with the HSMs by installing the CloudHSM client (SDK), which utilizes standard cryptographic interfaces like PKCS#11, JCE, or OpenSSL engine; the client manages secure, mutually authenticated TLS connections, performs automatic load balancing and failover across healthy HSMs, and allows applications (authenticating as Crypto Users) to generate, import, and perform cryptographic operations (encrypt, decrypt, sign, verify) using keys securely housed within the HSM, without ever exposing the raw key material to the application.
Feature |
AWS Owned Keys |
AWS Managed Keys |
Customer Managed Keys (CMKs) |
Owner/Manager |
AWS (owned and managed by an AWS service) |
AWS (created & managed on your behalf by an AWS service) |
You (created, owned, and fully managed by you) |
Visibility |
Not in your AWS account; no visibility to key policies or CloudTrail events. |
In your AWS account; viewable metadata, key policies, and CloudTrail events. |
In your AWS account; full visibility to all metadata, key policies, and CloudTrail events. |
Control |
No control; used entirely by AWS services. |
No direct control over lifecycle (disable, delete, policy). |
Full control over lifecycle (enable/disable, schedule deletion, policy, rotation). |
Automatic Rotation |
Managed by the AWS service (strategy varies). |
Yes, approximately annually (automatically by AWS). |
Yes, optional (annually), or manual rotation;Â not supported for asymmetric, HMAC, imported, or custom key store keys. |
Key Policy |
Not viewable/manageable by customer. |
Controlled by AWS service; viewable by customer. |
Fully controlled by customer (defines who can use the key). |
Auditability |
Not visible in your CloudTrail. |
Usage logged in your CloudTrail. |
All usage and management actions logged in your CloudTrail (highest auditability). |
Cost |
No monthly fee; no API usage charges. |
No monthly fee; API usage charges may apply (some AWS services cover these). |
Monthly storage fee (~$1/month) + API usage charges. |
Key Material Origin |
AWS-generated. |
AWS-generated. |
AWS-generated, Imported (BYOK), or CloudHSM-backed (Custom Key Store). |
Primary Use |
Default encryption for some AWS services when no other key is specified. |
Default encryption for many AWS services when you choose "AWS KMS" option. |
Highest security & compliance requirements; granular control over key lifecycle; BYOK; integration with CloudHSM. |
Common Type |
Symmetric. |
Symmetric. |
Symmetric, Asymmetric (RSA, ECC), HMAC. |
Exam Focus |
Lowest control, no cost. |
AWS manages lifecycle, no monthly fee. |
Full customer control, auditability, BYOK/CloudHSM, highest cost but most flexibility. |
- Amazon Athena: Is a serverless, interactive query service that enables architects to perform ad-hoc SQL queries directly on data stored in Amazon S3 (and other sources via federated queries) without provisioning or managing any infrastructure; it leverages the AWS Glue Data Catalog for schema definitions, charges based on data scanned, and is highly optimized by using columnar formats (like Parquet) and data partitioning to reduce costs and improve query performance for analytical workloads like log analysis.
- The AWS Glue Data Catalog: Is a centralized, Apache Hive-compatible metadata repository that serves as a single source of truth for table definitions, schemas, and partition information across various data stores (predominantly Amazon S3); it's crucial for enabling seamless interoperability and query execution among diverse AWS analytics services like Athena, Redshift Spectrum, and Amazon EMR, ensuring data consistency and discoverability.
- AWS Glue Crawlers: Are automated processes that connect to your data stores (like Amazon S3), determine the schema and data types of your data, and populate or update the AWS Glue Data Catalog with discovered table definitions and partition structures; they significantly simplify the process of preparing data for analytics services by automatically inferring metadata, reducing manual effort and potential errors.
- AWS Glue: Serverless ETL & Data Catalog for Data Lakes: AWS Glue is a fully managed, serverless data integration service that enables Extract, Transform, and Load (ETL) operations for analytical workloads, particularly within data lake architectures. It includes a centralized Data Catalog to discover, catalog, and manage metadata across various data sources (databases, S3, etc.), and Glue Crawlers to automatically infer schemas. For SAP-C02, Glue is crucial for building scalable and cost-effective data pipelines for batch and streaming data (Glue Streaming), transforming data from diverse sources (e.g., SAP ERP extracts to S3) into formats suitable for analytics (e.g., Parquet, ORC), and enabling data governance and discoverability within a data lake, aligning with Domain 3: Continuous Improvement for Existing Solutions and Domain 2: Design for New Solutions.
- Amazon Redshift: Is a fully managed, petabyte-scale cloud data warehouse service optimized for Online Analytical Processing (OLAP) workloads / analytical workloads and business intelligence, offering columnar storage, massively parallel processing (MPP) architecture, advanced compression, and features like Concurrency Scaling and Multi-AZ deployments for high performance, scalability, and availability for complex queries over large datasets. It does NOT support cross-region replication of the cluster. For DR - enable cross region copy of the backups that happen automatically (every 8 hours with 1 day retention).
- Redshift Spectrum: A highly scalable, cost-effective feature extending Redshift's analytical capabilities by allowing SQL queries directly on exabytes of data in Amazon S3 (using Glue Data Catalog for schema), enabling hybrid data lake architectures and joining S3 data with local Redshift tables without data movement, optimized for infrequent or massive dataset analysis.
- Amazon QuickSight: Is a fully managed, serverless cloud business intelligence (BI) service that enables organizations to easily create interactive dashboards, perform ad-hoc analysis, and gain insights from their data, supporting a wide range of data sources (AWS services, SaaS apps, on-premises databases), featuring SPICE (Super-fast, Parallel, In-memory Calculation Engine) for accelerated query performance, and offering ML-powered insights (anomaly detection, forecasting) and natural language query capabilities (QuickSight Q) to empower business users with self-service analytics and scale to thousands of users without infrastructure management.
- Amazon OpenSearch Service: Is a fully managed service for deploying, operating, and scaling OpenSearch clusters(an open-source search and analytics suite derived from Elasticsearch and Kibana) and legacy Elasticsearch clusters, providing capabilities for real-time application monitoring, log analytics, full-text search, and security information and event management (SIEM). It automatically handles infrastructure provisioning, patching, backups, and scaling, supporting various instance types, storage options (EBS), and features like cross-cluster search, UltraWarm storage, and cold storage for cost-effective data tiering, ensuring high availability with Multi-AZ deployments, and integrating with other AWS services like Kinesis Firehose, S3, CloudWatch, and VPCs for data ingestion and secure access, thereby simplifying the management of distributed search and analytics workloads. Tiered storage options: UltraWarm nodes use a combination of EC2 instances and Amazon S3 for storage, caching frequently queried warm data on the local instance. Data is still queryable directly. Cold Storage completely offloads data to Amazon S3, and data must be "attached" to UltraWarm nodes on demand to become queryable, making it the lowest-cost option for archival data.OpenSearch Dashboards is an open-source visualization tool designed to work with OpenSearch. Amazon OpenSearch Service provides an installation of OpenSearch Dashboards with every OpenSearch Service domain. You can find a link to Dashboards on your domain dashboard on the OpenSearch Service console.
- AWS Kendra: Is an intelligent enterprise search service powered by machine learning (ML) that enables organizations to efficiently search and retrieve highly accurate answers from unstructured and semi-structured data across various disparate content repositories (e.g., S3, SharePoint, Confluence, databases, Salesforce) using natural language queries (e.g., "How do I apply for leave?"), rather than just keywords. It utilizes deep learning modelspre-trained across various industry domains to provide specific answers, FAQs, and document ranking, and continuously improves search relevance through incremental learning based on user interactions and feedback. Kendra offers secure data connectors, supports encryption at rest and in transit, and offers developer and enterprise editions (with associated costs based on index size, query volume, and provisioned units), making it a fully managed solution to build highly accurate search experiences for employees and customers without requiring ML expertise.
- Amazon Textract: Is a machine learning (ML) service that automatically extracts printed text, handwriting, and structured data (forms and tables) from scanned documents and images, going beyond simple Optical Character Recognition (OCR) by understanding context and relationships between extracted data. It offers capabilities like DetectDocumentText (for raw text and handwriting), AnalyzeDocument (for forms, tables, and Queries – natural language questions to extract specific data without templates), AnalyzeExpense (for invoices and receipts), and AnalyzeID (for government IDs), returning data with confidence scores and bounding box coordinates. Textract supports both synchronous processing (for single-page images up to 10MB) and asynchronous processing (for multi-page PDFs/TIFFs, and larger images, requiring S3 for input/output and SNS for job completion notifications), and can be integrated into automated document processing workflows (often with AWS Step Functions and Lambda) to reduce manual effort, improve accuracy, and streamline data ingestion, making it a critical service for digitizing and intelligently processing large volumes of diverse documents.
- AWS Kinesis (Overall Service Family): AWS Kinesis is a collection of fully managed services for working with real-time streaming data, designed for high-throughput, low-latency data ingestion, processing, and delivery, enabling applications like real-time analytics, dashboards, and log aggregation without managing complex infrastructure.
- Kinesis Data Streams (KDS): Kinesis Data Streams is a real-time, scalable, and durable data streaming service for custom applications requiring fine-grained control over data processing, offering persistent storage (24 hours by default, up to 365 days), support for multiple consumers (via KCL or Enhanced Fan-Out), ordered records within shards, and requiring manual shard management/scaling (though On-Demand capacity mode offers auto-scaling).
- Kinesis Data Firehose (Now Amazon Data Firehose): Kinesis Data Firehose (now Amazon Data Firehose) is a fully managed service for delivering streaming data to destinations like S3, Redshift, OpenSearch Service, or Splunk, providing automatic scaling, buffering, compression, transformation (via Lambda or built-in functions like format conversion), and simplified setup for near real-time data loading without managing consumers.
- Kinesis Video Streams (KVS): Kinesis Video Streams is a fully managed service for securely ingesting, storing, and processing video and time-encoded data (e.g., audio, LIDAR) from millions of devices to the AWS Cloud, enabling live and on-demand viewing, playback, and building applications with computer vision and video analyticscapabilities through integration with services like Rekognition Video.
- Amazon Kinesis Data Analytics (Now Amazon Managed Service for Apache Flink): Amazon Kinesis Data Analytics (now Amazon Managed Service for Apache Flink) is a fully managed service for real-time processing and analysis of streaming data using Apache Flink (or SQL for older applications), allowing you to build sophisticated streaming applications for time-series analytics, real-time dashboards, and anomaly detection without managing underlying servers.
- Key Service Comparisons:
- Kinesis Data Streams vs. Kinesis Data Firehose: Kinesis Data Streams is for custom real-time processing and multiple consumers with durable data retention and manual shard management (or On-Demand scaling), best for scenarios requiring low-latency stream processing and complex analytics; whereas Kinesis Data Firehose is a serverless, fully managed delivery service to specific destinations with built-in buffering and transformations, ideal for simpler, near real-time ETL and loading to data lakes/warehouses without managing consumers or shards. KDS Offers persistent, ordered storage of records for a configurable retention period (default 24 hours, extendable up to 365 days). This allows multiple consumers to read and re-read the same data from the stream for different processing purposes and provides durability during consumer outages. KDF Is a delivery service, not a persistent store. It buffers incoming data for a short period (based on buffer size or buffer interval, typically seconds to minutes) before delivering it to its specified destination (S3, Redshift, OpenSearch Service, Splunk, etc.). While it handles retries for delivery failures, if data cannot be delivered within its internal retry duration (which can be up to 24 hours for direct puts, or as long as the source KDS retention if KDS is the source), it can back upfailed records to an S3 bucket, but this is for error handling/backup, not general-purpose persistent storage for multiple applications to consume.
- Kinesis Data Streams/Firehose vs. Kinesis Data Analytics: Kinesis Data Streams and Firehose primarily handle ingestion and transport of streaming data, with KDS offering a raw stream for custom processing and Firehose focusing on simplified delivery to destinations; in contrast, Kinesis Data Analytics (Managed Flink) is the processing layer, designed to analyze and transform the data from these streams in real-time using Flink applications or SQL, providing insights or preparing data for downstream consumption.
Feature |
Amazon Kinesis Data Streams (KDS) |
Amazon Managed Streaming for Apache Kafka (MSK) |
What it is |
Fully managed, serverless real-time data streaming service by AWS. |
Fully managed service for Apache Kafka. Provides a managed Kafka cluster. |
API/Protocol |
AWS SDK and Kinesis API. Proprietary AWS API. |
Apache Kafka API and protocol. (Open-source standard) |
Management |
Serverless/Fully Managed. AWS manages servers, scaling, patching, brokers, and replication. |
Managed Service. AWS manages Kafka cluster provisioning, patching, and high availability. You still interact with Kafka concepts (brokers, topics, partitions). |
Scaling |
Shard-based scaling. You scale by adding/removing shards (1MB/sec write, 2MB/sec read per shard). You manage shard capacity. |
Broker-based scaling. You scale by adding/removing Kafka brokers and often need to manually reassign partitions across brokers. MSK provides storage auto-scaling, but not broker auto-scaling by default. |
Consumption |
Pull-based. Consumers poll data from shards. Often uses Kinesis Client Library (KCL). |
Pull-based (Kafka consumers). Supports various Kafka clients. |
Data Retention |
1 to 365 days. |
Configurable (default 1MB per message, up to 16 TiB/broker), typically longer, persistent storage. |
Message Size |
Up to 1 MB. |
Configurable, typically 1 MB default, but can be larger. |
Use Cases |
Cloud-native applications, log aggregation, real-time analytics, IoT data ingestion, real-time dashboards with AWS integrations (Lambda, KDA, S3, Redshift). |
Migration of existing Kafka workloads, applications that are already built on Kafka, need specific Kafka features/ecosystem, hybrid cloud scenarios, large-scale event streaming. |
Complexity |
Simpler to operate due to AWS abstraction. |
More complex due to Kafka's distributed nature, but offers more control. |
Cost Model |
Per shard-hour, per million PUT transactions, per GB data processed. |
Per broker-hour, storage, data transfer. |
- Amazon SQS (Simple Queue Service): A fully managed message queuing service that enables you to decouple and scale microservices, distributed systems, and serverless applications; provides both Standard Queues (high throughput, at-least-once delivery, best-effort ordering) and FIFO Queues (exact once processing, strict ordering); crucial for building resilient, fault-tolerant, and scalable loosely coupled architectures by buffering requests, smoothing out load spikes, and ensuring message delivery between components, a common pattern in SAP-C02 for asynchronous workflows.
- Visibility Timeout: After a consumer receives a message from a source queue, it becomes temporarily invisible for a configurable VisibilityTimeout (default 30 seconds, up to 12 hours). This prevents other consumers from processing the same message simultaneously. If the consumer fails to delete the message within this period, it becomes visible again and can be re-processed (potentially by another consumer).
- Dead-Letter Queues (DLQs) & Redrive Policy: SQS supports Dead-Letter Queues (DLQs), which are separate SQS queues (must be same type: Standard for Standard, FIFO for FIFO) configured on a source queue to capture messages that cannot be successfully processed after a certain number of attempts.
- The
maxReceiveCount
(part of the redrive policy) defines how many times a message can be received by consumers (i.e., its visibility timeout expires without deletion) before it's automatically moved from the source queue to the DLQ. - DLQs are essential for isolating problematic messages, preventing them from blocking the source queue, and allowing for later analysis, debugging, and manual or automated reprocessing (redrive) of failed messages. The redrive process allows messages in a DLQ to be moved back to their source queue (or another designated queue) for another attempt at processing after they have failed to be processed successfully by consumers (exceeding
maxReceiveCount
). It enables reprocessing of problematic messages after the underlying issue (e.g., application bug, external service unavailability) has been resolved. For SAP-C02, Redrive is a vital part of operational resilience and debugging strategies in asynchronous architectures, allowing for manual or automated re-attempts at processing, ensuring no messages are permanently lost due to transient or correctable errors, and aiding in recovery time objectives (RTO) for message-based workflows.
- The
- Message Attributes: Allow you to attach structured metadata (up to 10 attributes) to messages, enabling consumers to process messages differently without parsing the entire message body.
- Short vs. Long Polling:
- Short Polling: Returns messages immediately, even if the queue is empty (can lead to empty responses).
- Long Polling: Waits for messages to arrive (up to 20 seconds,
ReceiveMessageWaitTimeSeconds
) or until the configured polling time expires, reducing empty responses and increasing efficiency/cost-effectiveness. Long polling is generally recommended.
- SAP-C02 Relevance: SQS is a foundational service for designing resilient, scalable, and loosely coupled microservices architectures, event-driven patterns, and asynchronous processing workflows (e.g., order processing, batch job queues). Understanding its message delivery semantics, the role of DLQs for fault tolerance and debugging, and the nuances of visibility timeout for reliable message consumption is critical for building robust enterprise solutions.
- Note on SQS message persistence when it comes to DLQs:
- For Standard DLQs: The message retention period is calculated from the original enqueue timestamp of the message, even after it's moved to the DLQ. This means if a message spent 13 days in the source queue before being moved to a DLQ with a 14-day retention, it would only remain in the DLQ for 1 more day before being automatically deleted.
- For FIFO DLQs: The enqueue timestamp resets when the message is moved to the DLQ. This means it gets the full retention period from the moment it lands in the DLQ.
- Amazon SNS (Simple Notification Service): A fully managed messaging service for A2A (Application-to-Application) and A2P (Application-to-Person) communication via a publish/subscribe model; allows you to send messages to various subscribed endpoints (e.g., SQS queues, Lambda functions, HTTP/S endpoints, email, SMS) with high throughput and low latency; excellent for fan-out scenarios, event notifications, alerting, and mobile push notifications, frequently used for real-time operational alerts (e.g., from CloudWatch alarms) and decoupling communication channels in SAP-C02 solutions.
- Amazon EventBridge (Advanced Event-Driven Architecture - Preferred): An enhancement (replacement) of CloudWatch Events that acts as a serverless event bus for routing events from a wider array of sources (AWS services, SaaS applications, custom apps, and CloudTrail logs for specific API calls) to various targets (e.g., Lambda, SQS, SNS); supports Event Buses (default, partner, custom), event rules with content filtering and transformation, and schema discovery, making it the preferred choice for building scalable, decoupled, and robust event-driven architectures and integrating heterogeneous systems, a critical pattern for highly available and resilient solutions in advanced SAP-C02 scenarios.
- Amazon CloudWatch Events (Event-Driven Automation - Legacy): A serverless event bus that delivers a near real-time stream of system events (from AWS services, your applications, or custom sources) to target functions or services (e.g., Lambda, SQS, SNS); used for event-driven automation and scheduling (e.g., triggering a Lambda function every 5 minutes, reacting to EC2 state changes), primarily superseded by Amazon EventBridge but still found in older implementations and basic use cases.
- Amazon Managed Streaming for Apache Kafka (MSK): Managed Kafka for Real-time Data Streaming & Event-Driven Architectures: MSK provides a fully managed service for running Apache Kafka clusters, enabling real-time data ingestion, processing, and streaming for event-driven architectures, log aggregation, and real-time analytics pipelines. It's designed for high throughput and low latency data streams, offering high availability and durability by distributing brokers across multiple AZs and automatically replicating data. For SAP-C02, MSK is used when an organization requires a robust, scalable, and highly available messaging backbone for complex data pipelines, integrating disparate systems, or building streaming analytics solutions where the Apache Kafka ecosystem (Kafka Connect, Kafka Streams) is leveraged.
- AWS AppSync: Is a fully managed service that makes it easy to build scalable GraphQL APIs for web and mobile applications, providing real-time data synchronization, offline capabilities, and integration with various AWS data sources (like DynamoDB, Aurora, Lambda, and Elasticsearch) through a single endpoint. It simplifies data access, reduces network calls, and handles complex backend logic like authorization and connection management. AWS AppSync is a fully managed service that makes it easy to develop GraphQL APIs by handling the heavy lifting of securely connecting to data sources like Amazon DynamoDB, Lambda, and more. Adding caches to improve performance, subscriptions to support real-time updates, and client-side data stores that keep offline clients in sync are just as easy. Once deployed, AWS AppSync automatically scales your GraphQL API execution engine up and down to meet API request volumes. With managed GraphQL subscriptions, AWS AppSync can push real-time data updates over Websockets to millions of clients. For mobile and web applications, AppSync also provides local data access when devices go offline, and data synchronization with customizable conflict resolution, when they are back online. AppSync supports real-time chat applications. You can build conversational mobile or web applications that support multiple private chat rooms, offer access to conversation history, and queue outbound messages, even when a device is offline.
- MSK + S3 vs. DynamoDB: Architectural Fit for Data Ingestion & Storage:
- MSK + S3 (Streaming Ingestion & Data Lake): This combination is ideal for high-volume, high-velocity data ingestion pipelines (e.g., IoT, clickstreams, log data) where data needs to be streamed, processed (e.g., with Lambda, Flink), and then stored in a cost-effective, scalable data lake (S3) for long-term analytics, archival, and machine learning. MSK handles the real-time event streaming and decoupled processing, while S3 provides cheap, highly durable storage for raw and processed data, supporting batch analytics (e.g., EMR, Athena). This pattern is often chosen for scenarios requiring separation of concerns between real-time processing and analytical storage, offering flexibility in data schemas and long-term retention. MSK handles sequential processing of streaming data; S3 is optimized for large object storage and analytical queries over entire datasets (via Athena/Redshift Spectrum). MSK provides at-least-once delivery for messages. S3 offers read-after-write consistency for new object PUTs and eventual consistency for overwrites/deletes. MSK on broker hours, storage, and data transfer; S3 on storage and requests. MSK+S3 involves a more complex pipeline requiring integration with other services (e.g., Lambda, Kinesis Firehose, Glue) for full data lifecycle management and processing.
- DynamoDB (Transactional & Low-Latency Operational Data): DynamoDB is best suited for operational data stores that require high-performance, low-latency, transactional read/write access to structured or semi-structured data by applications. It's designed for direct application access, handling millions of requests per second for specific data lookups (key-value). It is not typically a primary component of a data lake for raw, high-volume streaming data capture or complex analytical queries over entire datasets, though it can be a source or sink for data processed by streaming services (e.g., DynamoDB Streams to Kinesis/MSK for analytics). DynamoDB excels at point reads/writes and range queries on indexed attributes. DynamoDB offers eventual and strongly consistent reads. DynamoDB costs are based on RCU/WCU (or on-demand) and storage. DynamoDB is simpler to manage for operational use cases.
Feature |
Amazon SQS |
Amazon SNS |
Amazon EventBridge |
Primary Purpose |
Decoupling, asynchronous task processing, queueing |
Broadcasting messages, real-time notifications |
Event-driven architectures, intelligent event routing |
Communication |
Pull-based (consumer pulls from queue) |
Push-based (SNS pushes to subscribers) |
Push-based (EventBridge pushes to targets) |
Message Flow |
One-to-one (or competing consumers) |
One-to-many (fan-out) |
One-to-many (based on rules) |
Message Persistence |
Yes (messages stored until processed) - upto 14 days |
No (immediate delivery, retries, but not stored) |
No (events processed in real-time) |
Ordering |
FIFO queues guarantee order |
Not guaranteed (unless combined with SQS FIFO) |
Not guaranteed across multiple targets |
Filtering |
Limited (message attributes) |
Limited (message attributes) |
Advanced (content-based pattern matching) |
Sources |
Your applications (send messages) |
Your applications (publish messages) |
AWS Services, Custom Apps, SaaS Partners |
Targets |
One or more consumers polling the queue |
HTTP/S, SQS, Lambda, Email, SMS, Mobile Push |
SQS, SNS, Lambda, Step Functions, ECS Tasks, Kinesis, many more AWS services, HTTP endpoints |
Complexity |
Relatively simple |
Simple pub/sub |
More complex (rules, event patterns, schema registry) |
Best For |
Work queues, async processing, buffering |
Real-time alerts, fan-out to multiple systems/users |
Orchestrating complex workflows, reacting to events from many sources, SaaS integrations |
- AWS Application Migration Service (AWS MGN): Automated "Lift-and-Shift" for Large-Scale Server Migrations with Minimal Downtime: AWS Application Migration Service (AWS MGN) is the primary recommended service for rehosting (lift-and-shift) physical servers, virtual machines (VMs), or cloud instances into AWS EC2 with near-zero downtime. It achieves this through continuous data replication from the source server to a staging area in AWS, allowing for non-disruptive testing of migrated servers before a rapid cutover. For SAP-C02, MGN is a cornerstone for accelerating workload migration and modernization (Domain 4), particularly for heterogeneous environments and large portfolios of servers, simplifying the migration process by automating the conversion of source servers to AWS-compatible instances and minimizing the RTO/RPO during the cutover phase… business continuity. AWS MGN supports syncing of attached volumes as well, so you don't have to migrate the data volumes manually.
- AWS Application Discovery Service: Inventory & Dependency Mapping for Cloud Migration Planning: AWS Application Discovery Service helps enterprises plan and execute large-scale cloud migrations by collecting detailed configuration, performance, and network dependency data about on-premises servers and applications. It offers two primary discovery methods:
- Agent-based Discovery: Installs a small agent on individual on-premises servers/VMs to collect in-depth data on processes, system configurations, performance (CPU, memory, disk I/O), and network connections (for dependency mapping).
- Agentless Discovery: Deploys a virtual appliance (OVA) in VMware vCenter environments to collect VM inventory, configuration, and utilization data without installing agents on individual VMs. It also supports database discovery for metadata and performance metrics. The collected data is then visualized and analyzed in AWS Migration Hub (often integrated with Migration Evaluator for cost projections) to identify application dependencies, create "move groups," right-size AWS resources (e.g., EC2 instances), and build a comprehensive migration plan. For SAP-C02, it's crucial for reducing migration risks, optimizing resource allocation, and accelerating the overall migration process by providing the necessary insights into complex on-premises environments before a lift-and-shift, re-platforming, or re-factoring strategy is executed.
- AWS Database Migration Service (DMS): Minimizing Downtime for Database Migrations (Homogeneous & Heterogeneous): DMS is a highly available and resilient service for migrating databases to AWS (or between AWS databases) with minimal downtime (near-zero RTO/RPO), supporting both homogeneous (same database engine, e.g., Oracle to Oracle) and heterogeneous (different database engines, e.g., Oracle to Aurora PostgreSQL) migrations. It achieves this by performing a full load of the source database to the target, followed by Change Data Capture (CDC) to continuously replicate ongoing changes, allowing applications to remain online until a cutover can be performed. For SAP-C02, DMS is a crucial tool for accelerating workload migration and modernization, especially for large, critical production databases where business continuity during migration is paramount, often in conjunction with AWS Snow Family for very large initial data transfers. DMS supports migration to RedShift as well.
- AWS Schema Conversion Tool (SCT): Automated Schema & Code Transformation for Heterogeneous Migrations: SCT is a desktop application (run on your local machine/on-premises) used to analyze and convert heterogeneous database schemas and application code (e.g., stored procedures, functions, packages, triggers, views, ETL scripts) from a source database to a target database compatible with AWS (e.g., Oracle to Aurora PostgreSQL, SQL Server to Redshift). It assesses the complexity of the conversionand highlights objects that cannot be automatically converted, providing guidance for manual intervention. For SAP-C02, SCT is an essential prerequisite for successful heterogeneous database migrations by minimizing manual refactoring effort, identifying potential migration challenges upfront, and helping re-platform legacy applications to modern, purpose-built AWS databases, directly supporting.
- AWS Snowball: Is a petabyte-scale data transfer service that uses secure, rugged physical devices to accelerate moving large amounts of data into and out of AWS when internet transfer is impractical or too slow, providing both data migration and edge computing capabilities with on-device encryption and tamper detection.
Feature |
AWS Snowcone |
AWS Snowball Edge Storage Optimized |
AWS Snowball Edge Compute Optimized |
AWS Snowmobile |
Primary Use Case |
Small-scale data transfer(online/offline); portable edge computing for constrained environments. |
Large-scale data migration (to/from S3); capacity-oriented edge storage. |
Advanced edge computing(ML/AI inference, video analytics); faster processing; data transfer. |
Exabyte-scale data migration (single transfer); datacenter decommissioning. |
Storage Capacity |
8 TB (HDD) or 14 TB (SSD) usable |
Up to 210 TB usable (HDD or NVMe SSD depending on model) |
~28 TB NVMe SSD usable (dedicated for compute instances) |
Up to 100 PB |
Compute Capability |
Minimal (2 vCPUs, 4 GB RAM); supports EC2, Greengrass, Lambda. |
Moderate (40 vCPUs, 80 GiB RAM); supports EC2, Lambda. |
High (52 or 104 vCPUs, 416 GiB RAM);Â optional GPU; supports EC2, Lambda. |
None (only for data transfer) |
Physical Attributes |
Smallest (4.5 lbs/2.1 kg); highly portable, rugged. |
Rugged device; larger/heavier than Snowcone. |
Rugged device; similar size/weight to Storage Optimized. |
45-foot ruggedized shipping container pulled by a truck. |
Connectivity |
Can use AWS DataSync for online transfer; also offline. |
Can operate disconnected; connects to AWS for job setup/return. |
Can operate disconnected; connects to AWS for job setup/return. |
Requires road access for physical transport. |
Deployment Scenario |
Backpack-sized; drones, remote sensors, IoT devices. |
Branch offices, industrial sites, temporary data centers. |
Factories, oil rigs, military bases, high-res media capture. |
Entire data centers, large-scale archives. |
Key Differentiator |
Smallest, lightest, most portable; supports online transfer via DataSync. |
Max storage for data bulk transfer; general-purpose edge compute. |
Max compute for local processing at edge; GPU option for ML. |
Largest scale data transfer (PB to EB); physical mobile datacenter. |
SAP-C02 Focus |
Extremely resource-constrained edge; quick field deployments; hybrid online/offline transfer. |
Large-scale migration bottleneck relief; basic edge processing. |
Complex edge analytics/MLÂ in challenging environments. |
Massive, one-time data transfers where network is unfeasible for exabytes. |
- AWS Purchasing Options & Monitoring Tools: AWS offers multiple purchasing options such as Savings Plans, Reserved Instances, and Spot Instances to allow customers optimize their workloads in terms of cost. There are also multiple services that can be used when monitoring usage and cost to help in this analysis, such as AWS Pricing Calculater, AWS Cost Explorer and AWS Budgets.
- For EC2 usage: EC2 Instance Savings Plans offer the highest savings (up to 72%) and are applied to a specific instance within a chosen region. Compute Savings Plans offer slightly lower savings (up to 66%) but provide more flexibility as they apply to any instance family and can cover usage across different services like EC2, Fargate, and Lambda.
- Spot Instances: For use cases when there is an increase in load during certain periods, Spot instances can be a cost-effective solution. These instances provide flexibility and allow using spare EC2 capacity at a significant discount.
- Spot Instances (including different strategies): EC2 Spot Instances allow you to leverage unused EC2 capacity at significant discounts (up to 90% off On-Demand) but are interruptible by AWS with a 2-minute notice when capacity is reclaimed, making them ideal for fault-tolerant, flexible, and stateless workloads like batch processing, analytics, and containerized applications; allocation strategies for Spot Fleets or Auto Scaling groups include: Lowest Price(prioritizes cost-savings, selects from pools with the lowest current price, higher interruption risk), Diversified(distributes instances across multiple Spot pools for higher availability, lower interruption risk), and Capacity Optimized(selects pools less likely to be interrupted, balancing cost and availability), while Spot Blocks (Spot Instances for a fixed duration, 1-6 hours) offer uninterrupted execution.
- EC2 Spot Fleet: A feature of EC2 Auto Scaling that allows you to request a fleet of Spot Instances (and optionally On-Demand Instances) across multiple instance types and Availability Zones with a single request, with pricing up to 90% off On-Demand; ideal for fault-tolerant, flexible, and stateless workloads(e.g., batch processing, analytics, rendering, CI/CD) that can withstand interruptions or be easily restarted, providing significant cost savings for suitable workloads in SAP-C02 cost optimization scenarios.
- EC2 Reserved Instances (RIs): (Discounted, Capacity Reservation): A billing discount applied to On-Demand Instance usage in exchange for a 1-year or 3-year commitment to a specific instance configuration (instance type, Region, operating system, tenancy, sometimes AZ for capacity reservation); offers significant cost savings (up to 75% off On-Demand) for predictable, steady-state workloads; shared across AWS Organizations by default for maximized utilization, a key strategy for cost optimization in SAP-C02 and often combined with Auto Scaling for baseline capacity.
- EC2 Reserved Instances (RIs) continued: A cost optimization strategy offering significant discounts (up to 75% off On-Demand) for EC2 instances by committing to a 1-year or 3-year term, best suited for predictable, steady-state workloads where you know your compute needs long-term; RIs are a billing discount applied to matching On-Demand instances, not a physical instance itself, and come in two offering classes: Standard RIs (highest discount, but fixed instance family/size/OS) and Convertible RIs (lower discount but offer flexibility to change instance family, size, OS, or tenancy during the term for evolving needs); payment options include All Upfront (max discount), Partial Upfront, or No Upfront (lowest discount), and RIs can also provide an optional capacity reservation in a specific Availability Zone (Zonal RIs) or apply regionally across AZs (Regional RIs) for broad discounts, making them crucial for enterprise-level cost management and capacity assurance.
- EC2 On-Demand Instances: (Flexible, Pay-as-you-go): The default EC2 pricing option where you pay for compute capacity by the second (Linux) or hour (Windows) with no long-term commitments or upfront payments; offers maximum flexibility to scale up or down instantly, making it suitable for unpredictable workloads, development/testing environments, or applications with short-term, spiky demand where immediate availability is paramount, serving as the baseline cost model and often combined with other purchasing options for a balanced cost strategy in SAP-C02.
- EC2 Savings Plans: (Flexible Discount Commitment): A flexible pricing model that offers significant discounts (up to 72%) on EC2 usage (and also Fargate, Lambda) in exchange for a 1-year or 3-year hourly spend commitment (in USD/hour), regardless of instance family, size, OS, or Region (for Compute Savings Plans); automatically applies to eligible usage, providing more flexibility than RIs while offering comparable savings for consistent compute spend, making them the recommended default for most organizations aiming for cost optimization across diverse workloads in SAP-C02.
- EC2 Dedicated Hosts: (Physical Host Reservation & BYOL): A physical server that is fully dedicated to your use, allowing you to bring your existing per-socket, per-core, or per-VM software licenses (BYOL) for cost savings and to meet specific corporate compliance or regulatory requirements; you pay for the entire host (by the hour or via RI/Savings Plan) regardless of instances launched on it, offering visibility and control over instance placement and host affinity, ideal for workloads with strict licensing or isolation needs in SAP-C02.
- EC2 Dedicated Instances: (Single-Tenant Hardware): EC2 instances that run on hardware physically dedicated to a single AWS account (isolated from other AWS accounts); offers instance-level billing (unlike Dedicated Hosts) and meets some basic compliance requirements for single-tenant hardware, but lacks the host-level visibility and control (e.g., for BYOL) of Dedicated Hosts, making them a simpler option for isolation where BYOL isn't the primary driver, a nuance for SAP-C02 designs prioritizing multi-tenant hardware isolation.
- EC2 On-Demand Capacity Reservations: (Guaranteed Capacity at On-Demand Price): Allows you to reserve EC2 capacity for your instances in a specific Availability Zone (AZ) for any duration, ensuring that you can launch instances whenever needed, even in high-demand scenarios; you pay the On-Demand rate for the reserved capacity whether you use it or not, but if used, it consumes RIs or Savings Plans first; critical for mission-critical workloads requiring absolute capacity guarantees in a specific AZ, balancing cost with extreme availability in SAP-C02.
- For the database instance: Paying for an entire Reserve Instance term (1 year) with an upfront payment provides a large discount compared with other payment options. Since the usage is predictable, database sizing can also be planned beforehand. Vertical scaling or scaling up is adding to the resources of a server. This is an effective way to handle high traffic during sales events and holiday seasons. Scaling up the database can be scheduled to handle the increased load.
- Amazon CloudWatch (Monitoring & Observability): A monitoring and observability service that collects and processes raw data (metrics, logs, events) from AWS resources and applications into actionable insights; provides metrics (e.g., CPU utilization, network I/O), logs (from EC2, Lambda, etc.), alarms (trigger actions based on metric thresholds), and dashboards for visualization, forming the foundation for comprehensive operational monitoring and troubleshooting, a core aspect of reliable architectures in SAP-C02. It natively offers standard resolution metrics (1-minute granularity) by default from AWS services, with high-resolution custom metrics (up to 1-second granularity) available for more granular monitoring, and all metrics are retained for a total of 15 months, during which older data is automatically aggregated into less granular points to manage storage while retaining long-term trends: specifically, 1-minute data is kept for the first 15 days, then aggregated to 5-minute resolution for the next 63 days, and finally aggregated to 1-hour resolution for the remaining 455 days(totaling 15 months), ensuring comprehensive historical visibility for performance analysis and trend identification. High-resolution custom metrics in CloudWatch remain at their sub-minute (e.g., 1-second) granularity only for the first 3 hours after they are published.
- CloudWatch Logs Agent (for On-Premises/EC2 Log Collection): A software agent (Unified Agent or legacy CloudWatch Logs Agent) that runs on EC2 instances or on-premises servers to continuously collect and send operating system, application, and custom log files to CloudWatch Logs; essential for centralizing log data from ephemeral or non-AWS resources for monitoring, analysis, alarming, and auditing, allowing architects to gain comprehensive visibility into application and infrastructure behavior, which is vital for effective troubleshooting, security analysis, and compliance in hybrid or complex EC2-based SAP-C02 solutions.
- AWS CloudWatch Logs Insights: Interactive, High-Performance Log Analysis for Operational Intelligence: CloudWatch Logs Insights is a fully managed, interactive log analytics service that enables you to efficiently search, analyze, and visualize operational logs from various AWS services (e.g., Lambda, VPC Flow Logs, CloudTrail, ECS, custom application logs) in near real-time. It uses a powerful, SQL-like query language with specialized commands (e.g., filter, parse, stats, sort, limit, display) to quickly pinpoint issues, identify trends, debug applications, and monitor performance metrics. For SAP-C02, Logs Insights is crucial for accelerating troubleshooting and root cause analysis in complex distributed systems, providing operational intelligence by allowing architects and operations teams to easily query massive volumes of log data, derive actionable insights, and improve the mean time to recovery (MTTR) for critical incidents by rapidly sifting through log data from diverse sources.
- CloudWatch Service Quota Monitoring: Amazon Web Services (AWS) offers metrics on service quota usage through CloudWatch in the
AWS/Usage
namespace, including data on the Fargate vCPU utilization.SERVICE_QUOTA()
is a built-in CloudWatch function that retrieves the service quota for a specific resource. This function can be used to monitor and alert when the usage for a particular resource approaches its service quota limit.
- AWS CodeDeploy: Automated, Orchestrated Application Deployment to Diverse Compute: CodeDeploy is a deployment service that automates application deployments to various compute services (EC2 instances, on-premises servers, Lambda functions, Amazon ECS Fargate/EC2 tasks). It orchestrates deployments through defined deployment groups and configuration strategies (e.g., in-place, blue/green with automatic rollback/traffic shifting) using an
appspec.yml
file. For SAP-C02, CodeDeploy is critical for implementing robust CI/CD pipelines (often with CodePipeline/CodeBuild), ensuring consistent, automated, and high-availability deployments with minimal downtime by managing complex deployment logic, health checks, and providing automated rollback capabilities, significantly improving release reliability and speed across hybrid or cloud-native environments.
- AWS Serverless Application Model (AWS SAM): An open-source framework (extension of AWS CloudFormation)that simplifies building, testing, and deploying serverless applications (Lambda functions, API Gateways, DynamoDB tables, etc.) using a simplified, shorthand syntax for Infrastructure as Code (IaC); provides the SAM CLI for local development, debugging, and deployment, enabling streamlined CI/CD pipelines and efficient management of serverless resources as a single unit, which is crucial for managing complex serverless architectures at scale in SAP-C02 solutions.
- AWS Serverless Application Repository (SAR): A managed repository for serverless applications that enables developers to discover, deploy, and share reusable serverless components (packaged as SAM templates); supports both public and private sharing (within an account or with specific AWS accounts) to reduce duplicated work, enforce organizational best practices, and accelerate development workflows by allowing teams to easily consume pre-built, tested serverless solutions, relevant for SAP-C02 scenarios involving promoting reusability and standardization across large organizations.
- Amazon Connect: A cloud-based contact center service that allows you to set up and manage a customer contact center quickly, enabling voice, chat, and task routing; integrates with other AWS services (Lambda for custom logic, S3 for recordings, Kinesis for streaming data) for advanced analytics and CRM integration, useful for SAP-C02 questions involving building scalable, resilient, and intelligent customer service solutions without traditional contact center infrastructure.
- AWS Lex: Build Conversational AI (Chatbots/Voicebots) with ASR & NLU: AWS Lex is a fully managed service for building conversational interfaces (chatbots and voicebots) into any application. It leverages Automatic Speech Recognition (ASR) to convert spoken language into text and Natural Language Understanding (NLU) to comprehend the intent behind the user's input, extract relevant information (slots), and manage the conversation flow. For SAP-C02, Lex is crucial for designing scalable and intelligent customer engagement solutions (e.g., virtual agents, IVRs, interactive self-service systems), often integrated with AWS Lambda for backend business logic, Amazon Connect for contact centers, and other AWS services for data storage and processing, enabling seamless human-like interactions at scale. Lex V2 has GenAI support with bedrock agent, knowledge bases integration.
- AWS Comprehend: Extract Insights and Relationships from Unstructured Text using ML: AWS Comprehend is a fully managed Natural Language Processing (NLP) service that uses machine learning to find insights and relationships in unstructured text. It can perform tasks like entity recognition (people, places, organizations), sentiment analysis (positive, negative, neutral), key phrase extraction, language detection, syntax analysis, and topic modeling. For SAP-C02, Comprehend is vital for designing solutions that process large volumes of text data (e.g., customer reviews, social media feeds, call center transcripts, internal documents) to automate content analysis, improve search capabilities, power business intelligence, and enhance compliance efforts, without requiring specialized machine learning expertise.
- AWS Polly: Text-to-Speech (TTS) for Lifelike Voice Synthesis: AWS Polly is a fully managed Text-to-Speech (TTS) service that converts text into natural-sounding human speech using advanced deep learning technologies. It offers a wide selection of lifelike voices across many languages and supports Speech Synthesis Markup Language (SSML) for fine-grained control over pronunciation, pitch, speed, and other speech characteristics. For SAP-C02, Polly is used to design applications that require dynamic, on-demand voice output (e.g., audio articles, e-learning content, voice user interfaces for smart devices, IVR systems, narrations for videos), enhancing accessibility and user experience by providing high-quality, customizable speech synthesis at scale.
- AWS Transcribe: A fully managed, highly accurate Automatic Speech Recognition (ASR) service leveraging deep learning to convert speech to text for both pre-recorded and real-time audio, crucial for building applications requiring voice-to-text capabilities (e.g., call analytics, media subtitling, voice-enabled apps) by simplifying complex ML tasks and integrating seamlessly with other AWS services like S3 for storage and Lambda for processing.
- AWS Rekognition: AI-Powered Image & Video Analysis for Content Intelligence: AWS Rekognition is a fully managed, serverless artificial intelligence (AI) service that provides pre-trained and customizable computer vision capabilities for analyzing images and videos. It can perform tasks like object and scene detection, facial analysis, celebrity recognition, text in image (OCR), inappropriate content moderation, and custom label detection (for specific business objects). For SAP-C02, Rekognition is vital for designing solutions that extract insights and metadata from visual content at scale, enabling use cases such as automating content tagging and search for media archives, enhancing customer experience through personalized content, improving security with facial recognition, or optimizing business processes by analyzing visual data (e.g., quality control in manufacturing), often integrated with other services like S3 (for storage), Lambda (for event-driven processing), and DynamoDB (for metadata storage).
- AWS IoT Core: Is the central, fully managed cloud service that allows billions of IoT devices to securely and reliably connect to AWS, route messages to other AWS services, and manage device data, supporting common protocols like MQTT, HTTP, and LoRaWAN, and providing features like the Rules Engine for data processing, Device Shadow for state synchronization, and a Registry for device management.
- AWS IoT Greengrass: Extends AWS IoT Core capabilities to the edge, enabling local execution of AWS Lambda functions, Docker containers, and machine learning inference on connected devices, allowing devices to act locally on data, communicate securely with other devices on a local network, and operate autonomously even with intermittent connectivity to the cloud, reducing latency and data transfer costs.
- Other related AWS IoT services include:
- AWS IoT Device Management: Simplifies the process of securely registering, organizing, monitoring, and remotely managing large fleets of IoT devices throughout their lifecycle, including over-the-air (OTA) updates and troubleshooting.
- AWS IoT Device Defender: A fully managed security service that continuously audits IoT device configurations against best practices and monitors device behavior for anomalies, helping identify and mitigate potential security risks.
- AWS IoT Analytics: (Note: AWS IoT Analytics is scheduled for end of support on December 15, 2025. Customers are advised to migrate to other services like Kinesis, S3, Glue, and Athena). Historically, it was a fully managed service for collecting, processing, and analyzing large volumes of IoT data for insights and machine learning, by cleaning, transforming, and storing data in a time-series optimized data store.
- AWS IoT Events: A fully managed service that allows you to detect and respond to events from IoT sensors and applications, enabling you to define logic to identify significant events (e.g., equipment malfunction, threshold breaches) and trigger actions in other AWS services when those events occur.
- AWS IoT SiteWise: A managed service for collecting, organizing, and analyzing industrial equipment data at scale, helping you understand equipment performance and make data-driven decisions.
- AWS IoT TwinMaker: Helps create digital twins of real-world systems, allowing you to combine data from various sources (IoT sensors, video, business applications) into a unified view to monitor and simulate operations.
- AWS IoT FleetWise: Collects, transforms, and transfers vehicle data to the cloud at scale, enabling automakers to improve vehicle quality, safety, and autonomy.
- Amazon FreeRTOS (now AWS IoT FreeRTOS): A real-time operating system for microcontrollers that makes it easy to securely connect small, low-power edge devices to AWS IoT Core or AWS IoT Greengrass.
- DR strategies:
- Backup and Restore: This is the least expensive and simplest DR strategy with the highest RTO (hours to days) and RPO (hours to a day, depending on backup frequency), involving regular backups (e.g., using AWS Backup, S3, EBS snapshots, RDS snapshots) to a separate region, and manual or automated restoration of data and re-provisioning of infrastructure (often via CloudFormation) in the event of a disaster.
- Pilot Light: This strategy offers a moderate RTO (tens of minutes to hours) and RPO (minutes to hours, with data replication) by maintaining a minimal, continuously running core of essential services (e.g., replicated databases, basic network infrastructure) in the recovery region, which can be quickly scaled up to full production capacity using automated scripts (e.g., CloudFormation, Auto Scaling) when a disaster strikes, providing a balance of cost and recovery speed.
- Warm Standby: Providing a low RTO (minutes to a few hours) and RPO (seconds to minutes, with near real-time data replication), Warm Standby involves running a scaled-down but fully functional replica of your production environment in a separate region, with continuous data replication, allowing for rapid scaling up and redirection of traffic (e.g., via Route 53) to the standby environment during a disaster, making it a more expensive but faster recovery option than Pilot Light.
- Multi-Site Active-Active (Hot Standby): This is the most expensive and complex DR strategy, but delivers the lowest RTO (seconds to minutes) and RPO (near zero/seconds with continuous data replication) by having two or more fully functional environments actively serving traffic simultaneously across different regions, utilizing global load balancing (e.g., Route 53 with weighted or latency routing) and synchronous or asynchronous cross-region data replication (e.g., DynamoDB Global Tables, Aurora Global Database) to ensure seamless failover with minimal or no downtime.
- EC2Rescue Tool: A diagnostic and troubleshooting utility provided by AWS that helps analyze and remediate common OS-level issues (e.g., connectivity, boot failures, corrupted registry, file system errors, network configuration) on Amazon EC2 Windows and Linux instances, operating in both online (current instance) and offline (attaching the root volume to a helper instance) modes, and is often leveraged via AWS Systems Manager Automation documents (
AWSSupport-ExecuteEC2Rescue
) for automated, self-service troubleshooting of unreachable instances.
- AWS AppStream 2.0: A fully managed, secure application streaming service that centrally hosts desktop applications in the cloud and streams them as pixel data to any device with an HTML5 browser, enabling "Software-as-a-Service" (SaaS) delivery of traditional desktop apps for remote work, training, and specialized software access, simplifying management and enhancing security by keeping data off end-user devices.
- Caching API Requests at API Gateway vs. CloudFront: For global public APIs, the SAP-C02 best practice is typically CloudFront in front of an Edge-optimized API Gateway; CloudFront (global CDN) provides edge caching, DDoS protection (AWS Shield), and lower global latency by serving content from POPs closer to users, while API Gateway's integrated caching serves a more regional purpose or specific backend offloading (e.g., for APIs not fronted by CloudFront), often used to reduce direct calls to backend services, balancing global and regional caching strategies for optimal performance and cost.
- AWS API Gateway: A fully managed, scalable "front door" for applications, supporting REST/HTTP/WebSocket APIs with Edge-optimized (default, CloudFront-backed for global clients), Regional (for in-region clients), and Private(VPC-only via PrivateLink for internal/hybrid architectures) endpoints; crucial for security (IAM, Cognito, custom Lambda authorizers), traffic management (throttling, usage plans), and performance (integrated caching, request/response transformation), with costing based on requests and data transfer out, often fronted by CloudFront for global caching/DDoS.
- Amazon Cognito (Overall Service): Provides comprehensive user sign-up, sign-in, and access control for web and mobile applications, handling user identity management and authentication to scale to millions of users; crucial for customer-facing applications requiring robust identity solutions.
- Amazon Cognito User Pools (Authentication - "The Directory"): A user directory that provides sign-up/sign-in capabilities directly for your app users (username/password) or by federating through external Identity Providers (IdPs) like social logins (Google, Facebook, Apple), SAML 2.0, or OpenID Connect (OIDC); manages user profiles, offers built-in MFA and adaptive authentication, and issues ID tokens and Access tokens (JWTs) to the application for authentication and API access control.
- Amazon Cognito Identity Pools (Authorization - "The AWS Access Broker"): (Also known as Federated Identities) Provides temporary, limited-privilege AWS credentials to users (authenticated by a User Pool or external IdP) to grant them access to other AWS services (e.g., S3, DynamoDB) via IAM roles; it creates unique identities for users and maps them to IAM roles based on authentication status or claims, essential for granting granular, secure access to AWS resources for application users without creating IAM users for everyone.
- SAML 2.0 (Security Assertion Markup Language): An XML-based open standard for exchanging authentication and authorization data between an IdP (e.g., corporate Active Directory Federation Services - ADFS, Okta) and a Service Provider (e.g., AWS, applications); commonly used for enterprise SSO to AWS Management Console/APIs via IAM roles or to applications via Cognito User Pools, ensuring secure attribute-based access control (ABAC).
- LDAP (Lightweight Directory Access Protocol): A protocol for accessing and maintaining distributed directory information services (like Microsoft Active Directory); while AWS Directory Service (e.g., Managed Microsoft AD, AD Connector) integrates with LDAP-based directories, AWS directly uses SAML 2.0 or OIDC for identity federation from LDAP-backed directories into Cognito User Pools or IAM roles, rather than directly supporting LDAP for federation itself.
- OpenID Connect (OIDC): An identity layer on top of the OAuth 2.0 protocol, allowing clients to verify the identity of the end-user based on authentication performed by an authorization server and to obtain basic profile information about the end-user; commonly used for social logins (Google, Facebook, etc.) and can be integrated with Cognito User