Courseiva

CCNA Design for New Solutions Questions

75 of 487 questions · Page 2/7 · Design for New Solutions · Answers revealed

76
MCQmedium

A company is designing a new serverless data processing pipeline. The pipeline uses AWS Lambda to process records from an Amazon Kinesis Data Stream. The company wants to ensure that failed records are automatically retried and sent to a dead-letter queue after three failed attempts. Which configuration should the company use?

A.Configure the Kinesis stream to send failed records to an SQS standard queue.
B.Configure an on-failure destination on the Kinesis event source mapping to send records to an SQS queue.
C.Configure the Lambda function's dead-letter queue property with an SQS queue.
D.Configure a Lambda destination on the function to send events to an SQS queue.
AnswerB

The event source mapping for Kinesis supports an on-failure destination for DLQ.

Why this answer

The on-failure destination on a Kinesis event source mapping allows you to specify an SQS queue to which records are sent after a configurable number of retry attempts (default is 3). This is the native mechanism for handling failed records in a Lambda-Kinesis integration, providing automatic retries and dead-letter queue behavior without custom code.

Exam trap

The trap here is that candidates often confuse the Lambda function's dead-letter queue (DLQ) property, which only works for asynchronous invocations, with the on-failure destination on event source mappings, which is the correct configuration for stream-based sources like Kinesis.

How to eliminate wrong answers

Option A is wrong because a Kinesis stream cannot directly send records to an SQS queue; the dead-letter handling must be configured on the event source mapping, not on the stream itself. Option C is wrong because the Lambda function's dead-letter queue property (DLQ) is only applicable for asynchronous invocations, not for stream-based event source mappings like Kinesis. Option D is wrong because Lambda destinations are used for routing invocation results (success/failure) to other services, but they do not provide the automatic retry and dead-letter queue behavior for failed records from a Kinesis stream; the on-failure destination on the event source mapping is the correct mechanism.

77
MCQhard

A company has an IAM policy attached to a user as shown in the exhibit. The user is trying to stop an EC2 instance in the us-west-2 region. What will happen?

A.The user cannot stop the instance because the condition checks the request region.
B.The user cannot stop the instance because the second statement denies all actions in regions other than us-east-1.
C.The user can stop the instance because the first statement allows it.
D.The user can stop the instance because the condition applies only to the Deny statement, but the Allow statement is unconditional.
AnswerB

The deny statement with condition StringNotEquals us-east-1 denies the action in us-west-2.

Why this answer

IAM policy evaluation follows an explicit deny model: any explicit deny overrides any allow. The second statement uses a `Deny` effect with a `StringNotEquals` condition on `aws:RequestedRegion`, which denies all actions (including ec2:StopInstances) when the request region is NOT us-east-1. Since the user is attempting to stop an EC2 instance in us-west-2, the condition evaluates to true, and the deny applies, blocking the action regardless of the first statement's allow.

Exam trap

The trap here is that candidates often assume an unconditional Allow always wins, but they forget that an explicit Deny with a condition that matches the request will override that Allow, leading them to incorrectly choose Option D.

How to eliminate wrong answers

Option A is wrong because the condition does not check the request region in a vacuum; it is part of a Deny statement that explicitly blocks actions when the region is not us-east-1, so the user cannot stop the instance due to the deny, not because of a generic region check. Option C is wrong because while the first statement allows ec2:StopInstances, the second statement's explicit deny overrides that allow, making the action impossible. Option D is wrong because the condition applies to the Deny statement, and the Allow statement is unconditional, but in IAM, an explicit deny always overrides an allow, so the unconditional allow does not help when a deny is triggered.

78
MCQmedium

A company is designing a new microservices architecture on AWS. They need a solution for service discovery that allows services to register themselves and discover other services dynamically. The solution must be highly available and integrated with AWS-native services. Which AWS service should they use?

A.Amazon ECS Service Discovery
B.Application Load Balancer (ALB)
C.AWS Cloud Map
D.Amazon Route 53 private hosted zones
AnswerC

Cloud Map is a service discovery service that allows resources to register and discover each other, with health checks.

Why this answer

AWS Cloud Map is the correct choice because it is a fully managed service discovery service that allows microservices to register themselves dynamically and discover other services via DNS or HTTP API calls. It integrates natively with AWS services like Amazon ECS, Amazon EKS, and AWS Lambda, and provides high availability through automatic health checking and resource synchronization across AWS Regions.

Exam trap

The trap here is that candidates often confuse Amazon ECS Service Discovery (Option A) as a separate service, when it is actually a feature of AWS Cloud Map, leading them to overlook Cloud Map as the correct, standalone service for dynamic service discovery.

How to eliminate wrong answers

Option A is wrong because Amazon ECS Service Discovery is not a standalone service; it is a feature of AWS Cloud Map that is exposed through Amazon ECS, and it lacks the broader API-based discovery and health-check integration that Cloud Map provides. Option B is wrong because an Application Load Balancer (ALB) is a Layer 7 load balancer that distributes traffic to targets, not a service registry for dynamic service-to-service discovery; it does not support service registration or DNS-based discovery for internal microservices. Option D is wrong because Amazon Route 53 private hosted zones provide DNS resolution within a VPC but do not support dynamic service registration, health checking, or API-based discovery; they are a static DNS solution, not a service discovery registry.

79
MCQeasy

A company wants to store application logs in a centralized location for analysis. The logs are generated by EC2 instances in an Auto Scaling group. The solution must be cost-effective and support real-time analysis. Which service should be used to collect and analyze the logs?

A.Amazon S3
B.Amazon Kinesis Data Firehose
C.Amazon Elasticsearch Service
D.Amazon CloudWatch Logs
AnswerD

CloudWatch Logs provides real-time log collection and analysis.

Why this answer

Amazon CloudWatch Logs is the correct choice because it natively integrates with EC2 instances via the CloudWatch Logs agent to collect, monitor, and analyze log data in real time. It provides a centralized log storage with built-in metric filters and subscription filters for real-time analysis, making it cost-effective for logs generated by Auto Scaling groups without requiring additional infrastructure.

Exam trap

The trap here is that candidates often confuse 'real-time analysis' with needing a dedicated analytics service like Amazon Elasticsearch Service, overlooking that CloudWatch Logs provides built-in real-time monitoring and filtering capabilities without additional cost or complexity.

How to eliminate wrong answers

Option A is wrong because Amazon S3 is an object storage service that does not support real-time analysis; it is typically used for archival or batch processing, not for streaming log collection and live querying. Option B is wrong because Amazon Kinesis Data Firehose is a streaming data delivery service that requires additional downstream services (like Amazon Elasticsearch Service or S3) for analysis and storage, adding complexity and cost for a simple log collection use case. Option C is wrong because Amazon Elasticsearch Service (now Amazon OpenSearch Service) is a search and analytics engine that can ingest logs but requires separate log collection agents and additional configuration for real-time analysis, making it less cost-effective and more complex than CloudWatch Logs for this scenario.

80
Multi-Selecteasy

A company is designing a new application that will run on Amazon EC2 instances. The application writes logs to local disk, and the logs must be aggregated centrally for analysis. The company wants a solution that requires minimal configuration and can handle high log volume. Which TWO AWS services should the company use?

Select 2 answers
A.Amazon S3
B.AWS Lambda
C.Amazon Kinesis Data Firehose
D.Amazon CloudWatch Logs
E.Amazon CloudWatch Logs Insights
AnswersD, E

CloudWatch Logs can collect logs from EC2 instances using the CloudWatch agent.

Why this answer

Amazon CloudWatch Logs (option D) can collect logs from EC2 instances via the CloudWatch agent with minimal configuration and at scale. Amazon CloudWatch Logs Insights (option E) provides a query engine to interactively search and analyze the aggregated logs. Option A (Amazon S3) is used for log storage, not for real-time collection or analysis.

Option B (AWS Lambda) can process logs but is not designed for high-volume log ingestion without additional setup. Option C (Amazon Kinesis Data Firehose) is for streaming data to destinations like S3 or Redshift, but it requires more configuration and is not the simplest solution for EC2 log collection.

81
MCQmedium

A company is designing a new application on AWS that requires a relational database with read replicas across multiple AWS Regions. The database must have automated failover and a recovery point objective (RPO) of less than 5 seconds. Which database solution should the company choose?

A.Amazon Aurora Global Database
B.Amazon RDS for MySQL with Multi-AZ and cross-Region read replicas
C.Amazon RDS for PostgreSQL with cross-Region read replicas and Multi-AZ
D.Amazon DynamoDB Global Tables
AnswerA

Aurora Global Database provides RPO of 1 second and automated failover across Regions.

Why this answer

Amazon Aurora Global Database is the correct choice because it is designed for cross-Region replication with a typical RPO of less than 1 second and automated failover from the primary Region to a secondary Region in under 1 minute. This meets the requirement for a relational database with read replicas across multiple Regions and an RPO of less than 5 seconds, as Aurora Global Database uses a dedicated, fast replication channel that minimizes lag.

Exam trap

The trap here is that candidates often confuse Multi-AZ failover (which is Region-bound) with cross-Region failover, or they assume that RDS cross-Region read replicas can achieve the same low RPO as Aurora Global Database, but RDS cross-Region replication is asynchronous and cannot guarantee sub-5-second RPO.

How to eliminate wrong answers

Option B is wrong because Amazon RDS for MySQL with Multi-AZ and cross-Region read replicas uses asynchronous replication for cross-Region replicas, which can introduce replication lag exceeding 5 seconds, and Multi-AZ only provides automated failover within a single Region, not across Regions. Option C is wrong because Amazon RDS for PostgreSQL with cross-Region read replicas and Multi-AZ also relies on asynchronous replication for cross-Region copies, which cannot guarantee an RPO of less than 5 seconds, and Multi-AZ failover is limited to the same Region. Option D is wrong because Amazon DynamoDB Global Tables is a NoSQL database, not a relational database, and the question explicitly requires a relational database solution.

82
MCQmedium

An ALB is configured with a target group for HTTP:80. The health check returns a 302 redirect. What is the most likely cause of the unhealthy instances?

A.The application is returning a 500 Internal Server Error.
B.The application is taking too long to respond.
C.The security group is blocking health check traffic.
D.The application is redirecting health checks to another URL.
AnswerD

A 302 redirect suggests the application is redirecting the health check request.

Why this answer

The ALB health check expects a 200 OK response from the target. A 302 redirect indicates the application is responding with a redirect (e.g., HTTP to HTTPS or to a login page) instead of a success status. This causes the health check to fail because the ALB does not follow redirects for health checks; it only accepts the configured success codes (default 200).

Exam trap

The trap here is that candidates may assume a redirect is harmless or that the ALB will follow it, but the ALB strictly evaluates the first response status code against the configured success codes, and a 302 is not a success by default.

How to eliminate wrong answers

Option A is wrong because a 500 Internal Server Error would produce a 5xx status, not a 302 redirect. Option B is wrong because a timeout would result in a 504 Gateway Timeout or no response, not a 302 redirect. Option C is wrong because if the security group were blocking health check traffic, the ALB would receive no response (connection timeout or refused), not a 302 redirect.

83
MCQhard

Refer to the exhibit. A solutions architect has attached this IAM policy to an IAM role used by an application. The application is trying to upload an object to the S3 bucket example-bucket with server-side encryption using AWS KMS (SSE-KMS). What will happen?

A.The upload succeeds because the policy allows s3:PutObject for the bucket.
B.The upload fails because the policy requires SSE-S3.
C.The upload fails because the bucket policy does not allow SSE-KMS.
D.The upload succeeds because the condition only applies to encryption at rest.
AnswerB

The condition StringEquals on s3:x-amz-server-side-encryption must be AES256, but the request uses SSE-KMS.

Why this answer

The IAM policy explicitly requires the `s3:x-amz-server-side-encryption` header to be set to `AES256` (SSE-S3) via the `StringEquals` condition. Since the application is attempting to use SSE-KMS, the encryption header will be `aws:kms`, which does not match the required value. Therefore, the condition fails, and the `s3:PutObject` action is denied, causing the upload to fail.

Exam trap

The trap here is that candidates assume the `s3:PutObject` action alone grants permission, overlooking the restrictive condition that requires a specific encryption header value, which is a common IAM policy nuance tested on the SAP-C02 exam.

How to eliminate wrong answers

Option A is wrong because the policy includes a condition that restricts the `s3:PutObject` action to only requests with SSE-S3 encryption, so simply allowing the action for the bucket is insufficient. Option B is correct as explained. Option C is wrong because the question does not mention any bucket policy; the failure is due to the IAM policy's condition, not a bucket policy.

Option D is wrong because the condition explicitly applies to the encryption header in the request, which is part of the encryption at rest configuration, and the condition is enforced.

84
MCQmedium

A company is designing a disaster recovery solution for a web application hosted on AWS. The primary site is in us-east-1 and the DR site is in us-west-2. The application uses an Amazon RDS for MySQL database. They need to recover the database with a Recovery Point Objective (RPO) of 5 seconds and a Recovery Time Objective (RTO) of 1 hour. Which solution meets these requirements?

A.Use RDS Multi-AZ in us-east-1 and failover to DR site.
B.Use AWS DMS with ongoing replication to an RDS instance in us-west-2.
C.Use RDS Cross-Region Read Replica and promote it.
D.Use Amazon Aurora Global Database.
AnswerC

Correct. RDS Cross-Region Read Replicas for MySQL replicate data with an RPO of seconds. Promoting the replica is a fast operation, typically taking minutes, so RTO of 1 hour is easily satisfied.

Why this answer

RDS Cross-Region Read Replicas for MySQL provide asynchronous replication with an RPO of typically seconds, and promoting the replica to a standalone instance can be done quickly (minutes), meeting the RTO of 1 hour. Option A is incorrect because Multi-AZ is single region. Option B is incorrect because while DMS can achieve low RPO, it is typically used for migrations and ongoing replication setups may have higher operational complexity and RTO.

Option D is incorrect because Amazon Aurora Global Database is not available for RDS MySQL; it is for Aurora databases.

85
MCQhard

A financial services company is designing a multi-tier application that must achieve a Recovery Time Objective (RTO) of 1 hour and a Recovery Point Objective (RPO) of 15 minutes for a database tier. The application uses Amazon RDS for MySQL with Multi-AZ deployment. Which disaster recovery strategy meets these requirements at the LOWEST cost?

A.Deploy the RDS instance in Multi-AZ configuration and take frequent snapshots to another Region.
B.Use AWS Database Migration Service (DMS) for continuous replication to an RDS instance in another Region.
C.Use Amazon Aurora Global Database, which provides global replication with typical RPO of 1 second.
D.Create a cross-Region read replica of the RDS MySQL instance in another Region. In a disaster, promote the read replica to a standalone instance.
AnswerD

Cross-Region read replicas provide asynchronous replication with low RPO, and promotion takes minutes, meeting RTO at lower cost than other solutions.

Why this answer

A cross-Region read replica for Amazon RDS MySQL provides asynchronous replication with an RPO typically under 15 minutes, and promoting it during a disaster can achieve an RTO of 1 hour. This approach incurs only the cost of the replica instance and cross-Region data transfer, making it the lowest-cost option that meets the stated RTO and RPO requirements.

Exam trap

The trap here is that candidates may confuse Multi-AZ (high availability within a Region) with cross-Region disaster recovery, or assume that Aurora Global Database is always the best choice for low RPO without considering cost constraints, leading them to overlook the simpler and cheaper cross-Region read replica option that still meets the specified RPO of 15 minutes.

How to eliminate wrong answers

Option A is wrong because Multi-AZ is a high-availability feature within a single Region, not a disaster recovery strategy; taking frequent snapshots to another Region cannot achieve an RPO of 15 minutes due to snapshot scheduling overhead and recovery time. Option B is wrong because AWS DMS for continuous replication adds significant cost for a replication instance and ongoing data transfer, and it is not the lowest-cost solution for the given RPO/RTO. Option C is wrong because Amazon Aurora Global Database, while offering very low RPO (~1 second), is more expensive than a cross-Region read replica for MySQL and exceeds the required RPO of 15 minutes, making it over-engineered and not the lowest-cost option.

86
MCQmedium

A solutions architect is troubleshooting an EC2 instance that is not sending metrics to CloudWatch. The instance is running and has internet connectivity. Based on the exhibit, what is the MOST likely reason?

A.The instance does not have an IAM role that allows sending metrics to CloudWatch.
B.The instance's security group is blocking outbound traffic to CloudWatch endpoints.
C.The instance is in the wrong AWS region for CloudWatch.
D.The CloudWatch agent is not installed or running on the instance.
AnswerD

The monitoring state is 'disabled', indicating detailed monitoring is off, but even with basic monitoring, the CloudWatch agent is needed for system-level metrics.

Why this answer

The exhibit shows an EC2 instance that is running and has internet connectivity, but metrics are not being sent to CloudWatch. For custom metrics (such as memory or disk utilization) to be published, the CloudWatch agent must be installed and running on the instance. Without the agent, the instance cannot collect and send operating-system-level metrics, even if network connectivity and IAM permissions are correctly configured.

Exam trap

The trap here is that candidates often assume missing IAM permissions or network restrictions are the root cause, overlooking that the CloudWatch agent must be explicitly installed and running to publish custom metrics beyond the default EC2 metrics.

How to eliminate wrong answers

Option A is wrong because the question states the instance has internet connectivity, and the default EC2 instance metadata service can provide temporary credentials if an IAM role is attached; however, even without a role, the instance could still send metrics if it uses access keys configured in the agent. The core issue is the absence of the agent, not the IAM role. Option B is wrong because the instance has internet connectivity, which implies outbound traffic is not blocked; CloudWatch endpoints are reachable via HTTPS (port 443), and if the security group allowed general internet access, it would not block CloudWatch specifically.

Option C is wrong because CloudWatch is a regional service, and the instance's region is irrelevant as long as the agent is configured to send metrics to the correct CloudWatch endpoint in that region; the instance being in the 'wrong' region would not prevent metric transmission if the agent is running.

87
Multi-Selectmedium

A company is designing a new solution to store and analyze log files from multiple sources. The solution must provide near real-time analytics and the ability to query the logs using SQL. Which TWO AWS services should be used together to meet these requirements? (Choose two.)

Select 2 answers
A.Amazon CloudWatch Logs
B.Amazon Athena
C.Amazon ElastiCache
D.Amazon Redshift
E.Amazon Kinesis Data Firehose
AnswersB, E

Athena can query data in S3 using standard SQL.

Why this answer

Amazon Kinesis Data Firehose can ingest log data in near real-time and load it into Amazon S3. Amazon Athena can then query the data in S3 using SQL. Option A (CloudWatch Logs) is for monitoring, not ad-hoc analytics.

Option C (ElastiCache) is a cache, not for analytics. Option D (Redshift) is a data warehouse, not designed for near real-time log analysis with Athena-like querying.

88
MCQmedium

A company is designing a microservices architecture on AWS ECS with Fargate. Each service needs to store and retrieve session state. The solution must be highly available and low latency. Which AWS service should be used for session state storage?

A.Amazon ElastiCache for Redis
B.Amazon RDS for MySQL
C.Amazon S3
D.Amazon DynamoDB
AnswerA

ElastiCache for Redis is an in-memory cache with sub-millisecond latency, ideal for session state.

Why this answer

Amazon ElastiCache for Redis is the correct choice because it provides an in-memory data store with sub-millisecond latency, ideal for session state storage in a microservices architecture. Redis supports data structures like hashes and strings that map directly to session data patterns, and its replication and cluster modes ensure high availability across multiple Availability Zones. Fargate tasks can connect to ElastiCache via private subnets, maintaining low latency without the overhead of disk-based I/O.

Exam trap

The trap here is that candidates often choose DynamoDB because it is a managed, highly available database with low latency, but they overlook that session state is ephemeral and best served by an in-memory cache like Redis, which offers lower latency, automatic TTL expiration, and lower cost for transient data patterns.

How to eliminate wrong answers

Option B (Amazon RDS for MySQL) is wrong because relational databases introduce unnecessary latency and overhead for session state, which is ephemeral and requires fast reads/writes; RDS is optimized for persistent, ACID-compliant transactional data, not high-throughput key-value access. Option C (Amazon S3) is wrong because S3 is an object store with eventual consistency (unless using S3 Select or additional features) and higher latency (tens to hundreds of milliseconds), making it unsuitable for real-time session retrieval. Option D (Amazon DynamoDB) is wrong because while DynamoDB offers single-digit millisecond latency and is highly available, it is a NoSQL database with disk-based storage and higher per-request cost compared to an in-memory cache like Redis; for session state, which is transient and benefits from TTL-based expiration, Redis's in-memory model is more cost-effective and performant.

89
MCQeasy

A company wants to design a serverless event-driven architecture where multiple downstream services need to process events from a single source. Events must be reliably delivered and each downstream service must process every event independently. Which AWS service should be used as the event router?

A.AWS Step Functions
B.Amazon Kinesis Data Streams
C.Amazon Simple Queue Service (SQS)
D.Amazon EventBridge
AnswerD

Amazon EventBridge allows you to create rules that send events to multiple targets (e.g., Lambda, SQS, SNS, Step Functions) simultaneously, enabling independent processing.

Why this answer

Amazon EventBridge is the correct choice because it provides a fully managed event bus that can receive events from a single source and fan out to multiple downstream targets (e.g., Lambda, SQS, Step Functions) with built-in filtering, transformation, and reliable delivery. Each downstream service subscribes independently via rules, ensuring every event is processed by all subscribers without the need for a polling mechanism or manual orchestration.

Exam trap

The trap here is that candidates often confuse Amazon SQS or Kinesis as a fan-out solution, but SQS is point-to-point and Kinesis requires custom consumer logic, whereas EventBridge natively supports independent, reliable event routing to multiple targets without additional infrastructure.

How to eliminate wrong answers

Option A is wrong because AWS Step Functions is a workflow orchestration service, not an event router; it would require custom logic to fan out events and does not natively support independent, reliable delivery to multiple downstream services. Option B is wrong because Amazon Kinesis Data Streams is designed for real-time streaming data ingestion and processing with shard-level ordering, but it does not natively fan out events to multiple independent consumers—each consumer must share the same stream and manage its own checkpointing, which can lead to contention and does not guarantee independent processing of every event. Option C is wrong because Amazon SQS is a message queue that delivers each message to a single consumer; to fan out to multiple downstream services, you would need multiple queues and a publisher to send copies, which adds complexity and does not provide built-in event filtering or transformation.

90
MCQmedium

A company is building a data lake on Amazon S3 using Parquet files. The data will be queried by multiple teams using Amazon Athena. The security team requires that access to sensitive columns (e.g., PII) be restricted based on the user's role. Which solution provides column-level access control with the LEAST administrative overhead?

A.Use AWS Lake Formation to define column-level permissions in the Data Catalog.
B.Create separate S3 buckets for sensitive and non-sensitive data and apply bucket policies to restrict access.
C.Load the data into Amazon Redshift and use Redshift Spectrum to query S3, then apply column-level security through Redshift.
D.Use IAM policies with condition keys to restrict access based on the Athena workgroup.
AnswerA

Lake Formation integrates with Athena and allows fine-grained column-level access control with minimal effort.

Why this answer

AWS Lake Formation provides native column-level filtering in the Data Catalog, allowing you to define granular permissions on specific columns of a table without moving or duplicating data. When Athena queries a table registered with Lake Formation, the service automatically applies column-level access controls based on the IAM role or user, enforcing the restriction at query runtime with minimal administrative overhead.

Exam trap

The trap here is that candidates often assume S3 bucket policies or IAM conditions can achieve column-level access, but these operate at the object or API level and cannot filter columns within a single file, which is a key distinction tested in the SAP-C02 exam.

How to eliminate wrong answers

Option B is wrong because S3 bucket policies operate at the object or prefix level, not at the column level, so they cannot restrict access to specific columns within a Parquet file. Option C is wrong because it introduces unnecessary complexity and administrative overhead by requiring a separate Redshift cluster and Redshift Spectrum setup, whereas Lake Formation directly integrates with Athena and the Glue Data Catalog. Option D is wrong because IAM condition keys for Athena workgroups can limit which workgroup a user can use, but they cannot enforce column-level restrictions on the query results.

91
MCQeasy

A company is designing a new application that requires secure storage of secrets such as database passwords and API keys. The application runs on Amazon EC2 instances. The company wants to centralize secret management and automatically rotate secrets. Which AWS service should be used?

A.AWS Key Management Service (KMS)
B.AWS CloudHSM
C.AWS Systems Manager Parameter Store
D.AWS Secrets Manager
AnswerD

Secrets Manager provides secret storage with automatic rotation.

Why this answer

AWS Secrets Manager is designed for storing and rotating secrets centrally. Option A: AWS KMS is for encryption keys, not secret storage. Option B: AWS CloudHSM provides hardware security modules for key storage, not secret management with rotation.

Option C: AWS Systems Manager Parameter Store can store secrets but does not natively rotate them; rotation requires custom solutions.

92
MCQeasy

A company is designing a new application that will run on AWS. The application needs to store and retrieve user session data with low latency. The session data is small (less than 1 KB per user) and must be highly available. The company expects up to 10 million active users per day. Which AWS service should be used as the session store?

A.Amazon DynamoDB
B.Amazon S3
C.Amazon RDS for MySQL
D.Amazon ElastiCache for Redis
AnswerD

Amazon ElastiCache for Redis is an in-memory key-value store that provides sub-millisecond latency, making it the best choice for storing user session data for up to 10 million active users.

Why this answer

Amazon ElastiCache for Redis is an in-memory data store designed for low-latency access, making it ideal for session storage for millions of users. Option A: DynamoDB has higher latency compared to in-memory stores. Option B: S3 is object storage and not suitable for low-latency session data.

Option C: RDS for MySQL is relational and slower for session access.

93
MCQeasy

A company is designing a new static website hosted on Amazon S3. The website must be served over HTTPS with a custom domain name. Which AWS service should be used to achieve this?

A.Amazon Route 53 with alias record
B.Amazon CloudFront with SSL certificate
C.Amazon S3 static website hosting with bucket policy
D.Elastic Load Balancer with SSL termination
AnswerB

CloudFront can be configured with a custom SSL certificate and domain to serve HTTPS.

Why this answer

Amazon CloudFront can be configured to serve content from an S3 bucket as the origin, and it supports custom SSL certificates via AWS Certificate Manager (ACM) or IAM, enabling HTTPS for a custom domain. This is the recommended architecture for static websites requiring HTTPS because CloudFront provides edge caching, DDoS protection, and seamless SSL termination.

Exam trap

The trap here is that candidates often assume S3 static website hosting can directly serve HTTPS with a custom domain, but S3's built-in website endpoint does not support custom SSL certificates, making CloudFront the required service for HTTPS termination with a custom domain.

How to eliminate wrong answers

Option A is wrong because Amazon Route 53 with an alias record only provides DNS resolution, not HTTPS termination; it cannot serve content over HTTPS directly. Option C is wrong because Amazon S3 static website hosting does not support custom SSL certificates or HTTPS for custom domains; it only provides HTTPS via the S3 website endpoint (which uses a domain like s3-website-<region>.amazonaws.com) and cannot bind a custom SSL certificate. Option D is wrong because an Elastic Load Balancer with SSL termination is designed for dynamic content behind EC2 or containers, not for static S3-hosted websites, and it adds unnecessary complexity and cost without leveraging S3's native static hosting benefits.

94
MCQmedium

A company is building a new data lake on AWS to store and analyze petabytes of data from various sources. The data includes structured (CSV, Parquet), semi-structured (JSON), and unstructured (images, videos) files. The company needs a cost-effective storage solution that allows running SQL queries directly on the data without loading it into a database. Data is accessed infrequently but must be available within minutes. Which solution should a Solutions Architect recommend?

A.Store data in Amazon S3 Glacier Deep Archive for cost savings, and use Athena for queries.
B.Store data in Amazon Redshift, use Redshift Spectrum to query data in S3.
C.Store data in Amazon S3 using lifecycle policies to transition infrequent data to S3 Standard-IA. Use Amazon Athena for SQL queries.
D.Store data in Amazon EBS volumes attached to an EC2 instance running a SQL engine.
AnswerC

S3 is cost-effective object storage; Athena is serverless and queries data directly in S3.

Why this answer

Amazon S3 is the ideal storage for a data lake, supporting structured, semi-structured, and unstructured data. Lifecycle policies can transition infrequent data to S3 Standard-IA to reduce costs while maintaining low latency retrieval. Amazon Athena enables serverless SQL queries directly on data stored in S3 without requiring loading into a database.

Option A is incorrect because S3 Glacier Deep Archive is for long-term archival with retrieval times of hours, not minutes, making it unsuitable for queries that require availability within minutes. Option B is incorrect because Amazon Redshift is a data warehouse that requires data to be loaded into it; Redshift Spectrum can query S3, but the primary storage is not designed for a data lake scenario where data is queried directly. Option D is incorrect because Amazon EBS is block storage attached to a single EC2 instance, which does not provide the scalability or cost-effectiveness for petabytes of data in a data lake.

95
MCQeasy

A company is building a new web application that will be accessed by users globally. They want to minimize latency and protect against DDoS attacks. Which AWS service should they use as the entry point?

A.Elastic Load Balancing
B.AWS Global Accelerator
C.Amazon CloudFront
D.Amazon Route 53
AnswerC

CloudFront provides edge caching, low latency, and integrated DDoS protection.

Why this answer

Amazon CloudFront is correct because it is a global content delivery network (CDN) that caches content at edge locations close to users, reducing latency for static and dynamic content. It also provides built-in DDoS protection through AWS Shield Standard and can integrate with AWS WAF for additional layer 7 filtering, making it the ideal entry point for a globally accessed web application requiring both low latency and DDoS mitigation.

Exam trap

The trap here is that candidates often confuse AWS Global Accelerator with CloudFront because both improve latency globally, but Global Accelerator does not cache content or provide application-layer DDoS protection, making it unsuitable as the primary entry point for a web application requiring both features.

How to eliminate wrong answers

Option A is wrong because Elastic Load Balancing distributes traffic only within a single AWS Region and does not provide global edge caching or native DDoS protection at the application layer; it relies on other services for global latency reduction. Option B is wrong because AWS Global Accelerator improves latency by routing traffic over the AWS global network to the optimal regional endpoint, but it does not cache content or provide application-layer DDoS protection; it focuses on TCP/UDP traffic optimization and uses static anycast IPs. Option D is wrong because Amazon Route 53 is a DNS service that resolves domain names to IP addresses and can perform health checks and routing policies, but it does not cache content or provide DDoS mitigation beyond basic DNS-level protection; it is not an entry point for application traffic.

96
MCQhard

A company is migrating a legacy on-premises application to AWS. The application uses a monolithic architecture and a MySQL database. The company wants to refactor the application into microservices and use a NoSQL database for better scalability. The new application will be deployed on Amazon EKS. The database must be highly available and support automatic scaling. Which database service should the company use?

A.Amazon Aurora Serverless
B.Amazon DynamoDB
C.Amazon DocumentDB (with MongoDB compatibility)
D.Amazon RDS for MySQL with Multi-AZ deployment
AnswerB

DynamoDB is a fully managed NoSQL database with high availability and auto scaling.

Why this answer

Amazon DynamoDB is a NoSQL database that supports high availability and automatic scaling. Option A: Amazon Aurora Serverless is a relational database, not NoSQL. Option C: Amazon DocumentDB (with MongoDB compatibility) is a NoSQL database but is MongoDB-compatible; DynamoDB is more fully managed and serverless and better suited for microservices on EKS.

Option D: Amazon RDS for MySQL with Multi-AZ deployment is relational and not NoSQL.

97
Multi-Selectmedium

A company is designing a new application that will run on Amazon EC2 instances. The application needs to access an Amazon S3 bucket to read and write objects. The company wants to ensure that the EC2 instances can access the S3 bucket without storing AWS credentials on the instances. Which TWO steps should the company take?

Select 2 answers
A.Attach the IAM role to the EC2 instance profile.
B.Store the AWS access key and secret access key in a configuration file on the instance.
C.Create an S3 bucket policy that allows access from the EC2 instance's IP address.
D.Configure the EC2 security group to allow outbound traffic to S3.
E.Create an IAM role with a policy that grants the required S3 permissions.
AnswersA, E

Attaching the role to the instance profile allows the instance to assume the role.

Why this answer

An IAM role can be attached to an EC2 instance via an instance profile, allowing the instance to obtain temporary credentials from the AWS Security Token Service (STS) without storing any long-term credentials on the instance. This is the recommended secure method for granting EC2 instances access to AWS services like S3.

Exam trap

The trap here is that candidates often confuse network-level controls (security group outbound rules) with authentication/authorization mechanisms, thinking that allowing outbound traffic to S3 is sufficient to grant access, when in fact the instance still needs valid IAM credentials to authenticate requests to S3.

98
MCQmedium

A media company is designing a video transcoding pipeline. They receive raw video files in Amazon S3, which need to be transcoded into multiple formats. The pipeline must handle sporadic bursts of uploads and complete processing within 30 minutes for each video. The cost should be minimized. Which design should they use?

A.Use AWS Lambda with layers containing FFmpeg to transcode videos.
B.Use Amazon S3 event notifications to trigger an AWS Elemental MediaConvert job.
C.Provision a cluster of EC2 instances running FFmpeg, with Auto Scaling based on SQS queue depth.
D.Use Amazon Elastic Transcoder, which is fully managed and triggers from S3 events.
AnswerB

MediaConvert is serverless, scales automatically, and is cost-effective for sporadic jobs.

Why this answer

AWS Elemental MediaConvert is a fully managed, serverless video transcoding service designed for high-volume, bursty workloads. It integrates directly with S3 event notifications, scales automatically to handle sporadic uploads, and completes each job within the required 30-minute window. Its pay-per-use pricing minimizes cost by eliminating idle infrastructure, unlike provisioned EC2 clusters or Lambda's 15-minute execution limit.

Exam trap

The trap here is that candidates often assume Lambda can handle any short-lived compute task, but they overlook the 15-minute timeout and lack of GPU support for video encoding, making it unsuitable for transcoding jobs that require longer processing times or specialized hardware acceleration.

How to eliminate wrong answers

Option A is wrong because AWS Lambda has a maximum execution timeout of 15 minutes, which cannot accommodate transcoding jobs that may exceed this limit, especially for high-resolution or long-duration videos. Option C is wrong because provisioning a cluster of EC2 instances with Auto Scaling based on SQS queue depth incurs significant idle costs during low-activity periods and requires ongoing operational overhead for patching and scaling, making it less cost-effective than a fully managed service. Option D is wrong because Amazon Elastic Transcoder is a legacy service that is being phased out in favor of Elemental MediaConvert; it lacks advanced features like per-title encoding, Dolby Vision, and HDR10+ support, and its pricing model is generally less flexible for sporadic workloads.

99
MCQmedium

A company is designing a new microservices application using Amazon ECS with Fargate. The services need to communicate securely within the VPC. Which approach should be used for service discovery?

A.Amazon Route 53 private hosted zones with health checks
B.AWS Cloud Map
C.VPC peering connections between services
D.Application Load Balancer with path-based routing
AnswerB

Managed service discovery for microservices.

Why this answer

AWS Cloud Map is the correct choice because it provides a fully managed service discovery solution that integrates natively with Amazon ECS and Fargate. It allows microservices to register themselves with DNS-based or API-based service endpoints, enabling dynamic, secure communication within the VPC without requiring manual IP management or external DNS configuration.

Exam trap

The trap here is that candidates often confuse DNS-based resolution (Route 53 private hosted zones) with dynamic service discovery (AWS Cloud Map), assuming that static DNS records with health checks are sufficient for microservices that scale and change IPs frequently.

How to eliminate wrong answers

Option A is wrong because Route 53 private hosted zones with health checks are designed for DNS resolution and health monitoring of static resources, not for dynamic service discovery where service endpoints change frequently due to scaling or restarts. Option C is wrong because VPC peering connects entire VPCs, not individual services, and does not provide service discovery; it is a network connectivity mechanism, not a discovery mechanism. Option D is wrong because an Application Load Balancer with path-based routing is used for traffic distribution and routing to backend targets, not for service discovery; it does not provide a registry or DNS-based resolution for individual service instances.

100
MCQhard

A company is migrating a legacy monolithic application to a microservices architecture on AWS. They want to use an event-driven design where services react to state changes. Which AWS service should they use to capture, store, and replay events?

A.Amazon SNS
B.Amazon Kinesis Data Streams
C.Amazon EventBridge
D.Amazon SQS
AnswerC

EventBridge supports event archiving and replay.

Why this answer

(Amazon EventBridge) is correct because it is a serverless event bus that can capture events from various sources, store them, and allow replay, making it ideal for event-driven microservices. Amazon EventBridge supports event archival and replay, enabling services to react to state changes. In contrast, Option A (Amazon SNS) is a pub/sub messaging service that does not store events for replay.

Option B (Amazon Kinesis Data Streams) can replay data but is designed for real-time streaming data ingestion, not event sourcing in microservices. Option D (Amazon SQS) is a queue service for message decoupling and lacks event replay capability.

101
MCQeasy

A startup is building a web application on AWS that requires a relational database. They expect unpredictable traffic patterns and want to minimize costs while ensuring high availability. Which database solution should they choose?

A.Amazon Redshift with concurrency scaling
B.Amazon Aurora Serverless (MySQL-compatible)
C.Amazon RDS for MySQL with Single-AZ deployment
D.Amazon DynamoDB with on-demand capacity
AnswerB

Aurora Serverless provides auto-scaling and high availability, cost-effective for unpredictable traffic.

Why this answer

Amazon Aurora Serverless (MySQL-compatible) is the correct choice because it automatically scales compute capacity based on actual application demand, making it ideal for unpredictable traffic patterns. It provides high availability through multi-AZ storage and automated failover, while minimizing costs by only charging for consumed capacity during active periods.

Exam trap

The trap here is that candidates often confuse 'relational database' with 'NoSQL' (DynamoDB) or choose a cheaper but non-HA option (Single-AZ RDS), overlooking that Aurora Serverless uniquely combines relational capabilities, automatic scaling, and built-in high availability at a cost-effective pay-per-request model.

How to eliminate wrong answers

Option A is wrong because Amazon Redshift is a data warehouse optimized for analytical queries on large datasets, not a transactional relational database for a web application, and concurrency scaling adds cost without addressing unpredictable traffic for OLTP workloads. Option C is wrong because Amazon RDS for MySQL with Single-AZ deployment lacks high availability—it does not provide automatic failover to a standby instance in another Availability Zone, which is required for the stated goal. Option D is wrong because Amazon DynamoDB is a NoSQL key-value and document database, not a relational database, and while on-demand capacity handles unpredictable traffic, it does not support SQL queries or relational data models needed for a web application with a relational database requirement.

102
MCQhard

A company is designing a new data lake on AWS. The data lake must support SQL queries using Amazon Athena and also allow Amazon SageMaker to access training data. The solution must minimize storage costs for infrequently accessed data while providing immediate access when needed. Which storage tier should be used for the data lake?

A.Amazon S3 Glacier Deep Archive
B.Amazon S3 Intelligent-Tiering
C.Amazon S3 Standard
D.Amazon S3 One Zone-Infrequent Access
AnswerB

Automatically optimizes cost by moving data between tiers.

Why this answer

Amazon S3 Intelligent-Tiering is the correct choice because it automatically moves data between access tiers (frequent, infrequent, and archive instant access) based on changing access patterns, optimizing storage costs without compromising performance. This meets the requirement for infrequently accessed data to be cost-effective while still providing immediate access for Athena queries and SageMaker training, as data in the archive instant access tier can be retrieved within milliseconds.

Exam trap

The trap here is that candidates might choose S3 Standard for its immediate access or S3 Glacier Deep Archive for lowest cost, overlooking that S3 Intelligent-Tiering provides both cost optimization for infrequent access and immediate retrieval via the Archive Instant Access tier.

How to eliminate wrong answers

Option A is wrong because Amazon S3 Glacier Deep Archive has retrieval times of 12-48 hours, which fails the requirement for immediate access when needed for Athena and SageMaker. Option C is wrong because Amazon S3 Standard is designed for frequently accessed data and would be more expensive for infrequently accessed data, not minimizing storage costs. Option D is wrong because Amazon S3 One Zone-Infrequent Access stores data in a single Availability Zone, which risks data loss if that AZ fails, and it lacks automatic cost optimization for varying access patterns.

103
Multi-Selectmedium

A company is designing a new application that will process sensitive financial data. They need to ensure encryption at rest and in transit. Which of the following should they use? (Select TWO.)

Select 2 answers
A.TLS for all data in transit
B.AWS Certificate Manager (ACM) for all encryption
C.SSL certificates for all connections
D.AWS Key Management Service (KMS) for encryption at rest
E.AWS Identity and Access Management (IAM) for data encryption
AnswersA, D

TLS encrypts data in transit.

Why this answer

TLS (Transport Layer Security) is the industry-standard protocol for encrypting data in transit, ensuring confidentiality and integrity between client and server. AWS services like ELB, CloudFront, and API Gateway enforce TLS for all communications, making it the correct choice for securing data in transit.

Exam trap

The trap here is that candidates confuse SSL/TLS certificates (which are just cryptographic containers) with the actual encryption protocol (TLS), and they mistakenly think ACM or IAM directly perform encryption instead of managing certificates or access.

104
MCQmedium

A company is deploying a new web application that uses Amazon S3 to store static content and Amazon CloudFront for content delivery. The application also uses an API Gateway with Lambda for backend logic. The company wants to protect the API from common web exploits like SQL injection and cross-site scripting. Which AWS service should be added to the architecture?

A.Amazon GuardDuty
B.Amazon Inspector
C.AWS Shield Advanced
D.AWS WAF
AnswerD

WAF can block SQL injection and XSS attacks.

Why this answer

AWS WAF integrates with API Gateway and CloudFront to protect against web exploits like SQL injection and cross-site scripting. Option A: Amazon GuardDuty is for threat detection, not inline protection. Option B: Amazon Inspector is for vulnerability assessment.

Option C: AWS Shield Advanced provides DDoS protection, not application-layer filtering.

105
Multi-Selectmedium

A company is designing a multi-tier web application that must be fault-tolerant and scalable. The application uses an Application Load Balancer (ALB) to distribute traffic to EC2 instances in an Auto Scaling group. The instances run a web server and a backend application. Which TWO steps should be taken to ensure the application can scale without data loss?

Select 2 answers
A.Use instance store volumes for temporary data.
B.Store session state in an external data store such as ElastiCache.
C.Implement lifecycle hooks to gracefully handle instance termination.
D.Use a custom CloudWatch metric to scale based on CPU utilization.
E.Use a fixed number of EC2 instances instead of Auto Scaling.
AnswersB, C

Storing session state externally makes instances stateless, preventing data loss on scale-in.

Why this answer

Storing session state in an external data store like ElastiCache decouples session data from individual EC2 instances. This ensures that if an instance is terminated or replaced during scaling events, the session data persists and can be served by any other instance in the Auto Scaling group, preventing data loss and maintaining user experience.

Exam trap

The trap here is that candidates often confuse instance store with EBS or assume that lifecycle hooks alone (Option C) prevent data loss, but lifecycle hooks only delay termination for cleanup—they do not preserve session data if the instance is ultimately terminated, making an external data store essential.

106
MCQmedium

A company is designing a CI/CD pipeline for a containerized application using AWS CodePipeline. The application is deployed to Amazon ECS with Fargate. The pipeline must automatically build and test code changes before deploying to production. Which service should be used to build and test the Docker images?

A.AWS CodeDeploy
B.AWS CodeBuild
C.Amazon ECR
D.AWS CodeCommit
AnswerB

CodeBuild is a build service that can build Docker images and run tests.

Why this answer

AWS CodeBuild is the correct service because it is a fully managed continuous integration service that compiles source code, runs tests, and produces software packages that are ready to deploy. In this scenario, CodeBuild can build the Docker image from a Dockerfile, run unit or integration tests inside the build environment, and then push the image to Amazon ECR, all within the CI/CD pipeline defined in AWS CodePipeline.

Exam trap

The trap here is that candidates may confuse AWS CodeDeploy's role in ECS deployments with the build and test phase, assuming CodeDeploy handles the entire CI/CD process, when in fact it only handles the deployment step after the image is built and tested by CodeBuild.

How to eliminate wrong answers

Option A is wrong because AWS CodeDeploy is a deployment service that automates code deployments to compute services like ECS, EC2, or Lambda, but it does not build or test Docker images. Option C is wrong because Amazon ECR is a container image registry for storing, managing, and deploying Docker images; it does not perform build or test operations. Option D is wrong because AWS CodeCommit is a source control service for hosting Git repositories; it does not build or test code.

107
MCQhard

A company is designing a multi-region active-active application using Amazon DynamoDB global tables. The application requires strong consistency reads. However, global tables only support eventual consistency. What should the solutions architect do to meet the requirement?

A.Design the application to handle eventual consistency using conditional writes and application logic.
B.Enable strong consistency in the global table configuration.
C.Use DynamoDB Streams to replicate data to another region with strong consistency.
D.Use DynamoDB Accelerator (DAX) to provide strong consistency reads.
AnswerA

Application can manage consistency.

Why this answer

DynamoDB global tables inherently replicate data asynchronously across regions, which means they only support eventual consistency. To meet strong consistency requirements in an active-active multi-region setup, the application must be designed to handle eventual consistency by using conditional writes and application logic to manage conflicts and ensure data integrity. This approach acknowledges the technical limitation of global tables while still achieving the desired consistency level through careful application design.

Exam trap

The trap here is that candidates often assume DynamoDB global tables can be configured for strong consistency reads, but the service explicitly only supports eventual consistency across regions, making application-level handling the only viable solution.

How to eliminate wrong answers

Option B is wrong because DynamoDB global tables do not support strong consistency reads; the global tables feature is designed for eventual consistency only, and enabling strong consistency in the configuration is not possible. Option C is wrong because DynamoDB Streams provide an ordered stream of item-level changes but do not offer strong consistency reads across regions; they can be used for cross-region replication but still result in eventual consistency due to asynchronous processing. Option D is wrong because DynamoDB Accelerator (DAX) is an in-memory cache that can provide strongly consistent reads for a single-region DynamoDB table, but it does not extend strong consistency to global tables or across multiple regions.

108
MCQhard

Refer to the exhibit. A solutions architect has attached this key policy to an AWS KMS key. The IAM role MyAppRole is used by an application running on an EC2 instance in us-east-1. The application tries to decrypt an object stored in the S3 bucket my-bucket using server-side encryption with AWS KMS (SSE-KMS). What will happen?

A.The decryption fails because the key policy does not grant decrypt to the role.
B.The decryption succeeds because the role has permissions via this key policy.
C.The decryption fails if the application calls KMS Decrypt directly instead of letting S3 decrypt.
D.The decryption succeeds only if the object was uploaded with the correct encryption context.
AnswerC

The condition kms:ViaService requires the request to come from S3, not direct SDK call.

Why this answer

The key policy includes a condition that limits the `kms:Decrypt` permission to only be allowed when the request comes from Amazon S3 (using `kms:ViaService`). When the application calls KMS Decrypt directly, the request does not come from S3, so the condition is not satisfied, and the decryption fails. The IAM role MyAppRole does not have an IAM policy granting `kms:Decrypt`, and the key policy does not grant it directly to the role.

Options A, B, and D are incorrect because the decryption fails only when calling KMS directly, not because of the role's permissions or encryption context.

Exam trap

The trap is that candidates may assume the key policy's kms:Decrypt permission granted to the root account with a condition automatically allows any IAM role to call KMS Decrypt directly. In reality, the condition restricts the permission to requests made via S3 (kms:ViaService), so direct KMS calls are denied unless the role has an explicit IAM policy granting kms:Decrypt or is listed as a principal in the key policy without the restrictive condition.

How to eliminate wrong answers

Option A is wrong because the key policy does grant `kms:Decrypt` to the root account (AWS account root user), and the IAM role MyAppRole inherits permissions from the root account via IAM policies, so decryption via S3 would succeed. Option B is wrong because the key policy does not directly grant `kms:Decrypt` to MyAppRole; it only grants it to the root account with a condition on encryption context, and the role's permissions depend on IAM policies, not the key policy alone. Option D is wrong because the encryption context condition in the key policy only applies to the root account's decrypt permission; if the application calls KMS Decrypt directly, the encryption context must match, but the fundamental issue is the lack of explicit permission for the role, not just the context.

109
MCQmedium

A company is designing a new microservices application on AWS. Each microservice needs to store and retrieve stateful data with low latency (single-digit milliseconds). The data must be durable and highly available across multiple Availability Zones. Which AWS service should be used for the primary data store for each microservice?

A.Amazon DynamoDB
B.Amazon S3
C.Amazon RDS with Multi-AZ
D.Amazon ElastiCache for Redis
AnswerA

Amazon DynamoDB is a NoSQL database that delivers single-digit millisecond latency, is fully managed, and replicates data across multiple AZs automatically. It is ideal for stateful microservices.

Why this answer

Amazon DynamoDB is a fully managed NoSQL key-value and document database that delivers single-digit millisecond latency at any scale. It is designed for high availability and durability by automatically replicating data across three Availability Zones in an AWS Region, meeting the requirements for stateful microservices data storage.

Exam trap

The SAP-C02 exam often tests the distinction between a durable primary data store and a cache or object store, where candidates mistakenly choose ElastiCache for its low latency without considering durability, or S3 for its high availability without recognizing its higher latency profile.

How to eliminate wrong answers

Option B is wrong because Amazon S3 is an object storage service designed for high throughput and large data volumes, not for low-latency single-digit millisecond access typical of microservices stateful data; its read/write latency is higher and it lacks native support for fine-grained updates. Option C is wrong because Amazon RDS with Multi-AZ provides high availability through synchronous replication to a standby instance, but it is a relational database that introduces overhead from SQL parsing and connection management, making it less suitable for the sub-10ms latency requirements of microservices compared to DynamoDB. Option D is wrong because Amazon ElastiCache for Redis is an in-memory cache, not a durable primary data store; while it offers low latency, its data is not durable by default (unless using Redis AOF with persistence, which still risks data loss on failure) and it is not designed for long-term stateful storage with the same durability guarantees as DynamoDB.

110
MCQhard

A company wants to design a highly available, stateless web application using Amazon ECS with Fargate. They need to distribute traffic across multiple AWS Regions for low latency. Which approach should they use?

A.Use a single Network Load Balancer in the primary region with cross-zone load balancing.
B.Use Amazon Route 53 latency-based routing to direct traffic to an Application Load Balancer in each region.
C.Use Amazon CloudFront with origins in each region.
D.Use AWS Global Accelerator with Network Load Balancers in each region.
AnswerB

Latency routing and ALB are appropriate for stateless web apps.

Why this answer

Amazon Route 53 latency-based routing directs users to the region with the lowest latency, and using an Application Load Balancer (ALB) in each region provides regional traffic distribution and health checks for the stateless ECS Fargate tasks. This combination ensures high availability and low latency across multiple AWS Regions, as the ALB handles HTTP/HTTPS traffic and integrates with ECS service discovery.

Exam trap

The trap here is that candidates often confuse AWS Global Accelerator with Route 53 latency-based routing, assuming Global Accelerator is always better for multi-region latency, but the question specifically asks for a stateless web application using ECS Fargate, where an ALB is the natural fit and Route 53 latency-based routing provides the simplest and most cost-effective solution for HTTP/HTTPS traffic distribution across regions.

How to eliminate wrong answers

Option A is wrong because a single Network Load Balancer (NLB) in one primary region cannot distribute traffic across multiple AWS Regions; cross-zone load balancing only distributes traffic within a single region's Availability Zones, not across regions. Option C is wrong because Amazon CloudFront with origins in each region is a content delivery network (CDN) optimized for caching static content, not for routing dynamic, stateless web application traffic with low latency across regions; it adds unnecessary caching complexity and does not provide regional load balancing for dynamic requests. Option D is wrong because AWS Global Accelerator uses Anycast IPs to route traffic to the nearest regional endpoint, but it requires Network Load Balancers or Elastic IPs as endpoints, not Application Load Balancers, and while it improves latency, it does not natively support latency-based routing to multiple regions as precisely as Route 53 latency-based routing; additionally, Global Accelerator is better suited for TCP/UDP traffic and non-HTTP protocols, whereas the question specifies a stateless web application (HTTP/HTTPS) where ALB is more appropriate.

111
MCQeasy

A company needs to design a new solution for storing and retrieving user-uploaded images. The images are accessed frequently for the first 30 days and then rarely accessed after that. The company wants to minimize storage costs while maintaining low-latency access for frequently accessed images. Which storage strategy should be used?

A.Store images in Amazon EBS volumes attached to a web server.
B.Store images in Amazon S3 Standard and use lifecycle policies to transition to S3 Standard-IA after 30 days.
C.Store all images in Amazon S3 Glacier Flexible Retrieval.
D.Store all images in Amazon S3 Standard.
AnswerB

Lifecycle policies automate cost optimization while keeping low-latency access during frequent access period.

Why this answer

Amazon S3 Standard provides low-latency access for frequently accessed images, and S3 lifecycle policies allow automatic transition to S3 Standard-Infrequent Access (Standard-IA) after 30 days, reducing storage costs while maintaining rapid access for the initial period. This strategy directly meets the requirement of minimizing costs without sacrificing performance for the first 30 days.

Exam trap

The trap here is that candidates may choose Option D (all S3 Standard) because it guarantees low-latency access, overlooking the cost savings of transitioning to Standard-IA for data that becomes rarely accessed after 30 days.

How to eliminate wrong answers

Option A is wrong because Amazon EBS volumes are block-level storage attached to a single EC2 instance, not designed for storing and retrieving user-uploaded images at scale, and they incur costs even when not accessed, lacking lifecycle management for infrequent access. Option C is wrong because Amazon S3 Glacier Flexible Retrieval has retrieval times of minutes to hours, which does not provide low-latency access for frequently accessed images during the first 30 days. Option D is wrong because storing all images in Amazon S3 Standard incurs higher storage costs for data that becomes rarely accessed after 30 days, failing to minimize storage costs as required.

112
MCQeasy

A startup is building a serverless application using AWS Lambda for business logic and Amazon DynamoDB for data storage. The application must process a high volume of writes to a single DynamoDB table. The development team is concerned about throttling due to hot partitions. Which design should the team implement to avoid throttling?

A.Enable DynamoDB Accelerator (DAX) to cache write operations.
B.Use a composite primary key with a partition key that has high cardinality, such as a user ID.
C.Use a global secondary index (GSI) as the primary index for writes.
D.Add a local secondary index (LSI) to the table.
AnswerB

High cardinality partition keys distribute writes evenly across partitions.

Why this answer

Using a partition key with high cardinality, such as a user ID, ensures that write requests are evenly distributed across all partitions in the DynamoDB table. This prevents any single partition from becoming a hot partition, which would otherwise lead to throttling when the partition's throughput capacity is exceeded. DynamoDB scales by splitting partitions based on the partition key's hash, so high cardinality is essential for avoiding throttling under high write volumes.

Exam trap

The trap here is that candidates often confuse caching (DAX) as a solution for write performance, not realizing DAX only accelerates reads, or they mistakenly believe that secondary indexes (GSI/LSI) can redistribute write load, when in fact they share the base table's partition key and do not solve hot partition issues.

How to eliminate wrong answers

Option A is wrong because DynamoDB Accelerator (DAX) is an in-memory cache for read operations only; it does not cache or accelerate write operations, so it cannot prevent write throttling. Option C is wrong because a global secondary index (GSI) is a secondary index that supports read and write operations, but it does not replace the primary index for writes; writes are still directed to the base table's partition key, and using a GSI as the primary index is not a valid design—GSIs have their own throughput and can also experience throttling if not properly provisioned. Option D is wrong because a local secondary index (LSI) shares the same partition key as the base table and does not improve write distribution; it only provides an alternative sort key for querying within a partition, so it does not address hot partition issues.

113
MCQmedium

A company is migrating a monolithic application to microservices on Amazon ECS with Fargate. The application currently uses a central MySQL database. The architects plan to refactor the database into separate RDS instances per microservice. Which strategy will ensure data consistency across services with minimal application changes?

A.Enable the STRICT_TRANS_TABLES SQL mode on all RDS instances to enforce data integrity.
B.Implement a saga pattern using choreography, where each service publishes events and reacts to events from other services.
C.Configure RDS read replicas for each service to ensure eventually consistent reads.
D.Use distributed transactions with a two-phase commit protocol across RDS instances.
AnswerB

The saga pattern with choreography maintains data consistency across microservices without tight coupling, and can be implemented with minimal changes using event-driven communication.

Why this answer

The saga pattern with choreography allows each microservice to maintain its own RDS instance while ensuring data consistency through a sequence of local transactions and compensating events. This approach avoids the need for distributed transactions across separate databases, which aligns with the goal of minimal application changes by leveraging existing event-driven communication patterns in ECS with Fargate.

Exam trap

The trap here is that candidates often confuse eventual consistency with read replicas (Option C) or assume that traditional ACID transactions can be extended across separate databases (Option D), but the saga pattern is the correct distributed consistency approach for microservices with separate databases.

How to eliminate wrong answers

Option A is wrong because enabling STRICT_TRANS_TABLES SQL mode only enforces data type and constraint validation within a single RDS instance, not across multiple databases, and does not address cross-service consistency. Option C is wrong because RDS read replicas provide eventually consistent reads for a single database, not consistency across separate RDS instances per microservice, and they do not handle write conflicts or distributed transactions. Option D is wrong because two-phase commit (2PC) across RDS instances introduces tight coupling, performance overhead, and scalability issues, and is not recommended for microservices architectures due to its blocking nature and lack of support across separate RDS endpoints.

114
MCQmedium

A financial services company is designing a new application that processes sensitive transactions. The application runs on Amazon ECS with Fargate. The compliance team requires that all data in transit between the application and the database must be encrypted. The database is an Amazon RDS for PostgreSQL instance. The application connects to the database using a connection string that includes the database endpoint. The security team has enabled encryption in transit on the RDS instance using a certificate. The application is currently failing to connect to the database with an error related to SSL/TLS. The development team verified that the connection string includes the sslmode=require parameter. What is the most likely cause of the connection failure?

A.The RDS instance is using a public certificate that is not trusted by the application.
B.The security group for the RDS instance does not allow inbound traffic on port 443.
C.The Fargate task does not have the necessary SSL libraries installed.
D.The RDS DB parameter group does not have the 'rds.force_ssl' parameter set to 1.
AnswerD

The rds.force_ssl parameter must be set to enforce SSL connections.

Why this answer

The most likely cause is that the RDS DB parameter group does not have the 'rds.force_ssl' parameter set to 1. Even though the application uses sslmode=require in the connection string, the RDS instance must enforce SSL connections by setting this parameter. Without it, the RDS instance may not require SSL, leading to a connection failure when the client attempts to negotiate SSL.

Option A is incorrect because RDS uses certificates signed by a trusted CA; the issue is not about trust. Option B is incorrect because the database port is 5432, not 443. Option C is incorrect because Fargate containers include necessary SSL libraries by default.

115
Multi-Selecteasy

A company is designing a new static website hosted on Amazon S3. They want to use Amazon CloudFront as a content delivery network (CDN) to serve the website globally with low latency. The website content must be encrypted in transit. Which configurations should they use? (Choose TWO.)

Select 2 answers
A.Enable default encryption on the S3 bucket using AES-256.
B.Enable S3 Transfer Acceleration on the bucket.
C.Configure the S3 bucket policy to deny requests that do not use HTTPS.
D.Configure CloudFront to require HTTPS for viewer requests.
E.Use CloudFront signed URLs to restrict access.
AnswersC, D

This ensures CloudFront uses HTTPS to fetch objects from S3.

Why this answer

Configuring the S3 bucket policy to deny requests that do not use HTTPS ensures that all traffic to the S3 origin is encrypted in transit, preventing data exposure during transit between CloudFront and S3. Option D is correct because configuring CloudFront to require HTTPS for viewer requests enforces encryption between end users and CloudFront, fulfilling the requirement for encryption in transit for the entire delivery path.

Exam trap

The trap here is that candidates often confuse encryption at rest (S3 default encryption) with encryption in transit, or they assume that CloudFront's default HTTPS support automatically secures the S3 origin connection without needing a bucket policy to enforce it.

116
MCQhard

A company is designing a data processing pipeline for real-time analytics. The pipeline ingests data from IoT devices that send JSON messages via MQTT to AWS IoT Core. The messages must be processed in real-time to detect anomalies and the results must be stored in Amazon S3 for later analysis. The company currently uses a Lambda function to process each message, but as the number of devices grows, the Lambda function is being throttled due to concurrency limits. The company needs a solution that scales to handle thousands of devices per second without losing messages. The processed data must be available in S3 within 1 minute of ingestion. Which architecture should the company use?

A.Send the IoT messages to an Amazon SQS queue and have Lambda poll the queue in batches to reduce the number of concurrent invocations.
B.Store the raw messages in an S3 bucket and use S3 Select to query the data for anomalies periodically.
C.Ingest the messages into Amazon Kinesis Data Streams with multiple shards, and use a Lambda function to process records from the stream. Increase the Lambda concurrency limit.
D.Use AWS IoT Core rules to route messages to Amazon Kinesis Data Firehose, which writes raw data to S3. Then use Amazon Kinesis Data Analytics to read from S3 and perform real-time anomaly detection, writing results back to S3 via Firehose.
AnswerC

This is correct. Kinesis Data Streams can scale to thousands of shards to handle high throughput. Lambda can process records in real-time, and increasing concurrency limits (by requesting a limit increase or using reserved concurrency) addresses the throttling issue. The processed data can be written to S3 via the Lambda function.

Why this answer

The correct architecture is to ingest messages into Amazon Kinesis Data Streams with multiple shards to handle high throughput. Using a Lambda function to process records from the stream allows real-time anomaly detection. To address concurrency limits, the Lambda concurrency limit can be increased by requesting a limit increase from AWS Support, and you can use reserved concurrency to ensure processing capacity.

This solution scales elastically and can meet the 1-minute latency requirement. Option D is incorrect because Kinesis Data Analytics cannot read directly from S3 or from Kinesis Data Firehose; it requires a Kinesis data stream as its source. The architecture in D would not provide real-time processing as it relies on periodic S3 queries.

117
MCQmedium

A company is designing a new microservices architecture on AWS. The company wants to use a service mesh to manage service-to-service communication, observability, and security. Which AWS service should the company use?

A.Amazon API Gateway
B.AWS App Mesh
C.AWS Transit Gateway
D.AWS Cloud Map
AnswerB

App Mesh is a service mesh that provides traffic management, observability, and security.

Why this answer

AWS App Mesh is a service mesh that provides application-level networking to manage service-to-service communication, observability (via metrics, logs, and traces), and security (via mTLS and fine-grained access policies) for microservices. It uses the Envoy proxy as a sidecar to intercept traffic, enabling features like traffic splitting, retries, and circuit breaking without modifying application code.

Exam trap

The trap here is that candidates often confuse a service mesh (App Mesh) with an API gateway (API Gateway), but API Gateway is designed for external-facing API management, not for internal service-to-service traffic control and observability within a microservices mesh.

How to eliminate wrong answers

Option A is wrong because Amazon API Gateway is a fully managed API gateway for creating, publishing, and securing REST/HTTP/WebSocket APIs at the edge, not a service mesh for internal service-to-service communication within a microservices architecture. Option C is wrong because AWS Transit Gateway is a network transit hub that connects VPCs and on-premises networks via a central router, operating at Layer 3, not at the application layer required for service mesh capabilities like traffic splitting and observability. Option D is wrong because AWS Cloud Map is a cloud resource discovery service that allows services to register and discover instances via DNS or API calls, but it does not provide traffic management, observability, or security features inherent to a service mesh.

118
MCQmedium

A company is designing a new serverless application that uses Amazon API Gateway and AWS Lambda. The application must authenticate users using a third-party identity provider (IdP) that supports OpenID Connect (OIDC). The company wants to offload authentication to the API Gateway. Which solution should the architect recommend?

A.Use an API Gateway COGNITO_USER_POOLS authorizer with Cognito configured as an OIDC client to the third-party IdP
B.Use an API Gateway COGNITO_USER_POOLS authorizer
C.Use an API Gateway Lambda authorizer
D.Use an API Gateway IAM authorizer
AnswerA

Cognito can federate with OIDC IdPs, and API Gateway validates the Cognito token.

Why this answer

It uses Amazon Cognito as an OIDC client to the third-party IdP, allowing API Gateway's COGNITO_USER_POOLS authorizer to validate tokens from the IdP without custom code. This offloads authentication entirely to API Gateway, as the authorizer checks the JWT token against the Cognito user pool, which trusts the IdP's OIDC tokens. The architecture meets the requirement of using a third-party IdP while keeping the serverless application simple and managed.

Exam trap

The trap here is that candidates often assume a Lambda authorizer is required for any third-party IdP, missing that Cognito can act as an OIDC client to offload token validation to API Gateway's native authorizer.

How to eliminate wrong answers

Option B is wrong because a COGNITO_USER_POOLS authorizer alone requires users to authenticate directly against a Cognito user pool, not a third-party IdP; it does not support federated OIDC without additional configuration. Option C is wrong because a Lambda authorizer requires custom code to validate the OIDC token, which adds complexity and maintenance overhead, contradicting the goal to offload authentication to API Gateway. Option D is wrong because an IAM authorizer uses AWS Signature Version 4 for signing requests, which is incompatible with OIDC tokens from a third-party IdP; it is designed for AWS IAM-based access control, not federated identity.

119
MCQmedium

A company deployed the above CloudFormation template. An EC2 instance launched in the PrivateSubnet needs to access the internet for software updates. Which action is required?

A.Create a VPC Peering connection to a public VPC
B.Add a NAT Gateway in the PublicSubnet and update the PrivateSubnet's route table to point to the NAT Gateway
C.Add an Internet Gateway to the VPC and route the private subnet's route table to it
D.Modify the PrivateSubnet to assign public IP addresses on launch
AnswerB

NAT Gateway enables outbound internet for private instances.

Why this answer

A NAT Gateway placed in a public subnet with an Internet Gateway attached allows instances in private subnets to initiate outbound traffic to the internet (e.g., for software updates) while preventing inbound connections from the internet. The private subnet's route table must have a default route (0.0.0.0/0) pointing to the NAT Gateway. This is the standard AWS pattern for outbound-only internet access from private subnets.

Exam trap

The trap here is that candidates often confuse a NAT Gateway with an Internet Gateway, thinking that routing a private subnet directly to an Internet Gateway is sufficient, but this would expose instances to inbound traffic and require public IPs, defeating the purpose of a private subnet.

How to eliminate wrong answers

Option A is wrong because VPC Peering does not provide internet access; it only connects two VPCs privately, and neither VPC inherently has internet access without an Internet Gateway. Option C is wrong because routing a private subnet directly to an Internet Gateway would allow inbound internet traffic, violating the security model of a private subnet; Internet Gateways require public IP addresses and are used with public subnets. Option D is wrong because assigning public IP addresses to instances in a private subnet does not grant internet access; the subnet still lacks a route to an Internet Gateway, and public IPs alone cannot reach the internet without a gateway.

120
Multi-Selecthard

A company is designing a new application that will process sensitive data. The application will run on Amazon ECS with Fargate. The security team requires that all data at rest be encrypted, and that encryption keys be managed by the company's own hardware security module (HSM) in an on-premises data center. Which TWO steps should the company take to meet these requirements? (Choose TWO.)

Select 2 answers
A.Configure Amazon EBS encryption using AWS KMS with a customer managed key
B.Enable Amazon S3 default encryption with SSE-C
C.Use AWS CloudHSM to generate and store encryption keys
D.Create an AWS KMS custom key store backed by AWS CloudHSM
E.Store encryption keys in AWS Certificate Manager (ACM)
AnswersC, D

CloudHSM provides dedicated HSM appliances in AWS that can be part of a company's HSM infrastructure.

Why this answer

AWS CloudHSM provides dedicated, single-tenant HSM instances that the company can use to generate and store encryption keys in its own HSM, meeting the requirement that keys be managed by the company's own HSM in an on-premises data center (though CloudHSM is in AWS, it is customer-controlled). Option D is correct because creating an AWS KMS custom key store backed by AWS CloudHSM allows the company to use KMS for encryption operations while the key material is stored in the CloudHSM cluster, satisfying the need for customer-managed HSM-backed keys.

Exam trap

The trap here is that candidates often assume 'customer managed key' in AWS KMS (Option A) satisfies the requirement for keys to be managed by the company's own HSM, but KMS customer managed keys are still stored in AWS KMS, not in a customer-controlled HSM, unless a custom key store backed by CloudHSM is used.

121
MCQeasy

A company is designing a new web application on AWS. The application must be highly available and scale automatically based on traffic. The architecture includes an Application Load Balancer (ALB) and an Auto Scaling group of EC2 instances. The application stores session state. What is the BEST way to handle session state to ensure high availability?

A.Store session state in Amazon DynamoDB
B.Store session state on the local instance store of each EC2 instance
C.Store session state in Amazon S3
D.Store session state in Amazon ElastiCache for Redis
AnswerD

ElastiCache provides a centralized, highly available session store.

Why this answer

Amazon ElastiCache for Redis is the best choice for handling session state in a highly available, auto-scaling web application because it provides a centralized, in-memory data store that is external to the EC2 instances. This ensures that session data persists independently of instance lifecycle events (e.g., scaling in/out or failures), and Redis offers sub-millisecond latency, replication, and automatic failover, which are critical for maintaining session continuity across the fleet.

Exam trap

The trap here is that candidates often choose DynamoDB (Option A) because it is a managed, highly available database, but they overlook the latency and cost implications for session state, which is a classic in-memory caching use case where ElastiCache for Redis is the optimal AWS service.

How to eliminate wrong answers

Option A is wrong because Amazon DynamoDB, while highly available and scalable, is a NoSQL database designed for document and key-value storage with higher latency compared to in-memory caches; it is not optimized for the low-latency, high-throughput session state access patterns required by web applications, and its cost per operation is typically higher than ElastiCache for this use case. Option B is wrong because storing session state on the local instance store of each EC2 instance ties session data to a specific instance; if the instance is terminated, replaced, or scaled in, all session data is lost, breaking high availability and user experience. Option C is wrong because Amazon S3 is an object storage service with significantly higher latency (typically tens to hundreds of milliseconds) compared to in-memory stores, and it is not designed for frequent, low-latency read/write operations required for session management; additionally, S3 lacks native session expiration and atomic operations needed for session handling.

122
MCQhard

A company is designing a data lake on AWS using Amazon S3. The data lake will store sensitive customer data that must be encrypted at rest. The company requires that the encryption keys be managed by the company's own hardware security module (HSM) and rotated every 90 days. Which solution meets these requirements?

A.Use SSE-S3 (Amazon S3 managed keys) and configure a lifecycle policy to re-encrypt objects every 90 days
B.Use SSE-KMS with a customer managed key and configure automatic key rotation every 90 days
C.Use client-side encryption with keys stored in AWS CloudHSM and rotate the keys using CloudHSM key rotation
D.Use SSE-C (customer-provided keys) and provide the key with each PUT request, rotating the key every 90 days
AnswerC

CloudHSM provides dedicated HSMs under your control. You can store keys in CloudHSM and rotate them as needed.

Why this answer

The company requires encryption keys to be managed by its own HSM and rotated every 90 days. AWS CloudHSM provides a dedicated HSM appliance that the customer fully controls, and client-side encryption ensures that the encryption keys never leave the customer's HSM environment. The customer can implement key rotation within CloudHSM using its native key management capabilities, meeting both the HSM control and 90-day rotation requirements.

Exam trap

The trap here is that candidates often confuse SSE-KMS with customer managed keys as meeting the 'own HSM' requirement, but KMS is a shared service and does not provide a dedicated HSM under the customer's exclusive control, unlike CloudHSM.

How to eliminate wrong answers

Option A is wrong because SSE-S3 uses Amazon S3 managed keys, which are not managed by the customer's own HSM, and lifecycle policies cannot re-encrypt objects with new keys — they only manage object transitions or deletions. Option B is wrong because SSE-KMS with a customer managed key uses AWS KMS, not the customer's own HSM; automatic key rotation in KMS is fixed at yearly (365 days), not 90 days, and cannot be configured to a custom interval. Option D is wrong because SSE-C requires the customer to provide the encryption key with each PUT request, but the keys are not stored or managed by the customer's own HSM — they are ephemeral and must be supplied per operation, and rotating keys every 90 days would require re-encrypting all objects, which is impractical and not a managed rotation solution.

123
Multi-Selectmedium

A company is designing a new application that will run on Amazon EC2 instances behind an Application Load Balancer. The company wants to ensure that traffic to the application is encrypted in transit. Which TWO actions should the company take?

Select 2 answers
A.Configure the Application Load Balancer with an HTTP listener that redirects to HTTPS.
B.Use a Network Load Balancer with TCP listener.
C.Place an Amazon CloudFront distribution in front of the ALB.
D.Install an SSL/TLS certificate on the Application Load Balancer.
E.Configure the Application Load Balancer with an HTTPS listener.
AnswersD, E

SSL/TLS certificate is required for HTTPS termination.

Why this answer

Installing an SSL/TLS certificate on the Application Load Balancer (ALB) is required to terminate HTTPS connections and enable encryption of traffic between clients and the ALB. Option E is correct because configuring the ALB with an HTTPS listener is necessary to accept encrypted traffic on port 443 and use the installed certificate for decryption. Together, these actions ensure that traffic to the application is encrypted in transit from the client to the load balancer.

Exam trap

The trap here is that candidates may think an HTTP-to-HTTPS redirect alone (Option A) is sufficient to encrypt traffic, but the redirect only changes the protocol; the actual encryption requires an HTTPS listener with a certificate installed.

124
MCQeasy

A company is designing a new application that will run on Amazon EC2 instances behind an Application Load Balancer. The application needs to store session state. Which AWS service provides a fully managed, highly scalable solution for session state management?

A.Amazon DynamoDB
B.Amazon ElastiCache for Redis
C.Amazon S3
D.Amazon RDS for MySQL
AnswerB

ElastiCache for Redis is a fully managed, highly scalable, in-memory data store ideal for session state.

Why this answer

Amazon ElastiCache for Redis is the correct choice because it provides a fully managed, in-memory data store that is ideal for session state management. Redis offers sub-millisecond latency, built-in replication, and automatic failover, making it highly scalable and durable for session data. The Application Load Balancer can be configured with stickiness (session affinity) to route requests to the same EC2 instance, but using ElastiCache for Redis decouples session state from the compute layer, enabling stateless application tiers and seamless scaling.

Exam trap

The trap here is that candidates often choose Amazon DynamoDB because it is fully managed and scalable, but they overlook the fact that session state requires extremely low latency and automatic TTL expiration, which are native strengths of Redis but require additional configuration (e.g., DynamoDB TTL) and still cannot match Redis's in-memory performance.

How to eliminate wrong answers

Option A is wrong because Amazon DynamoDB is a NoSQL key-value and document database that, while fully managed and scalable, is not optimized for session state management due to higher latency compared to in-memory caches and lack of native TTL (time-to-live) expiration for session data without additional configuration. Option C is wrong because Amazon S3 is an object storage service designed for large-scale data blobs, not for low-latency, high-throughput session state access; it lacks in-memory performance and introduces significant latency and cost overhead for frequent read/write operations. Option D is wrong because Amazon RDS for MySQL is a relational database that, while fully managed, is not designed for high-speed session state operations; it incurs higher latency due to disk-based storage and ACID transaction overhead, and it is not optimized for the ephemeral, high-frequency access patterns of session data.

125
Multi-Selectmedium

A company is designing a solution to process real-time streaming data from IoT devices. The data must be ingested, processed with sub-second latency, and stored for analytics. Which services should the company use? (Choose TWO.)

Select 2 answers
A.AWS Lambda
B.Amazon Kinesis Data Streams
C.Amazon SQS
D.Amazon Kinesis Data Analytics
E.Amazon Kinesis Data Firehose
AnswersA, B

Can process records from Kinesis streams in near real-time.

Why this answer

AWS Lambda is correct because it can process streaming data from Amazon Kinesis Data Streams with sub-second latency by subscribing to the stream as an event source. Lambda functions are invoked synchronously with each record, enabling real-time transformations or lightweight analytics before the data is stored.

Exam trap

The trap here is that candidates often confuse Amazon Kinesis Data Firehose (which has a 60-second minimum buffer) with Kinesis Data Streams for sub-second latency, or they mistakenly think SQS is suitable for streaming ingestion when it is designed for message queuing, not ordered, replayable stream processing.

126
MCQeasy

A solutions architect runs the above CLI command. What is the output format?

A.YAML formatted output.
B.A text table with columns.
C.A JSON array of strings.
D.A JSON object with keys.
AnswerC

The query returns a list of three values in JSON array format.

Why this answer

The CLI command shown is `aws ec2 describe-instances --query 'Reservations[].Instances[].InstanceId'`. The `--query` parameter uses JMESPath to extract a list of instance IDs, which results in a JSON array of strings (e.g., `["i-123", "i-456"]`). AWS CLI output defaults to JSON unless `--output` is specified, and the JMESPath expression here returns an array, not a single object or table.

Exam trap

The trap here is that candidates may confuse the `--query` output structure with the default JSON output format, assuming it always returns a JSON object with keys, when in fact JMESPath projections can return arrays of scalars or objects depending on the expression.

How to eliminate wrong answers

Option A is wrong because YAML output requires explicitly setting `--output yaml` in the command, which is not present; the default output format is JSON. Option B is wrong because a text table with columns is produced only with `--output table`, which is not specified, and the `--query` extracts a flat list of IDs, not structured columns. Option D is wrong because a JSON object with keys would result from a query that returns a dictionary (e.g., `{InstanceId: ...}`), but the given JMESPath expression `Reservations[].Instances[].InstanceId` returns an array of scalar values (strings), not key-value pairs.

127
MCQhard

A company is designing a new solution to process a continuous stream of events from multiple sources. The events must be processed in real-time with exactly-once processing semantics. The solution should be able to handle replayed events without duplication. Which AWS service should be used for the event processing?

A.Amazon Kinesis Data Firehose
B.AWS Lambda with Kinesis trigger
C.Amazon Kinesis Data Analytics for Apache Flink
D.Amazon Simple Queue Service (SQS) with Lambda
AnswerC

Apache Flink provides exactly-once processing semantics.

Why this answer

(Amazon Kinesis Data Analytics for Apache Flink) is correct because it provides exactly-once processing semantics through Flink's checkpoints and state management. Option A (Kinesis Data Firehose) is wrong because it is designed for loading streaming data into data stores, not for real-time processing with exactly-once guarantees. Option B (AWS Lambda with Kinesis trigger) is wrong because Lambda processes records at-least-once, which can result in duplicates.

Option D (Amazon SQS with Lambda) is wrong because SQS standard queues are at-least-once, and FIFO queues are at-most-once, both unsuitable for exactly-once processing.

128
MCQeasy

A company wants to migrate a monolithic application to AWS and redesign it using microservices. The application uses a MySQL database. The company wants to minimize operational overhead and enable each microservice to have its own database. Which AWS service should the company use to implement the database layer?

A.Amazon DynamoDB
B.Amazon RDS for MySQL
C.Amazon Redshift
D.Amazon Aurora
AnswerB

Amazon RDS is a managed relational database service that supports MySQL, reducing operational overhead.

Why this answer

Amazon RDS for MySQL is the correct choice because it provides a managed MySQL database service that minimizes operational overhead through automated backups, patching, and scaling. Each microservice can have its own RDS instance, enabling database-per-service isolation while offloading administrative tasks like replication and failover to AWS.

Exam trap

The trap here is that candidates may confuse Amazon Aurora with Amazon RDS for MySQL, but Aurora is a separate service with its own engine and pricing, and the question asks for a service to implement the database layer using MySQL, making RDS for MySQL the direct and simplest managed option.

How to eliminate wrong answers

Option A is wrong because Amazon DynamoDB is a NoSQL key-value and document database, not a relational MySQL database, and migrating a MySQL-based monolithic application to DynamoDB would require significant application redesign and schema changes. Option C is wrong because Amazon Redshift is a petabyte-scale data warehouse optimized for analytical queries, not for transactional microservice workloads requiring individual databases. Option D is wrong because Amazon Aurora is a MySQL-compatible relational database, but it is a separate service from RDS for MySQL; while Aurora offers higher performance and availability, the question specifically asks for a service to implement the database layer with minimal operational overhead, and RDS for MySQL is the standard managed MySQL service, whereas Aurora is a distinct offering with different cost and performance characteristics that may not be necessary for all microservices.

129
MCQmedium

An IAM policy attached to an S3 bucket is shown. What is the net effect on requests to read objects from the bucket?

A.All HTTPS requests from any IP are allowed.
B.Only requests using HTTPS from any IP are allowed because the Deny is overridden.
C.Only requests using HTTPS from the IP range 192.0.2.0/24 are allowed.
D.All requests from the IP range 192.0.2.0/24 are allowed, regardless of protocol.
AnswerC

The Allow requires the IP, and the Deny blocks non-HTTPS.

Why this answer

The IAM policy includes a Deny statement that blocks all requests unless they use HTTPS and originate from the 192.0.2.0/24 IP range. The Allow statement grants read access to the bucket, but the Deny with a condition (aws:SecureTransport and aws:SourceIp) explicitly overrides the Allow for requests that do not meet both conditions. Therefore, only HTTPS requests from the specified IP range are permitted, making option C correct.

Exam trap

The trap here is that candidates often assume an Allow statement alone grants access, forgetting that an explicit Deny with conditions can restrict that Allow, leading them to overlook the combined effect of the Deny's conditions on both protocol and IP range.

How to eliminate wrong answers

Option A is wrong because the policy includes a Deny that blocks non-HTTPS requests and requests from IPs outside 192.0.2.0/24, so not all HTTPS requests from any IP are allowed. Option B is wrong because the Deny is not overridden; it explicitly denies requests that do not meet the conditions, and the Allow only applies to requests that satisfy both HTTPS and the IP range. Option D is wrong because the Deny requires aws:SecureTransport to be true, so HTTP requests from 192.0.2.0/24 are denied.

130
MCQeasy

Refer to the exhibit. An IAM policy allows ec2:Describe* actions on all resources. A developer wants to also allow describing RDS instances. Which action must be added to the policy?

A.rds:List*
B.rds:Get*
C.rds:Describe*
D.ec2:DescribeRdsInstances
AnswerC

rds:Describe* covers all describe actions for RDS.

Why this answer

AWS IAM policies use the `rds:Describe*` action to grant permission to describe RDS instances, DB snapshots, DB parameter groups, and other RDS resources. The `ec2:Describe*` action only covers EC2 resources, not RDS resources, so a separate RDS-specific action is required. The wildcard `*` after `Describe` matches all RDS describe operations, including `rds:DescribeDBInstances`.

Exam trap

The trap here is that candidates assume `ec2:Describe*` covers all AWS describe operations across services, but IAM actions are scoped per service namespace (e.g., `ec2:`, `rds:`), and each service has its own set of actions.

How to eliminate wrong answers

Option A is wrong because `rds:List*` is not a valid IAM action prefix for RDS; RDS uses `Describe` actions for read operations, not `List`. Option B is wrong because `rds:Get*` is not a valid IAM action for RDS; AWS RDS API uses `Describe` actions (e.g., `DescribeDBInstances`) rather than `Get` actions. Option D is wrong because `ec2:DescribeRdsInstances` does not exist; EC2 and RDS are separate services with distinct action namespaces, and RDS actions must use the `rds:` prefix.

131
Multi-Selectmedium

A company is designing a new serverless data processing pipeline that uses Amazon Kinesis Data Streams to ingest real-time clickstream data. The data must be processed using AWS Lambda and then stored in Amazon S3. The company needs to ensure that records are processed in order within each shard and that each record is processed exactly once. Which configuration should they use? (Choose TWO.)

Select 2 answers
A.Use an Amazon SQS FIFO queue between Kinesis and Lambda to ensure ordering.
B.Increase the batch window to reduce the number of Lambda invocations.
C.Enable parallelization factor on the Lambda event source mapping.
D.Use the Kinesis Client Library (KCL) and implement deduplication logic in the Lambda function.
E.Configure the Lambda function with a reserved concurrency of 1 per shard.
AnswersD, E

KCL with deduplication leverages sequence numbers and checkpointing to achieve exactly-once processing within a shard.

Why this answer

The correct options are D and E. Using the Kinesis Client Library (KCL) with deduplication logic ensures exactly-once processing and maintains per-shard ordering. Configuring the Lambda function with a reserved concurrency of 1 limits the function to a single concurrent execution, which can enforce sequential processing across shards and help preserve order, though it is not a scalable per-shard solution.

Option A is incorrect because SQS FIFO adds unnecessary complexity and does not preserve Kinesis shard ordering natively. Option B is incorrect because the batch window only affects invocation latency, not ordering or exactly-once semantics. Option C is incorrect because enabling parallelization factor allows concurrent batches per shard, breaking strict ordering.

Exam trap

The trap here is that candidates might think setting reserved concurrency to 1 per shard would maintain ordering, but reserved concurrency is a function-level limit and cannot be set per shard. The correct approach is to keep the default parallelization factor of 1 for each shard.

132
Multi-Selecthard

A company is designing a new application that will use Amazon DynamoDB as its database. The application will have a heavy read workload with occasional write spikes. The company wants to minimize costs while ensuring that reads are eventually consistent and writes are not throttled. Which three options should the architect consider? (Choose THREE.)

Select 3 answers
A.Use DynamoDB Streams to asynchronously replicate data to a second table for reads
B.Use Auto Scaling for write capacity
C.Use eventually consistent reads for most queries
D.Use DynamoDB Accelerator (DAX) to cache read results
E.Use strongly consistent reads for all queries
AnswersB, C, D

Auto Scaling adjusts write capacity to handle spikes without throttling.

Why this answer

DynamoDB Auto Scaling adjusts the provisioned write capacity based on actual traffic, preventing throttling during write spikes while reducing capacity and cost during low-traffic periods. This meets the requirement to minimize costs and avoid write throttling without manual intervention.

Exam trap

The trap here is that candidates may confuse DynamoDB Streams with a caching solution, or incorrectly assume strongly consistent reads are always required, ignoring the cost implications of RCU consumption for read-heavy workloads.

133
MCQhard

A global e-commerce company is designing a new recommendation engine on AWS. The engine processes user behavior data (clicks, purchases) from multiple sources in real time and updates recommendations stored in Amazon DynamoDB. The data stream can reach 100,000 events per second. The solution must be highly available and process events with minimal latency (< 1 second). The company wants to use a managed streaming service and a real-time processing framework. Which solution should a Solutions Architect recommend?

A.Use Amazon Kinesis Data Streams to ingest events, process them in real time with Amazon Kinesis Data Analytics using SQL, and write results to DynamoDB.
B.Use Amazon Kinesis Data Firehose to ingest events, transform data with Lambda, and deliver to DynamoDB.
C.Use Amazon Kinesis Data Streams to ingest events, use AWS Lambda to process each event, and write results to DynamoDB.
D.Use Amazon MSK (Managed Streaming for Apache Kafka) to ingest events, process them with Apache Spark Streaming on Amazon EMR, and write to DynamoDB.
AnswerA

Kinesis Data Analytics provides low-latency real-time processing; integrates well with Kinesis Streams and DynamoDB.

Why this answer

Amazon Kinesis Data Streams can ingest up to 100,000 events per second with shard-level scaling, and Kinesis Data Analytics (SQL) provides sub-second processing latency for real-time transformations. Writing directly to DynamoDB from the analytics application meets the <1 second latency requirement while maintaining high availability through Kinesis's built-in replication across three Availability Zones.

Exam trap

The trap here is that candidates often confuse Kinesis Data Firehose's near-real-time delivery (60-second buffer) with true real-time streaming, or assume Lambda can handle high-throughput streaming workloads without considering concurrency and latency limitations.

How to eliminate wrong answers

Option B is wrong because Kinesis Data Firehose is a near-real-time delivery service with a minimum buffer interval of 60 seconds, which cannot achieve sub-second latency. Option C is wrong because AWS Lambda has a maximum concurrency limit and per-invocation duration constraints that make it unsuitable for processing 100,000 events per second with <1 second latency, and it lacks native streaming SQL capabilities. Option D is wrong because Apache Spark Streaming on Amazon EMR introduces higher startup and processing overhead (typically seconds of latency) compared to Kinesis Data Analytics SQL, and MSK requires more operational overhead for cluster management.

134
MCQhard

A company is designing a new application that will run on Amazon EKS. The application must be able to scale based on custom metrics such as number of messages in an SQS queue. Which Kubernetes component should be used to achieve this?

A.Kubernetes Event-Driven Autoscaler (KEDA)
B.Kubernetes Horizontal Pod Autoscaler (HPA) with Prometheus
C.Kubernetes Cluster Autoscaler
D.AWS Auto Scaling with target tracking
AnswerA

KEDA is designed for event-driven scaling.

Why this answer

Kubernetes Event-Driven Autoscaler (KEDA) is the correct component because it is specifically designed to scale Kubernetes workloads based on external event sources like Amazon SQS queue depth. KEDA acts as a custom metrics adapter that integrates with the Kubernetes Horizontal Pod Autoscaler (HPA), allowing the application to scale pods dynamically based on the number of messages in the SQS queue, which is a custom metric not natively supported by the standard HPA.

Exam trap

The trap here is that candidates often confuse the standard Horizontal Pod Autoscaler (HPA) with the ability to scale based on any custom metric, but the HPA alone cannot ingest external metrics like SQS queue depth without a custom metrics adapter such as KEDA.

How to eliminate wrong answers

Option B is wrong because the standard Kubernetes Horizontal Pod Autoscaler (HPA) with Prometheus requires custom metrics to be exposed via the Kubernetes custom metrics API, but it does not natively support direct scaling based on SQS queue depth without additional components like KEDA or a custom metrics adapter. Option C is wrong because the Kubernetes Cluster Autoscaler is responsible for scaling the number of worker nodes in the cluster, not the number of pods based on application-level metrics like SQS queue depth. Option D is wrong because AWS Auto Scaling with target tracking is an AWS-native service for scaling EC2 instances or other AWS resources, not Kubernetes pods, and it cannot directly interpret Kubernetes custom metrics or scale pods within an EKS cluster.

135
MCQmedium

A company is designing a new application that will process sensitive financial data. The application must encrypt data at rest and in transit. The company wants to use AWS managed keys for encryption. Which AWS service should the company use to create and manage the encryption keys?

A.AWS CloudHSM
B.AWS Secrets Manager
C.AWS Key Management Service (KMS)
D.AWS Certificate Manager (ACM)
AnswerC

KMS is a fully managed service for creating and controlling encryption keys.

Why this answer

AWS Key Management Service (KMS) is the correct choice because it is a managed service that enables you to create, store, and control encryption keys used to encrypt data at rest and in transit. KMS integrates with other AWS services (e.g., S3, EBS, RDS) and supports envelope encryption, where a customer master key (CMK) encrypts data keys that perform the actual encryption. It also provides automatic key rotation and fine-grained access control via IAM policies and key policies, meeting the requirement for AWS-managed keys.

Exam trap

The trap here is that candidates often confuse AWS CloudHSM (which provides dedicated, customer-managed HSMs) with KMS (which provides fully managed, AWS-controlled keys), leading them to choose CloudHSM when the question explicitly requires 'AWS managed keys'.

How to eliminate wrong answers

Option A is wrong because AWS CloudHSM provides dedicated hardware security modules (HSMs) that you manage yourself, not AWS-managed keys; it requires you to handle key lifecycle and scaling, and does not offer the same level of integration with AWS services as KMS. Option B is wrong because AWS Secrets Manager is designed to securely store and rotate secrets (e.g., database credentials, API keys), not to create or manage encryption keys; it can use KMS to encrypt those secrets, but it is not a key management service itself. Option D is wrong because AWS Certificate Manager (ACM) is used to provision, manage, and deploy public and private SSL/TLS certificates for securing network traffic (in transit), but it does not create or manage encryption keys for data at rest; it relies on KMS for private key protection in some cases, but its primary function is certificate lifecycle management.

136
MCQmedium

A company is deploying a containerized application on Amazon ECS. The application must be highly available and scale automatically based on CPU utilization. The application also needs to be accessible from the internet via a single endpoint. Which combination of services should the solutions architect use?

A.Amazon ECS with an Application Load Balancer and ECS Service Auto Scaling with a target tracking policy based on average CPU utilization.
B.Amazon ECS with a Network Load Balancer and step scaling policies.
C.Amazon ECS with an Application Load Balancer and step scaling policies based on CPU utilization.
D.Amazon ECS with an Application Load Balancer and manual scaling.
AnswerA

ALB provides a single endpoint; target tracking auto scaling adjusts capacity based on CPU.

Why this answer

An Application Load Balancer (ALB) provides a single internet-facing endpoint and supports HTTP/HTTPS traffic, which is typical for containerized applications. ECS Service Auto Scaling with a target tracking policy based on average CPU utilization allows the service to automatically adjust the desired count of tasks to maintain a specified CPU utilization target, ensuring high availability and elasticity.

Exam trap

The trap here is that candidates often confuse step scaling with target tracking, assuming step scaling is required for CPU-based scaling, but target tracking is the simpler and more AWS-recommended approach for maintaining a specific utilization target.

How to eliminate wrong answers

Option B is wrong because a Network Load Balancer (NLB) operates at Layer 4 and does not support HTTP/HTTPS path-based routing or host-based routing, which are often needed for containerized applications; also, step scaling policies are less precise than target tracking for maintaining a specific CPU utilization metric. Option C is wrong because while it uses an ALB, step scaling policies are not the recommended approach for scaling based on CPU utilization—target tracking policies are simpler and more effective as they automatically adjust to maintain a target metric value. Option D is wrong because manual scaling does not provide automatic scaling based on CPU utilization, which is a requirement for the application to scale automatically.

137
MCQhard

A company is designing a global application that requires low-latency read access to a database from multiple AWS regions. The database stores user profile data that is updated infrequently. The solution must ensure eventual consistency and minimize write conflicts. Which combination of AWS services should be used?

A.Amazon RDS Multi-AZ with read replicas in each region
B.Amazon DynamoDB global tables
C.Amazon Aurora Global Database
D.Amazon ElastiCache for Redis with global datastore
AnswerB

DynamoDB global tables replicate data across regions with eventual consistency and automatic conflict resolution.

Why this answer

DynamoDB global tables provide multi-region replication with eventual consistency and automatic conflict resolution. Option A is wrong because RDS Multi-AZ does not replicate across regions. Option C is wrong because Aurora Global Database provides strong consistency, not eventual.

Option D is wrong because ElastiCache is a cache, not a primary data store.

138
MCQeasy

A company is designing a new serverless application using AWS Lambda. The Lambda function needs to access an Amazon RDS database. The database is in a VPC without public internet access. What is the MOST secure way to allow the Lambda function to connect to the database?

A.Configure the Lambda function to access the VPC, and place it in the same subnets as the RDS instance.
B.Create a VPC endpoint for Amazon RDS and use it from Lambda.
C.Use an AWS Network Load Balancer in front of the RDS instance and connect Lambda to the NLB.
D.Create a public endpoint for the RDS instance and allow Lambda to connect over the internet.
AnswerA

Lambda can connect to resources in a VPC via an Elastic Network Interface (ENI) in the same subnets.

Why this answer

Placing the Lambda function in the same VPC subnets as the RDS instance allows it to communicate directly over private IP addresses using the VPC's internal routing. This eliminates exposure to the public internet and leverages security groups to control traffic at the instance level. Lambda functions must be configured with VPC access to connect to resources inside a VPC, and placing them in the same subnets ensures minimal latency and maximum security.

Exam trap

The trap here is that candidates often confuse VPC endpoints (used for API calls to AWS services) with database connectivity, leading them to incorrectly select Option B, or they overcomplicate the solution with a load balancer (Option C) when a direct VPC attachment is the simplest and most secure approach.

How to eliminate wrong answers

Option B is wrong because Amazon RDS does not support VPC endpoints (interface or gateway endpoints) for database connections; VPC endpoints are used for AWS service APIs (e.g., S3, DynamoDB), not for database traffic. Option C is wrong because placing a Network Load Balancer in front of RDS adds unnecessary complexity and cost, and the NLB still requires the Lambda function to be in the VPC to connect privately, making it redundant. Option D is wrong because creating a public endpoint for RDS exposes the database to the internet, violating the requirement for no public internet access and introducing significant security risks.

139
MCQmedium

A company is designing a data lake on Amazon S3 for analytics. The data is ingested from multiple sources and must be encrypted at rest. The company requires the ability to audit access to the data lake and enforce fine-grained access control based on tags. Which solution should the company choose?

A.Use S3 bucket policies with condition keys for tags
B.Use S3 server-side encryption with customer-provided keys (SSE-C) and bucket policies
C.Use AWS Lake Formation with column-level permissions
D.Use S3 Object Lambda with AWS CloudTrail
AnswerA

Correct. S3 bucket policies with condition keys (e.g., `s3:ExistingObjectTag`) can enforce tag-based access control. Combined with S3 default encryption and CloudTrail auditing, this meets all requirements.

Why this answer

The correct solution uses S3 bucket policies with condition keys based on tags. S3 bucket policies can use the `s3:ExistingObjectTag` condition key to enforce fine-grained access control based on object tags. Encryption at rest is achieved using S3's default encryption (SSE-S3) or other server-side encryption options, which are independent of the access control mechanism.

AWS CloudTrail with S3 data events can audit all access requests, providing the required audit trail. This combination meets all requirements: encryption at rest, tag-based fine-grained access control, and auditing.

Exam trap

A common trap is assuming that advanced services like AWS Lake Formation or S3 Object Lambda are required for tag-based access control, but S3 bucket policies with condition keys provide a simpler and more direct solution.

How to eliminate wrong answers

Option A is wrong because S3 bucket policies with condition keys for tags can enforce access control based on resource tags, but they do not provide the ability to audit access at the granularity required; CloudTrail is needed for auditing, and bucket policies alone cannot enforce column-level or tag-based fine-grained access control on the data content itself. Option B is wrong because SSE-C encrypts data at rest using customer-provided keys, but it does not provide any access control or auditing capabilities; bucket policies are separate and do not enable fine-grained tag-based access control or auditing. Option C is wrong because AWS Lake Formation with column-level permissions provides fine-grained access control at the table and column level, but it does not natively support tag-based access control on S3 objects and does not inherently provide auditing; CloudTrail would still be required for auditability, and Lake Formation is more suited for database-style permissions rather than S3 object tag-based policies.

140
MCQeasy

A company is designing a highly available web application on AWS. The application consists of an Application Load Balancer (ALB) that distributes traffic to EC2 instances in an Auto Scaling group across multiple Availability Zones. The application state is stored in an Amazon ElastiCache for Redis cluster. The company wants to minimize downtime during patching of the Redis cluster. What should the company do?

A.Increase the Redis node type to handle the load and rely on the ElastiCache maintenance window.
B.Use a blue/green deployment strategy by creating a new Redis cluster and switching the application endpoint.
C.Deploy the Redis cluster with Multi-AZ and automatic failover enabled across two Availability Zones.
D.Deploy the Redis cluster as a single node in one Availability Zone and take regular snapshots.
AnswerC

Multi-AZ with automatic failover provides high availability during patching.

Why this answer

Deploying ElastiCache for Redis with Multi-AZ and automatic failover enabled ensures that if the primary node fails or requires patching, a read replica in a different Availability Zone is automatically promoted to primary, minimizing downtime. This aligns with the requirement for high availability during patching, as ElastiCache handles failover transparently without manual intervention.

Exam trap

The trap here is that candidates may confuse scaling (Option A) or manual migration strategies (Option B) with the native high-availability feature of ElastiCache Multi-AZ, which is specifically designed to handle patching and failures with minimal downtime.

How to eliminate wrong answers

Option A is wrong because increasing the node type only improves capacity and performance, not availability; it does not address downtime during patching, as the single node still experiences an outage during maintenance. Option B is wrong because a blue/green deployment for Redis would require manual endpoint switching and data synchronization, which is complex and introduces potential data loss or inconsistency; ElastiCache's built-in Multi-AZ failover is simpler and more reliable for patching. Option D is wrong because a single-node cluster in one Availability Zone has no redundancy; patching or any failure causes complete downtime, and snapshots only aid recovery, not high availability.

141
MCQeasy

A company has three EC2 instances as shown in the exhibit. The company wants to use an Application Load Balancer to distribute traffic across these instances with cross-zone load balancing enabled. How will the traffic be distributed?

A.Traffic is distributed evenly across the two availability zones.
B.Instances in us-east-1a receive 67% of traffic, us-east-1b receives 33%.
C.Each instance receives an equal share of traffic.
D.Traffic is sent to the instance with the least outstanding requests.
AnswerC

Cross-zone load balancing distributes traffic evenly across all instances.

Why this answer

With cross-zone load balancing enabled on an Application Load Balancer, traffic is distributed evenly across all registered targets regardless of the availability zone they reside in. Since there are three EC2 instances, each instance receives an equal share (33.3%) of the incoming traffic, ensuring balanced load across all instances.

Exam trap

The trap here is that candidates often confuse cross-zone load balancing with zone-level distribution, mistakenly thinking traffic is split by availability zone count rather than by individual instance count, or they incorrectly attribute the least outstanding requests algorithm to the Application Load Balancer.

How to eliminate wrong answers

Option A is wrong because cross-zone load balancing distributes traffic evenly across instances, not across availability zones; the ALB does not balance by zone when cross-zone is enabled. Option B is wrong because it incorrectly assumes a zone-based distribution proportional to instance count (2 instances in us-east-1a, 1 in us-east-1b), but cross-zone load balancing overrides zone-level weighting to give each instance an equal share. Option D is wrong because the Application Load Balancer uses a round-robin algorithm by default, not least outstanding requests; the least outstanding requests routing algorithm is used by the Network Load Balancer, not the ALB.

142
MCQhard

A security engineer created the S3 bucket policy shown in the exhibit. The policy is intended to allow the role MyAppRole to get objects only if they are encrypted with SSE-S3. However, the role is getting access denied errors when trying to get objects that are encrypted with SSE-S3. What is the most likely cause?

A.The Principal is incorrect; it should be the role name, not ARN.
B.The Resource ARN is incorrect; it should be 'arn:aws:s3:::my-bucket'.
C.The condition key is misspelled.
D.The condition key 's3:x-amz-server-side-encryption' checks the request header, not the object's encryption state.
AnswerD

The condition evaluates the request header, which may not be set when getting an already encrypted object.

Why this answer

The condition key `s3:x-amz-server-side-encryption` evaluates the `x-amz-server-side-encryption` request header sent by the client during the GET request, not the encryption state of the object stored in S3. Since the role is making GET requests without this header (or with a different value), the condition fails even though the object is encrypted with SSE-S3. To enforce that only objects encrypted with SSE-S3 can be retrieved, you must use a different approach, such as a bucket policy with `s3:ExistingObjectTag` or a pre-signed URL that includes the required header.

Exam trap

The trap here is that candidates assume `s3:x-amz-server-side-encryption` evaluates the object's stored encryption state, when in fact it only evaluates the request header, leading to a false sense of security and access denied errors when the header is missing.

How to eliminate wrong answers

Option A is wrong because the Principal field in an S3 bucket policy can accept an IAM role ARN (e.g., `arn:aws:iam::123456789012:role/MyAppRole`) and is syntactically correct; using the role name alone would be invalid. Option B is wrong because the Resource ARN `arn:aws:s3:::my-bucket/*` correctly specifies all objects within the bucket, and changing it to `arn:aws:s3:::my-bucket` would apply to the bucket itself, not its objects, which would not match the `s3:GetObject` action. Option C is wrong because the condition key `s3:x-amz-server-side-encryption` is spelled correctly; the issue is not a typo but a fundamental misunderstanding of what the key evaluates.

143
Multi-Selecteasy

A company is designing a new web application that will be deployed on Amazon EC2 instances behind an Application Load Balancer (ALB). The application must be highly available and fault-tolerant across multiple Availability Zones. Which THREE actions should the company take to meet these requirements? (Choose three.)

Select 3 answers
A.Launch EC2 instances in an Auto Scaling group across multiple Availability Zones.
B.Use a larger EC2 instance type to handle failures.
C.Configure health checks on the ALB target group to automatically replace unhealthy instances.
D.Configure the ALB to route traffic to instances in multiple Availability Zones.
E.Use a single Availability Zone to reduce latency.
AnswersA, C, D

Provides fault tolerance across AZs.

Why this answer

Launching EC2 instances in an Auto Scaling group across multiple Availability Zones ensures that the application can withstand the failure of an entire Availability Zone. The Auto Scaling group automatically maintains the desired instance count across the specified zones, providing fault tolerance and high availability.

Exam trap

The trap here is that candidates often confuse vertical scaling (larger instances) with horizontal scaling and fault tolerance, or mistakenly think that using a single Availability Zone can be compensated by other means, ignoring the fundamental requirement for multi-AZ deployment.

144
MCQmedium

A company is designing a new serverless application using AWS Lambda to process high-resolution images uploaded to Amazon S3. Each image can be up to 500 MB. The processing must complete within 5 minutes. What is the MOST cost-effective and scalable design to meet these requirements?

A.Use S3 event notifications to send the image to an Amazon SQS queue, then process it with a Lambda function.
B.Use AWS Fargate to run a containerized image processing service triggered by S3 event notifications.
C.Configure S3 event notifications to invoke a Lambda function that processes the image in memory and writes the result to another S3 bucket.
D.Use AWS Step Functions to orchestrate a Lambda function and an EC2 instance for processing.
AnswerC

Lambda can handle up to 10 GB of memory and 15-minute timeout, suitable for 500 MB images. Direct S3 trigger is simple and cost-effective.

Why this answer

Lambda can directly process images up to 500 MB within its 15-minute timeout (5 minutes is well within limits), and processing in memory avoids the latency and cost of intermediate storage or compute. S3 event notifications invoke Lambda synchronously, making this the most cost-effective and scalable design for serverless image processing.

Exam trap

The trap here is that candidates assume Lambda cannot handle large files or long-running tasks, leading them to choose more complex and costly options like SQS, Fargate, or EC2, when in fact Lambda's 15-minute timeout and S3 GetObject support easily accommodate 500 MB images processed within 5 minutes.

How to eliminate wrong answers

Option A is wrong because adding an SQS queue introduces unnecessary latency and cost without benefit, as Lambda can be invoked directly by S3 events and the 500 MB payload exceeds SQS's 256 KB message size limit, requiring S3 presigned URLs or separate metadata handling. Option B is wrong because AWS Fargate is a container-based compute service that incurs higher cost and operational overhead compared to Lambda for this use case, and it does not natively integrate with S3 events without additional components like EventBridge or SQS. Option D is wrong because using Step Functions to orchestrate a Lambda function and an EC2 instance adds complexity and cost, and EC2 requires manual scaling and management, which is less cost-effective and scalable than a pure serverless approach.

145
MCQeasy

A company is designing a cost-effective solution to store and serve large media files (e.g., videos) to users globally. The files are frequently accessed initially but become rarely accessed after 30 days. The company needs millisecond retrieval for the first 30 days and can tolerate retrieval times of minutes after that. What storage solution should the company use?

A.Amazon S3 Standard for all files, with lifecycle policy to delete after 30 days.
B.Amazon S3 Standard-IA for first 30 days, then transition to S3 Glacier Flexible Retrieval.
C.Amazon S3 Intelligent-Tiering with automatic tiering.
D.Amazon S3 Glacier Instant Retrieval for all files.
AnswerB

Standard-IA provides low cost with millisecond retrieval; Glacier is cheap for archival.

Why this answer

S3 Standard-IA is cost-effective for infrequent access but still provides millisecond retrieval for the first 30 days, and transition to Glacier after 30 days. Option A is too expensive. Option C provides millisecond retrieval but is expensive.

Option D is for archival only.

146
MCQhard

A company is deploying a web application on AWS Elastic Beanstalk. The application must be accessible over HTTPS only and must automatically redirect HTTP requests to HTTPS. The SSL/TLS certificate is provided by AWS Certificate Manager (ACM). How should this be configured?

A.Use a NAT instance to perform SSL termination and redirect.
B.Install the certificate on each EC2 instance and configure the web server to redirect HTTP to HTTPS.
C.Configure the environment’s load balancer to listen on port 443 with the ACM certificate and port 80 with a redirect rule.
D.Deploy a CloudFront distribution with the ACM certificate and redirect HTTP to HTTPS at the distribution level.
AnswerC

The load balancer can terminate HTTPS and redirect HTTP to HTTPS.

Why this answer

Elastic Beanstalk environments using a load balancer (ALB or CLB) can be configured to listen on port 443 with the ACM certificate for HTTPS termination, and simultaneously define a listener on port 80 with a redirect action that sends HTTP traffic to HTTPS. This is the simplest and most scalable approach, as it offloads SSL termination and redirection to the load balancer, eliminating the need to manage certificates or redirection logic on individual instances.

Exam trap

The trap here is that candidates often assume SSL termination must happen on the EC2 instances (Option B) or that a separate service like CloudFront (Option D) is required, when in fact the Elastic Beanstalk load balancer can natively handle both HTTPS termination and HTTP-to-HTTPS redirection with minimal configuration.

How to eliminate wrong answers

Option A is wrong because a NAT instance is used for outbound traffic from private subnets, not for SSL termination or HTTP-to-HTTPS redirection; it does not support load balancing or certificate management. Option B is wrong because installing the certificate on each EC2 instance and configuring the web server to redirect HTTP to HTTPS is inefficient, requires manual certificate renewal, and does not leverage Elastic Beanstalk's managed load balancer for centralized SSL termination. Option D is wrong because while CloudFront can redirect HTTP to HTTPS, it adds unnecessary complexity and cost for a simple single-region web app; the question specifically asks about configuring the Elastic Beanstalk environment, not an external CDN.

147
MCQeasy

A company needs to store configuration data for multiple applications in a centralized, secure, and versioned manner. The configuration must be encrypted at rest and automatically rotated. Which AWS service should they use?

A.AWS CloudFormation
B.AWS Secrets Manager
C.AWS AppConfig
D.AWS Systems Manager Parameter Store
AnswerC

AppConfig supports versioned configuration, encryption, and automatic rotation.

Why this answer

AWS AppConfig supports versioned configuration, encryption at rest, and automatic rotation. Option A (AWS CloudFormation) is for infrastructure as code, not for storing application configuration. Option B (AWS Secrets Manager) is designed for managing secrets (e.g., passwords, API keys), not general configuration data.

Option D (AWS Systems Manager Parameter Store) can store configuration but does not support automatic rotation of configuration values.

148
Multi-Selecthard

A company is designing a new disaster recovery solution for a critical application running on Amazon EC2. They need to replicate data across AWS Regions with a Recovery Point Objective (RPO) of 15 minutes and a Recovery Time Objective (RTO) of 1 hour. Which THREE actions should they take to meet these objectives?

Select 3 answers
A.Manually create and copy AMIs to the secondary region weekly
B.Create a CloudFormation template to provision the infrastructure in the secondary region
C.Use AWS Backup to automate cross-region EBS snapshot copies
D.Enable cross-region replication on the Amazon S3 buckets containing application data
E.Configure the EC2 instances in a Multi-AZ Auto Scaling group
AnswersB, C, D

CloudFormation allows rapid deployment of infrastructure in the DR region.

Why this answer

AWS CloudFormation templates enable infrastructure-as-code, allowing rapid and consistent provisioning of the secondary region environment. This automation is essential to meet the 1-hour RTO, as it eliminates manual setup and reduces recovery time to minutes by deploying pre-defined stacks.

Exam trap

The trap here is that candidates often confuse Multi-AZ (which provides high availability within a single Region) with cross-region disaster recovery, leading them to incorrectly select Option E despite it not addressing regional isolation.

149
MCQhard

A company has attached the above bucket policy to an S3 bucket. The bucket is accessed by an application running on an EC2 instance in the same AWS account. The EC2 instance is in a private subnet and uses an S3 Gateway Endpoint (vpce-12345678) to access the bucket. The application is failing to get objects from the bucket. What is the most likely cause?

A.The application is not using the VPC endpoint
B.The bucket policy does not allow encryption in transit
C.The application is using HTTP instead of HTTPS
D.The application is missing the required x-amz-server-side-encryption header
AnswerC

The Deny statement blocks requests without SecureTransport, i.e., HTTP. The application may be using HTTP.

Why this answer

The bucket policy likely includes a condition that denies requests not using HTTPS (i.e., `aws:SecureTransport`: false). The application is failing because it is using HTTP instead of HTTPS to access the S3 bucket, which violates the encryption-in-transit requirement enforced by the policy. Without HTTPS, the request is denied by the S3 service.

Exam trap

The trap here is that candidates often confuse encryption in transit (HTTPS) with encryption at rest (SSE headers) or assume that using a VPC Gateway Endpoint automatically secures the connection, when in fact the bucket policy's `aws:SecureTransport` condition independently enforces HTTPS.

How to eliminate wrong answers

Option A is wrong because the application is in a private subnet and uses an S3 Gateway Endpoint (vpce-12345678), which is explicitly specified in the bucket policy's `aws:SourceVpce` condition; the policy allows access from that endpoint, so the endpoint is being used. Option B is wrong because the bucket policy does not explicitly deny encryption in transit; rather, it likely requires it via the `aws:SecureTransport` condition, and the failure is due to using HTTP, not a lack of encryption-in-transit allowance. Option D is wrong because the `x-amz-server-side-encryption` header is for server-side encryption at rest, not for transport security; the error is about HTTPS (encryption in transit), not encryption at rest.

150
MCQeasy

A startup is building a serverless application using AWS Lambda. They need to store session state that can be shared across multiple Lambda invocations. Which AWS service should they use?

A.Amazon ElastiCache for Redis
B.Amazon S3
C.Amazon DynamoDB
D.Amazon CloudFront
AnswerA

Provides low-latency in-memory caching for session state.

Why this answer

Amazon ElastiCache for Redis is the correct choice because it provides a low-latency, in-memory data store that can be shared across multiple Lambda invocations. Redis supports data structures like strings, hashes, and lists, making it ideal for storing session state that needs to be accessed and updated quickly by concurrent serverless functions.

Exam trap

The trap here is that candidates often choose DynamoDB because it is a common serverless database, but they overlook that the question specifically asks for shared session state across invocations, which demands in-memory caching for performance, not a persistent database.

How to eliminate wrong answers

Option B (Amazon S3) is wrong because S3 is an object storage service with higher latency and eventual consistency for read-after-write, making it unsuitable for real-time session state that requires sub-millisecond access and strong consistency. Option C (Amazon DynamoDB) is wrong because while DynamoDB can store session state, it is a NoSQL database with higher latency compared to in-memory caching, and it is not optimized for the extremely low-latency, high-throughput session lookups that ElastiCache provides. Option D (Amazon CloudFront) is wrong because CloudFront is a content delivery network (CDN) that caches static and dynamic content at edge locations, not a session store; it cannot be used to store or share mutable session state across Lambda invocations.

← PreviousPage 2 of 7 · 487 questions totalNext →

Ready to test yourself?

Try a timed practice session using only Design for New Solutions questions.