AWS Certified CloudOps Engineer
AWS CloudOps — 65-Question Study Guide
Sixty-five questions cleaned up and explained: what the right answer is, why the distractors fail, and the one-line cue worth remembering.
Questions
Open a question to reveal the answer, the reasoning behind it, and the memory cue to keep.
An application uses EC2 instances to process messages from an Amazon SQS queue. Auto Scaling currently reacts to CPU utilization, but the queue backlog is increasing significantly. What change best addresses the backlog?
- Increase the SQS message-retention period. (option A)
- Scale the group on EC2 memory utilization instead of CPU. (option B)
- Scale the group using an SQS-backlog metric (ideally backlog per in-service instance). (option C)
- Add an Elastic Load Balancer in front of the EC2 instances. (option D)
Reveal answer & reasoning
Situation
Workers are not consuming messages as quickly as producers add them. CPU alone may not represent the actual amount of queued work.
Answer
Reasoning
Scale on a metric that represents pending work. AWS guidance recommends backlog per instance: approximate visible queue messages divided by the number of InService workers. Target tracking can then add capacity as work per worker rises.
Rule of thumb
For queue workers, scale against queue backlog per worker and the acceptable processing latency—not a generic host metric alone.
Pitfall
Longer retention protects messages from expiring; it does not increase processing throughput. A raw queue-depth target can also over-scale because it ignores current fleet size.
Sketch
Producer → SQS queue → EC2 worker Auto Scaling (backlog-per-instance)Memory cue
Remember: SQS backlog ÷ active workers = backlog per worker → compare with target → scale out/in.
AWS reference: AWS documentation
Sensitive workloads must not be able to send traffic to the public internet. How should the VPC be configured?
- Launch the instances in private subnets, with no route to an internet gateway or NAT gateway unless explicitly needed. (option A)
- Ensure the instances have no Elastic IP addresses. (option B)
- Create a 'blackhole NAT gateway' to block outbound connections. (option C)
- Use instance-store volumes instead of EBS. (option D)
Reveal answer & reasoning
Situation
The security requirement is network egress prevention, not merely hiding a public address.
Answer
with route-table caveat
Reasoning
A private subnet has no direct route to an internet gateway. To guarantee no internet egress, also ensure its route table has no NAT/egress path, and control alternate egress paths such as proxies or Transit Gateway routes. The other choices do not reliably block outbound traffic.
Rule of thumb
No public IP + no public route + no NAT/egress route = no ordinary internet egress.
Pitfall
A subnet called 'private' can still reach the internet through a NAT gateway. An instance without an Elastic IP may also have a public IPv4 address unless networking is deliberately configured.
Sketch
Private subnet instances → route table with no internet/NAT route → no internet egressMemory cue
Remember: Private subnet? → inspect route table → remove IGW/NAT routes when internet egress is prohibited.
AWS reference: AWS documentation · AWS documentation
A CloudOps Engineer needs to verify that root-user security best practices are being followed. How should the Engineer check?
- Review AWS Trusted Advisor security checks for the root user. (option A)
- Use AWS Artifact compliance reports to inspect root-user configuration. (option B)
- Rotate root access keys periodically with the AWS CLI. (option C)
- Change the root password regularly with the AWS CLI. (option D)
Reveal answer & reasoning
Situation
The team needs a supported assessment of root-account security posture, not a home-grown rotation process.
Answer
Reasoning
Trusted Advisor provides security checks, including root-account security posture checks depending on support-plan/features. Independently verify MFA, root access keys, contact details, and recovery controls in the account's security credentials settings. Artifact provides compliance reports, not a live root-user configuration check.
Rule of thumb
Protect root with MFA, avoid root access keys, and use root only for tasks requiring root.
Pitfall
AWS does not provide a normal CLI workflow to routinely rotate root user's password/access keys the way IAM user keys are managed. In general, do not create root access keys.
Sketch
Root user → minimal use; MFA on; no root access keys → verify with security checksMemory cue
Remember: Account root → MFA + no access keys + Trusted Advisor/security review.
AWS reference: AWS documentation
A production application currently runs its web interface and MySQL database on one EC2 instance. Production must be highly available. What architecture is best?
- Move MySQL to RDS for MySQL Multi-AZ; run app EC2 instances in an Auto Scaling group across multiple AZs behind a load balancer. (option A)
- Move the database to another EC2 instance and keep a stopped standby AMI in another AZ. (option B)
- Move MySQL to Multi-AZ RDS and refactor the application into Lambda by using Application Migration Service. (option C)
- Back up both EC2 instances to AMIs and create a Lambda health-check/relaunch process. (option D)
Reveal answer & reasoning
Situation
A single instance is a single point of failure for both application and database tiers.
Answer
Reasoning
Separate the tiers and use managed multi-AZ database failover plus a horizontally redundant application tier. RDS Multi-AZ provides standby failover; an ALB and Auto Scaling group keep healthy application capacity across AZs. Option B's stopped EC2 copy is not a reliable HA database standby.
Rule of thumb
For web apps: multi-AZ load-balanced app tier + managed database HA where possible.
Pitfall
Multi-AZ RDS is primarily high availability, not automatically extra read capacity. Do not assume the standby serves application reads.
Sketch
Clients → ALB → EC2 ASG (AZ-a/AZ-b) → RDS Multi-AZ primary/standbyMemory cue
Remember: Client → ALB → EC2 Auto Scaling across AZs → RDS Multi-AZ.
AWS reference: AWS documentation · AWS documentation
Unauthorized attempts against several S3 buckets must be investigated: which buckets are targeted and who is making requests? (Select TWO.)
- Use Athena to query S3 Server Access Logs for HTTP 403 responses and requester details. (option A)
- Enable S3 Server Access Logging for the affected buckets and deliver logs to a separate dedicated bucket. (option B)
- Query Server Access Logs for HTTP 503 errors to identify unauthorized IAM principals. (option C)
- Use S3 Analytics reports to identify HTTP 403 errors and principals. (option D)
- Enable S3 Analytics and generate a report of unauthorized requests. (option E)
Reveal answer & reasoning
Situation
The security team needs request-level evidence: bucket, time, request, status, and requester when recorded.
Answer
Reasoning
First enable S3 server access logging (or use CloudTrail S3 data events when stronger audit detail is required), storing logs separately. Then query the generated log data with Athena for 403/AccessDenied patterns. S3 Storage Class Analysis/Analytics does not provide an access-attempt audit trail.
Rule of thumb
Logging first; querying second. Use 403/AccessDenied for denied access, and know what identity fields each log source records.
Pitfall
Athena cannot query logs that were never collected. Server access logs are best-effort and may be delayed; CloudTrail data events can be a better security audit source but incur charges.
Sketch
S3 bucket access → server access logs/CloudTrail data events → Athena → 403 patternsMemory cue
Remember: Enable logs → central/separate log bucket → Athena query → investigate requester and target bucket.
AWS reference: AWS documentation · AWS documentation
Company policy requires IAM access keys to be automatically disabled after 60 days. Which automation is most operationally effective?
- Run a custom key-age script from cron on an EC2 instance. (option A)
- Use Amazon Inspector to disable old keys automatically. (option B)
- Use CloudWatch to trigger a Lambda that disables old keys. (option C)
- Use AWS Config to identify noncompliant keys and a custom Systems Manager Automation remediation. (option D)
Reveal answer & reasoning
Situation
The company wants policy-driven detection and repeatable remediation, rather than a server-maintained script.
Answer
Reasoning
AWS Config's access-keys-rotated rule can evaluate a configured key-age threshold; a remediation action can run a controlled Automation document to disable noncompliant keys. Treat disabling keys as a potentially disruptive action: notify the owner and confirm the key is not a production dependency before remediation.
Rule of thumb
Detect compliance declaratively; remediate with a governed, auditable runbook.
Pitfall
The managed rule detects rotation age; it does not, by itself, guarantee keys are disabled. Root-account keys are excluded from this Config rule. Use least-privilege remediation and an exception process.
Sketch
IAM access key → AWS Config rule (60 days) → remediation runbook → disable/notifyMemory cue
Remember: Config evaluates key age → NON_COMPLIANT → reviewed Automation disables key.
AWS reference: AWS documentation · AWS documentation
A security vulnerability affects a Linux version running on EC2 instances. How can exposure be mitigated with the least disruption?
- Reboot the instances to move them to new hosts. (option A)
- Redeploy all instances from an updated AMI using CloudFormation. (option B)
- Use AWS Systems Manager Patch Manager to patch the operating system. (option C)
- Use Amazon Inspector to generate recommendations only. (option D)
Reveal answer & reasoning
Situation
The issue is an OS vulnerability and the goal is a low-disruption remedial change.
Answer
Reasoning
Patch Manager can scan and install supported patches on managed nodes under a controlled maintenance window. Plan for package-specific restarts/reboots and roll out gradually. Inspector helps identify vulnerabilities, but does not itself patch the OS.
Rule of thumb
Use the patch-management mechanism for OS patching; schedule disruptive reboots and deploy in batches.
Pitfall
A patch might require a reboot. 'Least disruption' does not mean never reboot—use maintenance windows, health checks, and staged rollout.
Sketch
EC2 Linux → SSM Patch Manager → maintenance window → patch + validateMemory cue
Remember: Identify missing patch → maintenance window → patch a small batch → verify health → continue.
AWS reference: AWS documentation · AWS documentation
CloudFront serves www.sample.com. Traffic to CloudFront must use HTTPS, and an ACM certificate already exists. Which TWO actions are required?
- Set each relevant cache behavior's Viewer Protocol Policy to redirect HTTP to HTTPS (or HTTPS-only). (option A)
- Enable CloudFront Origin Shield. (option B)
- Allow both HTTP and HTTPS in each cache behavior. (option C)
- Associate AWS WAF with the distribution. (option D)
- Add
www.sample.comas an alternate domain name and select the custom ACM certificate. (option E)
Reveal answer & reasoning
Situation
The website needs viewer-to-CloudFront HTTPS and a certificate valid for the custom hostname.
Answer
Reasoning
The Viewer Protocol Policy controls viewer-side HTTP/HTTPS. A custom hostname also requires an alternate domain name and an ACM certificate in the US East (N. Virginia) Region for CloudFront. Origin Shield, WAF, and allowing HTTP do not satisfy the TLS requirement by themselves.
Rule of thumb
For CloudFront custom HTTPS: hostname alias + certificate + viewer HTTPS policy.
Pitfall
Viewer-to-CloudFront TLS and CloudFront-to-origin TLS are separate hops. If encryption is required end-to-end, configure the origin protocol policy too.
Sketch
Viewer → HTTPS policy → CloudFront distribution alias + ACM certificate → originMemory cue
Remember: Browser → HTTPS CloudFront (certificate for www.sample.com) → origin using configured origin protocol.
AWS reference: AWS documentation · AWS documentation
An RDS for MySQL database is slow during peak load. CloudWatch CPU utilization approaches 100%. What should be done first?
- Resize the RDS instance to a larger class. (option A)
- Enable Multi-AZ to add compute capacity. (option B)
- Add RDS MySQL nodes to distribute writes horizontally. (option C)
- Use CloudFront to cache database queries. (option D)
Reveal answer & reasoning
Situation
A single RDS DB instance is CPU-bound and needs more compute resources.
Answer
Reasoning
Scaling the instance class vertically adds CPU and memory. Multi-AZ is an HA mechanism, not a general read/write scaling mechanism. For read-heavy workloads, read replicas or caching may help, but they do not transparently distribute normal writes across multiple RDS MySQL writers.
Rule of thumb
CPU pinned on a database → inspect query/connection patterns, then right-size; scale reads separately when appropriate.
Pitfall
Do not choose Multi-AZ just to get more CPU; a standby is not normally a read replica.
Sketch
Application → RDS MySQL (CPU saturated) → larger DB class / query optimizationMemory cue
Remember: CPU near 100% → verify workload/query bottlenecks → scale instance class or tune SQL.
AWS reference: AWS documentation · AWS documentation
Deploy a web application on EC2 behind an ALB, with a separate EC2 database tier. The design must be multi-AZ and minimize public exposure. Which subnet layout is best?
- Public ALB, public web servers, public database servers in each AZ. (option A)
- Public ALB subnets; private web-server subnets; private database subnets, across AZs. (option B)
- Public ALB; private web servers; public database servers. (option C)
- Public ALB and public web servers; private databases. (option D)
Reveal answer & reasoning
Situation
Only the entry point needs to accept public client connections; application and database tiers should not be directly public.
Answer
Reasoning
Place an internet-facing ALB in public subnets across AZs. Place target EC2 instances and database resources in private subnets and tightly scope security-group rules from ALB to web tier and web tier to database tier. Ensure private instances have only the egress paths they need.
Rule of thumb
Public edge, private compute, private data.
Pitfall
A private subnet may still require NAT or VPC endpoints for outbound dependencies. Do not put database servers in public subnets merely because they need updates.
Sketch
Internet → public ALB (AZ-a/b) → private web EC2 → private DB EC2Memory cue
Remember: Internet → public ALB → private app tier → private database tier.
AWS reference: AWS documentation · AWS documentation
AWS notifies a CloudOps Engineer that an EBS-backed EC2 instance is on a degraded host scheduled for retirement during business-critical hours. What minimizes disruption?
- Restart it immediately to prevent retirement. (option A)
- Restart it outside business hours without stopping it. (option B)
- Write a Lambda function to migrate the running instance between hosts. (option C)
- Stop and start the instance outside business hours, before the retirement deadline. (option D)
Reveal answer & reasoning
Situation
AWS has flagged the underlying physical host; the workload must be moved before that host is retired.
Answer
Reasoning
For eligible EBS-backed instances, a stop/start generally moves the instance to a new host. Plan the downtime, ensure data is on persistent EBS rather than instance store, and verify the replacement host's availability and startup automation.
Rule of thumb
Host retirement → planned stop/start (if supported) before the event, rather than relying on a reboot.
Pitfall
A simple reboot does not reliably relocate an instance. Stop/start changes the host, but public IPv4 addresses can change unless an Elastic IP is attached.
Sketch
EC2 degraded host → stop/start (EBS-backed) → new host → health checkMemory cue
Remember: Retirement notice → maintenance window → stop/start → verify instance and application health.
AWS reference: AWS documentation · AWS documentation
During migration, unnecessary objects were written to an S3 bucket using Object Lock governance mode. What TWO actions allow deletion before the retention date?
- Extend the retention date. (option A)
- Use a principal with
s3:BypassGovernanceRetentionpermission. (option B) - Change governance mode to compliance mode. (option C)
- Use a principal with
s3:PutObjectRetentiononly. (option D) - Explicitly send the bypass-governance-retention flag/header with the delete request. (option E)
Reveal answer & reasoning
Situation
Governance retention protects object versions but permits authorized, explicit bypass by principals granted the special permission.
Answer
Reasoning
Both permission and explicit intent are required for a governance-mode bypass. With AWS CLI, use the relevant --bypass-governance-retention option for the supported delete operation. Compliance mode cannot be bypassed before expiry, and extending retention does the opposite of what's requested.
Rule of thumb
Governance bypass requires BOTH authorization and an explicit bypass flag.
Pitfall
Do not confuse governance mode with compliance mode. A legal hold can still prevent deletion even when governance bypass is authorized.
Sketch
Object Lock GOVERNANCE → `s3:BypassGovernanceRetention` + bypass flag → delete object versionMemory cue
Remember: Check Object Lock mode → confirm no legal hold → authorized bypass permission + explicit bypass request → delete version.
AWS reference: AWS documentation
An administrator cannot find a custom-Linux-AMI EC2 instance in Session Manager and needs to start an SSH session through Session Manager. Which TWO actions help?
- Install/ensure SSM Agent is installed and running. (option A)
- Add long-lived access keys to the instance. (option B)
- Attach an instance profile with the required Systems Manager permissions. (option C)
- Run Systems Manager Inventory to refresh the instance list. (option D)
Reveal answer & reasoning
Situation
Session Manager requires a managed node, a working SSM Agent, IAM permissions, and connectivity to Systems Manager endpoints.
Answer
Reasoning
Ensure SSM Agent is installed, current, and running, and attach an instance profile with the standard managed-instance permissions (or a least-privilege equivalent). Also verify endpoint connectivity, tags/state where relevant, and the agent's logs. Inventory is not the mechanism that registers an instance for Session Manager.
Rule of thumb
SSM Agent + IAM instance role + network reachability are the core prerequisites.
Pitfall
Do not embed access keys in an instance. For private subnets without NAT, configure the required Systems Manager VPC endpoints.
Sketch
EC2 custom AMI → SSM Agent + IAM instance profile + SSM endpoint access → Session ManagerMemory cue
Remember: Instance → SSM Agent + instance role + endpoint reachability → managed node → Session Manager.
AWS reference: AWS documentation · AWS documentation
AWS Single Sign-On (now IAM Identity Center) has been enabled in the Organizations management account. What is the next step to configure user access?
- Create permission sets and assign them to directory users/groups and target AWS accounts. (option A)
- Create IAM users in the management account for everyone. (option B)
- Create IAM roles manually in each account and associate users directly with roles. (option C)
- Create SCPs and attach them to directory users or groups. (option D)
Reveal answer & reasoning
Situation
The organization wants centrally managed workforce identities and cross-account access.
Answer
Reasoning
IAM Identity Center permission sets define the permission policies and session settings that become IAM roles in assigned accounts. Assign a user/group to one or more AWS accounts and permission sets. SCPs are organization guardrails, not identity assignments.
Rule of thumb
Identity Center users/groups + permission sets + account assignments.
Pitfall
Do not confuse a permission set with an SCP. A permission set grants a user capabilities; an SCP places maximum-permission guardrails on accounts/OUs.
Sketch
IAM Identity Center → permission set → user/group assignment → AWS accountMemory cue
Remember: Identity source → users/groups → permission sets → account assignments → role-based console/CLI access.
AWS reference: AWS documentation
An ALB-backed website receives repeated 404 requests from one source IP and may be scraped by a bot. Which service should block the activity?
- AWS Shield Standard. (option A)
- AWS WAF. (option B)
- Amazon Inspector. (option C)
- AWS CloudTrail. (option D)
Reveal answer & reasoning
Situation
This is application-layer request filtering or rate control, not primarily a volumetric DDoS event or vulnerability scan.
Answer
Reasoning
AWS WAF can use an IP set, rate-based rule, or request-matching conditions to block or challenge abusive requests at an ALB or CloudFront. CloudTrail audits API activity; Inspector finds software vulnerabilities; Shield focuses on DDoS protection.
Rule of thumb
L7 HTTP abuse → AWS WAF; volumetric/network DDoS → Shield; API auditing → CloudTrail.
Pitfall
A 404 alone is not proof of malicious behavior. Tune conditions/rate limits and monitor false positives before blocking broad IP ranges.
Sketch
Client requests → AWS WAF (rate/IP rules) → ALB → applicationMemory cue
Remember: Repeated HTTP pattern from IP → WAF rate/IP rule → block/count and review logs.
AWS reference: AWS documentation
An EC2 instance transitions from pending to terminated immediately after launch. Which is a plausible cause?
- The requested instance type has been restricted in the account. (option A)
- AWS has no spare On-Demand capacity. (option B)
- The account exceeded the regional instance limit. (option C)
- The root EBS volume is encrypted with a KMS key the launching principal cannot use. (option D)
Reveal answer & reasoning
Situation
The instance is terminating during launch rather than simply remaining pending.
Answer
Reasoning
Failure to access the KMS key for an encrypted EBS volume can prevent launch and lead to termination. Inspect the instance state transition reason, system log, CloudTrail, and KMS permissions/key state before assuming capacity or quota. Those other causes typically surface as launch errors or failed requests.
Rule of thumb
For fast launch termination, inspect the state-transition reason and encrypted-volume/KMS authorization path.
Pitfall
Do not guess solely from the state name. Check the EC2 console reason codes and CloudTrail events to distinguish KMS, capacity, quota, and configuration causes.
Sketch
EC2 launch → encrypted root EBS → KMS authorization check → instance stateMemory cue
Remember: Launch → volume decrypt authorization fails → instance terminates; inspect KMS key policy/IAM grants.
AWS reference: AWS documentation
A fleet is steady most of the day but has a predictable two-hour surge daily. What is the most operationally efficient scaling strategy?
- Reduce desired capacity during non-peak periods. (option A)
- Create scheduled scaling to add EC2 capacity before the high-traffic window. (option B)
- Run larger instance types all day. (option C)
- Manually add instances before each traffic surge. (option D)
Reveal answer & reasoning
Situation
The workload's demand spike is predictable, so capacity can be provisioned ahead of time.
Answer
Reasoning
Scheduled scaling changes desired capacity based on a known schedule and avoids waiting for reactive metrics to cross thresholds. Combine with dynamic scaling for unexpected traffic and choose capacity using measured load/testing.
Rule of thumb
Predictable pattern → scheduled scaling; unpredictable variation → dynamic target tracking/step scaling.
Pitfall
Do not rely only on scheduled scaling if traffic is also variable; retain dynamic scaling and sensible minimum/maximum capacity.
Sketch
Known time-based surge → scheduled ASG scale-out → handle peak → scale downMemory cue
Remember: Before peak start → scheduled scale out → peak window → scheduled scale in, subject to demand signals.
AWS reference: AWS documentation
EC2 instances must lose public IP addresses but still reach S3 and some internet services. Which TWO solutions preserve access?
- Add security-group outbound rules using S3 private IP addresses. (option A)
- Use a NAT gateway for general internet egress and configure route tables. (option B)
- Create an S3 VPC endpoint and associate it with the appropriate route tables. (option C)
- Configure the internet gateway to route S3 through private IP addresses. (option D)
- Use Direct Connect directly to S3 buckets. (option E)
Reveal answer & reasoning
Situation
Private instances need a private path to S3 and a controlled egress path for destinations outside the VPC.
Answer
Reasoning
An S3 gateway endpoint routes S3 traffic over the AWS network without NAT or public IPs. A NAT gateway provides outbound IPv4 connectivity to general public services for private-subnet instances. Use endpoint policies, bucket policies, route tables, and security controls as appropriate.
Rule of thumb
S3 access → S3 gateway endpoint; general internet egress → NAT gateway.
Pitfall
Security groups do not support stable S3 service-private-IP targeting. A NAT gateway does not make arbitrary outbound access private; it gives outbound internet access with stateful return traffic.
Sketch
Private EC2 → S3 gateway endpoint → S3; private EC2 → NAT gateway → public internetMemory cue
Remember: Private EC2 → (S3 route) gateway endpoint; (other internet destinations) NAT gateway.
AWS reference: AWS documentation · AWS documentation
A security policy says all EBS volumes must use a specific KMS customer-managed key. What is the most efficient verification mechanism?
- Create an SCP that only allows encryption API actions using that key. (option A)
- Use AWS Config's encrypted-volumes rule with the required KMS key ID parameter. (option B)
- Manually export a filtered volume list each day. (option C)
- Run a Lambda each day using
describe-volumes --filters encrypted. (option D)
Reveal answer & reasoning
Situation
The need is continuous compliance evaluation of volume encryption settings and the exact key, not merely checking that encryption is enabled.
Answer
Reasoning
AWS Config's encrypted-volumes managed rule can assess EBS encryption and, when configured with the key ID parameter, checks whether the specified KMS key is used. SCPs can prevent some API actions but are not a retrospective compliance report. A simple encrypted filter does not prove the correct key is in use.
Rule of thumb
Use AWS Config for continuous detection; use preventive guardrails separately if required.
Pitfall
Encrypted=true is not enough when policy mandates a particular KMS key. Confirm the rule parameter and remediation approach in the Region/account scope.
Sketch
EBS volumes → AWS Config encrypted-volumes rule (required KMS key) → compliance reportMemory cue
Remember: Record EBS volume config → AWS Config rule checks encrypted + KMS key ID → compliance status.
AWS reference: AWS documentation
A hybrid application needs encryption at rest and encrypted traffic across shared networks. Which TWO actions best match the stated requirements?
- Use CloudHSM to encrypt all data with a CMK. (option A)
- Use AWS KMS to manage data-encryption keys. (option B)
- Use AWS Certificate Manager to issue TLS/SSL certificates. (option C)
- Use AWS KMS to create TLS/SSL certificates. (option D)
- Configure an AWS Site-to-Site VPN between on-premises and AWS. (option E)
Reveal answer & reasoning
Situation
The requirement combines stored-data encryption with protected application traffic in transit.
Answer
application/data encryption pairing
Reasoning
AWS KMS manages keys used to encrypt data at rest; AWS Certificate Manager issues TLS certificates that applications/endpoints can use to encrypt data in transit. If the requirement specifically calls for an encrypted site-to-site network tunnel, AWS Site-to-Site VPN is also a valid network-layer control—but it does not replace application TLS where end-to-end encryption is required.
Rule of thumb
At rest → KMS/key management; application traffic in transit → TLS certificate; site-to-site tunnel → VPN where specifically required.
Pitfall
VPN encryption does not replace application-layer TLS where end-to-end application encryption is required. CloudHSM is a specialized HSM option, not the default for every application; KMS does not issue certificates.
Sketch
Application data at rest → KMS; client/app traffic → TLS with ACM-issued certificateMemory cue
Remember: Stored data → KMS-managed key; network/application traffic → TLS certificate (and VPN if a site-to-site tunnel is required).
AWS reference: AWS documentation · AWS documentation · AWS documentation
Lambda functions access an RDS database, but credentials are hard-coded. They must not be plaintext and must rotate every 30 days. What is best?
- Store credentials as Parameter Store SecureString and build a custom rotation Lambda plus EventBridge schedule. (option A)
- Encrypt each hard-coded password with KMS and keep ciphertext in Lambda environment variables. (option B)
- Store credentials in AWS Secrets Manager, enable managed/automatic database-secret rotation every 30 days, and update Lambdas to retrieve the secret. (option C)
- Keep the password in Lambda environment variables and schedule a function to update them. (option D)
Reveal answer & reasoning
Situation
Several consumers need a centrally managed database secret with a controlled rotation lifecycle.
Answer
Reasoning
Secrets Manager is designed for secret storage, retrieval, versioning, and automatic rotation workflows for supported RDS engines. The rotation mechanism updates the secret and the database credentials; Lambda functions fetch the current value at runtime. Ensure the rotation function can network to the DB and that consumers tolerate rotation safely.
Rule of thumb
Database credentials + automatic rotation → Secrets Manager, not code or per-function environment variables.
Pitfall
KMS-encrypted ciphertext is still a secret-management burden; rotation must update both the database and the consumers' source of truth. Avoid caching credentials indefinitely.
Sketch
Lambda consumers → Secrets Manager → RDS; rotation Lambda changes DB + secret every 30 daysMemory cue
Remember: Lambda → Secrets Manager GetSecretValue → RDS; scheduled rotation updates both DB password and secret.
AWS reference: AWS documentation
A web app on one EC2 instance needs a stable public IP for a domain name, with minimal management effort. Which TWO actions meet the requirement?
- Create an Auto Scaling group with min 1 and max 2. (option A)
- Create a Route 53 A record for the EC2 public address. (option B)
- Create a CNAME record pointing directly to an IP address. (option C)
- Put an ALB in front of the single EC2 instance. (option D)
- Allocate an Elastic IP and associate it with the instance. (option E)
Reveal answer & reasoning
Situation
The key requirement is a fixed IPv4 address and domain mapping, not multi-instance scale-out.
Answer
Reasoning
An Elastic IP is a static public IPv4 address that can be associated with an instance; Route 53 A records map the domain name to the IPv4 address. A CNAME target is a DNS name, not an IP. An ALB adds cost and provides a DNS name rather than a static single IP.
Rule of thumb
Static IPv4 on one EC2 instance → Elastic IP + Route 53 A record.
Pitfall
A single instance remains a single point of failure. If the requirement later changes to HA, consider an ALB and multi-AZ fleet rather than a fixed single-instance IP.
Sketch
example.com → Route 53 A record → Elastic IP → EC2Memory cue
Remember: Domain → Route 53 A → Elastic IP → EC2.
AWS reference: AWS documentation
An administrator can SSH into an EC2 instance from the corporate network but receives a timeout when working from home. What is the most likely cause?
- The instance IAM role does not allow SSH from home. (option A)
- The home network's route table lacks a route to the VPC internet gateway. (option B)
- The instance security group does not allow inbound SSH from the home public IP/CIDR. (option C)
- The SSH key pair blocks connections from home networks. (option D)
Reveal answer & reasoning
Situation
The same service works from one source network but times out from another.
Answer
Reasoning
Security groups must permit inbound TCP port 22 from the client's actual public source IP/CIDR (unless using VPN/bastion/SSM). A timeout commonly indicates dropped network traffic; IAM roles do not ordinarily govern standard SSH ingress, and key problems usually produce authentication errors rather than a network timeout.
Rule of thumb
Timeout → route, NACL, security group, firewall; authentication failure → user/key/SSH configuration.
Pitfall
Do not open SSH to 0.0.0.0/0 as a quick fix. Use a narrow home IP rule, VPN, bastion, or Session Manager.
Sketch
Home client → internet/VPN → EC2 security group TCP 22 allowlistMemory cue
Remember: Home IP → SG inbound TCP/22? → NACL/route checks → SSH auth.
AWS reference: AWS documentation
Each AWS WAF-protected request contains a header with the front-end server ID. What condition can match this header so requests can be counted per server?
- IP match statement. (option A)
- Size-constraint statement. (option B)
- ID match (as written in the video; not a standard AWS WAF statement type). (option C)
- String-match statement inspecting the specified request header. (option D)
Reveal answer & reasoning
Situation
The field to match is a textual identifier in an HTTP request header, not the client's IP address or body size.
Answer
Reasoning
AWS WAF can match strings in specified request components, including headers. Configure the header name and server-ID string, then use rule metrics/logs or labels to count requests. 'ID match' is not a standard AWS WAF rule-statement type, so among the listed choices the usable condition is String match.
Rule of thumb
Header content → string/byte match with the correct header field.
Pitfall
A rule matching one server ID counts only that ID; to distinguish many IDs, use labels, per-rule metrics, or logs. Ensure any forwarded client headers are trustworthy if they can be spoofed.
Sketch
Request header `X-Front-End-ID` → AWS WAF match statement → per-rule metrics/logsMemory cue
Remember: HTTP request → inspect X-Front-End-ID → string match → count/metric/log.
AWS reference: AWS documentation
An S3 static website returns HTTP 403 Forbidden even though static website hosting is enabled and content uploaded. What fixes a public static website configuration?
- Remove any default bucket policy that denies reads, if safe and intended. (option A)
- Grant everyone broad read access to all bucket actions. (option B)
- Grant public
s3:GetObjecton the website objects (bucket/*), while correctly configuring Block Public Access for the intended public website model. (option C) - Enable cross-Region replication. (option D)
Reveal answer & reasoning
Situation
The website endpoint can serve objects only if the object's read authorization allows it.
Answer
Reasoning
For a publicly hosted S3 website, the bucket policy should grant s3:GetObject on object ARNs, not broad bucket administration or upload permissions. Block Public Access settings must permit the intended design. AWS currently recommends using CloudFront with Origin Access Control for a more secure production static site where possible.
Rule of thumb
S3 website 403 → verify object key/index document + public-read policy + Block Public Access settings.
Pitfall
Granting s3:GetBucket* alone does not grant object reads. Never make a sensitive data bucket public just to fix an unexplained 403.
Sketch
Browser → S3 website hosting → object-level GetObject permission (or CloudFront/OAC design)Memory cue
Remember: Browser → S3 website endpoint → bucket policy s3:GetObject on arn:aws:s3:::bucket/*.
AWS reference: AWS documentation · AWS documentation
A new member account is created through AWS Organizations. How are user-defined cost-allocation tags enabled for consolidated billing?
- Create the tag keys in the payer account's Billing console. (option A)
- Tag resources in the member account, then activate those tag keys as cost-allocation tags in the management/payer account's Billing and Cost Management console. (option B)
- Create user-defined tags only from the new account's Billing console. (option C)
- Create tags in Tag Editor and activate them only from the member account's Billing console. (option D)
Reveal answer & reasoning
Situation
Resource tags originate on resources in member accounts, but cost allocation is activated centrally for the consolidated bill.
Answer
Reasoning
Apply consistent user-defined tags to resources, then activate the relevant tag keys in Billing and Cost Management for the organization's consolidated billing view. Tags must be applied to supported resources and activated before they appear in cost reports; activation is not retroactive to all past data.
Rule of thumb
Tag resources where they live; activate cost-allocation tag keys centrally.
Pitfall
Creating a tag key does not automatically apply it to resources or make it active for billing. Standardize spelling/case and apply tags consistently.
Sketch
Member account resources tagged → payer/management account activates tags → consolidated cost reportsMemory cue
Remember: Member resource tag → billing management account activates key → usage/cost reports include tag dimension.
AWS reference: AWS documentation
The virtual machine running an AWS Storage Gateway Volume Gateway must be rebooted. What is the correct operational sequence?
- Stop the VM, restart the gateway, then turn on the VM. (option A)
- Reboot the logical gateway and then reboot the VM. (option B)
- Stop/deactivate the gateway through the supported procedure, reboot the VM, then restart the gateway service/appliance. (option C)
- Synchronize the gateway and reboot without checking status. (option D)
Reveal answer & reasoning
Situation
A virtual appliance needs maintenance while preserving its connection to cloud storage.
Answer
gateway service stopped, VM rebooted, gateway restarted
Reasoning
Follow the supported Storage Gateway appliance maintenance procedure: stop gateway operations cleanly, reboot/maintain the host VM, then ensure the VM and gateway are running and healthy. Avoid abrupt hypervisor actions while active writes or cache synchronization are in progress.
Rule of thumb
Gracefully stop gateway functions before host maintenance; verify health and cache state afterward.
Pitfall
Exact console/CLI steps vary by gateway type and appliance version—follow the current Storage Gateway guide rather than blindly applying a generic server reboot procedure.
Sketch
Applications → Storage Gateway → stop safely → reboot VM → validate gateway onlineMemory cue
Remember: Pause/stop gateway → reboot VM → wait for agent/network → confirm gateway ONLINE.
AWS reference: AWS documentation
An ALB has EC2 targets in an Auto Scaling group. Create a CloudWatch alarm for when every target is unhealthy. What metric and condition should be used?
- In
AWS/ApplicationELB, alarm whenHealthyHostCountis zero (equivalently, less than 1). (option A) - In
AWS/ApplicationELB, alarm whenHealthyHostCountis 1 or more. (option B) - In
AWS/EC2, alarm whenStatusCheckFailed_Instanceis 1 or more. (option C) - In
AWS/EC2, alarm whenStatusCheckFailed_Systemis zero or less. (option D)
Reveal answer & reasoning
Situation
The alert should represent target health at the load balancer, not EC2 system reachability in isolation.
Answer
Reasoning
Use the ApplicationELB namespace and the appropriate load-balancer/target-group dimensions for HealthyHostCount; alarm when the count is 0. EC2 status-check metrics don't indicate whether the ALB health checks consider targets healthy. The screenshot's intended first choice is the zero-host condition.
Rule of thumb
All targets unhealthy = HealthyHostCount = 0.
Pitfall
The literal condition HealthyHostCount < 0 is impossible; use <= 0 or < 1. Make sure the alarm dimensions point to the intended ALB and target group.
Sketch
ALB target group → `HealthyHostCount == 0` → CloudWatch alarm/SNSMemory cue
Remember: ALB target health → HealthyHostCount → zero → alarm.
AWS reference: AWS documentation · AWS documentation
Data must be archived for at least seven years using Amazon S3 Glacier. Which control enforces a retention/compliance policy?
- A data retrieval policy. (option A)
- A Glacier Vault Lock policy (or the appropriate S3 Object Lock retention configuration for S3 Glacier storage). (option B)
- A vault notification. (option C)
- A vault access policy alone. (option D)
Reveal answer & reasoning
Situation
The requirement is immutable retention, not who receives notifications or how data is retrieved.
Answer
Reasoning
Vault Lock lets you lock a policy that enforces compliance controls such as minimum retention periods for archive vaults. For modern S3 Glacier storage classes in S3 buckets, use S3 Object Lock retention and legal holds as appropriate. Choose the product's actual storage model carefully because S3 Glacier Vault Lock and S3 Object Lock are different mechanisms.
Rule of thumb
Retention compliance → lock/retention policy, not an access policy or notification.
Pitfall
An access policy controls who can call APIs; it does not itself guarantee a seven-year retention period. Compliance-mode controls can be irreversible, so validate before locking.
Sketch
Archive → Vault Lock/S3 Object Lock retention policy → seven-year preservationMemory cue
Remember: Archive written → retention rule applied → lock policy enforces period → audit retention.
AWS reference: AWS documentation · AWS documentation
EC2 instances have specific tags and only a group of users should be allowed to manage them. Which TWO IAM actions are needed?
- Attach an IAM role to the EC2 instances. (option A)
- Create an IAM policy with a
Conditionthat matches the desired EC2 resource tags. (option B) - Create an Auto Scaling group and tag it. (option C)
- Attach that IAM policy to the users or groups that need access. (option D)
- Create an IAM policy using only the
Principalelement to identify instances. (option E)
Reveal answer & reasoning
Situation
The requirement is to authorize human/role principals to act on tagged EC2 resources.
Answer
Reasoning
Use resource-tag condition keys in the IAM policy to constrain the target instances, then attach the identity-based policy to the relevant users/groups/roles. An instance profile is for permissions the workload itself uses, not a substitute for authorizing administrators to manage instances.
Rule of thumb
Resource tag condition + policy attached to the requesting identity.
Pitfall
Tags are not access controls by themselves. All other applicable policy layers—explicit denies, SCPs, permission boundaries, session policies—still apply.
Sketch
User/group → tag-conditioned IAM policy → EC2 actions on matching instancesMemory cue
Remember: Caller identity policy → ec2:ResourceTag/Environment condition → only tagged instances are allowed.
AWS reference: AWS documentation
A company needs to see how Reserved Instance discounts are allocated in its consolidated bill. Which tool is most appropriate?
- AWS Organizations. (option A)
- Amazon Inspector. (option B)
- AWS Budgets. (option C)
- AWS Cost and Usage Report (CUR). (option D)
Reveal answer & reasoning
Situation
The question asks for detailed billing allocation, not account membership, vulnerability analysis, or threshold alerts.
Answer
Reasoning
The Cost and Usage Report provides detailed line-item billing and usage data, including discount allocation information suitable for analysis by account, resource, and usage type when configured with the required detail. Use Cost Explorer for interactive high-level analysis and CUR/Athena for deeper reconciliation.
Rule of thumb
Need auditable line-item billing/discount allocation → CUR.
Pitfall
A budget alerts on amounts; it is not a ledger of which resources received Reserved Instance benefit.
Sketch
AWS billing → Cost and Usage Report → Athena/BI → RI discount allocationMemory cue
Remember: Billing data line items → CUR export → query by account/resource/discount fields.
AWS reference: AWS documentation
CloudWatch Agent sends custom metrics to a custom namespace. How do you show the metrics on a CloudWatch dashboard?
- Select the custom namespace, choose the metric, and add it to the dashboard/widget. (option A)
- Use CloudWatch Events to add metrics automatically. (option B)
- Create CloudWatch Logs metric filters for existing custom metrics. (option C)
- Choose a dashboard widget and select the relevant metrics from the custom namespace. (option D)
Reveal answer & reasoning
Situation
Metrics have already been published; the task is visualization, not metric creation.
Answer
A is the same workflow in compressed form
Reasoning
Create or edit a dashboard, select a widget type, then browse the namespace and metric dimensions that the agent publishes. Logs metric filters are for deriving metrics from log events, not for displaying metrics already emitted by the agent.
Rule of thumb
Published metric → dashboard widget → namespace + metric dimensions.
Pitfall
Custom metrics are often under CWAgent unless a custom namespace was configured. Dimensions must match the published metric series exactly.
Sketch
CloudWatch Agent → custom namespace → dashboard widget → selected metricMemory cue
Remember: Choose widget → browse custom namespace → pick metric/dimensions → add to dashboard.
AWS reference: AWS documentation · AWS documentation
A global static S3 website begins receiving HTTP 503 Service Unavailable errors soon after launch. What is the most likely cause?
- A problem with S3 Transfer Acceleration. (option A)
- Expired pre-signed URLs. (option B)
- Incorrect user permissions. (option C)
- Request rate increased quickly and S3 is temporarily returning 503 Slow Down while scaling. (option D)
Reveal answer & reasoning
Situation
The launch causes a sudden increase in read traffic across a large user base.
Answer
Reasoning
S3 scales to high request rates, but a sharp change in workload can temporarily produce 503 Slow Down while S3 optimizes its internal scaling. Use exponential backoff, retries, and well-distributed object prefixes/traffic patterns. A persistent permissions problem typically gives 403, not a throughput-related 503.
Rule of thumb
S3 503 Slow Down → retry with exponential backoff; inspect request rate and prefix distribution.
Pitfall
Do not retry in a tight loop without backoff; it can increase pressure. Transfer Acceleration is unrelated unless the actual error pattern identifies it.
Sketch
Global clients → S3 → transient 503 → exponential backoff + well-distributed request loadMemory cue
Remember: 503 during ramp-up → backoff/jitter → retries → observe whether throttling subsides.
AWS reference: AWS documentation
Private EC2 instances use a NAT gateway to reach peers on the internet, and NAT charges have increased. How can the Engineer identify which instances generate the most traffic?
- Enable VPC Flow Logs on the NAT gateway's network interface and query source IPs with CloudWatch Logs Insights. (option A)
- Search CloudTrail API events for calls to the NAT gateway. (option B)
- Give every instance an Elastic IP and monitor CloudWatch by instance ID. (option C)
- Use Cost and Usage Report grouped by EC2 instance ID to determine NAT bytes. (option D)
Reveal answer & reasoning
Situation
The need is source-level network traffic attribution behind shared egress infrastructure.
Answer
Reasoning
VPC Flow Logs record traffic metadata at the relevant ENI/subnet/VPC; query source and destination addresses, bytes, ports, and actions to attribute flows to private instance IPs. CloudTrail records API calls, not each data packet. Cost reports may identify NAT gateway processing charges but not necessarily the top private source instances without network telemetry.
Rule of thumb
Network-volume attribution → Flow Logs + query; spend attribution → Cost Explorer/CUR.
Pitfall
Flow Logs are metadata rather than packet capture; they don't record payloads and are not instantaneous packet-by-packet telemetry. Choose sufficient aggregation and retention.
Sketch
Private EC2 IPs → NAT gateway ENI VPC Flow Logs → Logs Insights group by sourceMemory cue
Remember: NAT ENI/subnet Flow Logs → Logs Insights group bytes by source IP → map IP to EC2 instance.
AWS reference: AWS documentation
A company must prevent all users, including administrators/root users of member accounts, from using Amazon Redshift, while leaving other services available. What should it do?
- Attach RedshiftFullAccess to deny users in every member account. (option A)
- Attach an SCP denying Redshift actions to the organization root (or the relevant OUs/accounts). (option B)
- Create IAM denies in each member account for every user and root user. (option C)
- Replace the default SCP with a policy that denies all actions. (option D)
Reveal answer & reasoning
Situation
The restriction must be centrally enforced even against member-account administrators.
Answer
Reasoning
An SCP can set the maximum permissions available to principals in member accounts, including member-account root users, so a deny for Redshift actions at the organization root/OU blocks the service across those accounts. Attach narrowly scoped deny statements and retain the normal allow policy behavior for other services.
Rule of thumb
Organization-wide service prohibition → SCP Deny at the appropriate organization level.
Pitfall
SCPs do not apply to the Organizations management account. Do not replace the default policy with a blanket deny-all unless a deny-all is genuinely intended; use a targeted Redshift deny.
Sketch
Organizations root/OU → SCP Deny Redshift actions → member accountsMemory cue
Remember: SCP deny Redshift → member identities cannot use Redshift; other permissions remain governed by IAM and other guardrails.
AWS reference: AWS documentation
After an incident, TCP port 80 must be blocked in security groups and compliance must be reported near real time. What should be configured?
- AWS Config's
restricted-common-portsrule with port 80 specified. (option A) - An hourly Lambda that scans all security groups. (option B)
- Amazon Inspector scans security groups and emails reports. (option C)
- Trusted Advisor Red checks with a CloudWatch alarm for unrestricted ports. (option D)
Reveal answer & reasoning
Situation
The requirement is continuous configuration compliance on security group rules and quick visibility of deviations.
Answer
Reasoning
AWS Config managed rules evaluate supported resource configurations as they change or on their configured trigger. Configure restricted-common-ports for port 80 and use Config notifications/remediation if needed. Hourly custom scans are not near real time and Inspector is not the primary security-group configuration compliance engine for this use case.
Rule of thumb
Configuration compliance → AWS Config rule; correction → Config remediation/Automation or controlled event workflow.
Pitfall
Port 80 being open to an internal trusted source may be different from being public. Ensure rule scope and parameters match the actual policy (for example, prohibit all inbound HTTP or only public ingress).
Sketch
Security group configuration → AWS Config `restricted-common-ports` (port 80) → report/notificationMemory cue
Remember: Security-group change → Config evaluates port rule → compliant/noncompliant status → alert/remediate.
AWS reference: AWS documentation · AWS documentation
EC2 instances cannot access S3 through an already created S3 VPC endpoint whose endpoint policy is correct. What common configuration issue should be checked?
- The S3 bucket policy must allow all private IP addresses. (option A)
- The instances' subnet route table is not associated with the S3 gateway endpoint route. (option B)
- S3 Storage Class Analysis is disabled. (option C)
- The instances need Elastic IP addresses. (option D)
Reveal answer & reasoning
Situation
The endpoint exists, but route selection may not direct S3 traffic to it.
Answer
Reasoning
For an S3 gateway endpoint, associate the endpoint with the route tables used by the private subnets. AWS adds routes for the S3 managed prefix list. Also check endpoint policy, bucket policy, DNS, and IAM permissions, but route-table association is the most likely missing piece in this scenario.
Rule of thumb
S3 gateway endpoint works only for subnets using route tables associated with the endpoint.
Pitfall
Gateway endpoints do not use interface endpoint ENIs or private IP addresses assigned to S3. The private route is represented by a prefix-list route target.
Sketch
Private EC2 → associated route table → S3 gateway endpoint → S3Memory cue
Remember: EC2 → subnet route table → S3 prefix-list route to gateway endpoint → S3.
AWS reference: AWS documentation
An Aurora cluster with a writer and reader experiences query latency during demand spikes, including increased memory utilization. What low-disruption change can improve read performance?
- Increase cluster disk capacity. (option A)
- Convert the cluster to multi-master. (option B)
- Add an Aurora Replica to the cluster. (option C)
- Snapshot the cluster and build an entirely new cluster with larger instances. (option D)
Reveal answer & reasoning
Situation
The described writer/reader arrangement suggests a need for more read-serving capacity with minimal downtime.
Answer
for read-heavy load
Reasoning
Adding an Aurora Replica increases reader capacity and lets read traffic be distributed across replicas or the reader endpoint. If the actual bottleneck is writer CPU/memory, a larger instance class or query tuning may be needed instead; replicas do not fix every writer-bound workload.
Rule of thumb
Read throughput bottleneck → add/read-scale replicas; writer-bound bottleneck → tune or scale the writer.
Pitfall
More replicas increase read capacity and cost, but don't automatically relieve write-heavy transactions or a single saturated writer. Confirm Performance Insights and workload type first.
Sketch
Application read requests → Aurora reader endpoint → writer + replica readersMemory cue
Remember: Read query volume high → add Aurora Replica → distribute read traffic through reader endpoint.
AWS reference: AWS documentation
A CloudWatch alarm is repeatedly triggered and remains in ALARM state. What is a plausible explanation?
- The monitored metric remains beyond the configured threshold. (option A)
- Any EC2 instance in a stopped state forces every alarm to ALARM. (option B)
- An alarm requires an IAM role to change state. (option C)
- An unverified SNS topic locks the alarm state. (option D)
Reveal answer & reasoning
Situation
The alarm state tracks evaluated metrics, not whether a notification destination is verified.
Answer
Reasoning
CloudWatch compares metric datapoints with configured thresholds over the evaluation period. If breaching datapoints continue, ALARM is expected. Check the metric, statistic, threshold, missing-data treatment, period, and evaluation periods before assuming a service fault.
Rule of thumb
Persistent ALARM usually means persistent threshold breach or mis-specified metric/dimensions.
Pitfall
An alarm does not need an IAM role to change state. An instance stopping can cause certain metrics to become missing; the configured missing-data treatment determines behavior.
Sketch
CloudWatch metric → threshold/evaluation periods → ALARM or OK → optional SNS notificationMemory cue
Remember: Datapoints > threshold across evaluation window → ALARM; healthy datapoints for required period → OK.
AWS reference: AWS documentation
An application uses a KMS customer-managed key with imported key material, referenced through an alias. Policy requires rotation every six months. What process supports this?
- Replace it with an AWS managed key that rotates every six months and update the alias. (option A)
- Enable automatic rotation every six months on the imported-material key. (option B)
- Delete and re-import new material into the same key as a normal automatic rotation. (option C)
- Create a new KMS key, import new material, and move the alias to the new key. (option D)
Reveal answer & reasoning
Situation
The key uses imported key material, so the normal KMS automatic rotation feature is unavailable for that key type.
Answer
Reasoning
AWS KMS automatic rotation is not supported for keys with imported key material. Create a new key with the new imported material and move the application alias after a controlled migration. Existing ciphertext encrypted under the old key still needs the old key material/key for decryption, unless data is re-encrypted.
Rule of thumb
Imported key material → plan manual key replacement and alias move; retain old-key decrypt capability.
Pitfall
Moving an alias changes future alias resolution; it does not re-encrypt existing data or make old ciphertext decrypt with the new key.
Sketch
Application alias → new KMS key with imported material; old KMS key retained for old ciphertextMemory cue
Remember: New imported material → new KMS key → update alias → verify encryption/decryption paths → retire old key only after migration.
AWS reference: AWS documentation · AWS documentation
An S3 bucket is in us-east-1; users in ap-south-1 need faster uploads and downloads for large files. What should be used?
- Reduce the number of prefixes in the bucket. (option A)
- Create another bucket with the same name in another Region. (option B)
- Enable S3 Transfer Acceleration and use the S3 accelerate endpoint. (option C)
- Change server-side encryption from AES to RSA. (option D)
Reveal answer & reasoning
Situation
Large files travel long distances between clients and the bucket's Region.
Answer
Reasoning
Transfer Acceleration routes uploads/downloads through AWS edge locations and the AWS backbone to the bucket's Region. Test performance with the intended client locations and object sizes. It does not replicate the bucket or change encryption algorithms.
Rule of thumb
Long-distance S3 transfer speed → evaluate Transfer Acceleration and benchmark it.
Pitfall
Transfer Acceleration adds request/data-transfer charges and may not improve every route/file size. It must be enabled and clients must use the accelerate endpoint.
Sketch
Remote client → S3 Transfer Acceleration endpoint → AWS edge/backbone → S3 regionMemory cue
Remember: Client → nearest AWS edge → AWS backbone → regional S3 bucket.
AWS reference: AWS documentation
Under the EC2 shared responsibility model, which TWO activities are AWS's responsibility?
- Patching the guest operating system. (option A)
- Maintaining the underlying network infrastructure. (option B)
- Monitoring EBS volume utilization. (option C)
- Configuring EC2 security groups. (option D)
- Patching the hypervisor. (option E)
Reveal answer & reasoning
Situation
The distinction is between AWS security 'of' the cloud and customer security 'in' the cloud.
Answer
Reasoning
AWS operates data centers, physical networking, and the virtualization layer/hypervisor. Customers manage guest OS patching, security groups, application configuration, data, and most resource-level monitoring. Managed-service responsibility can differ from EC2's model.
Rule of thumb
For EC2: AWS protects physical infrastructure/hypervisor; customer protects guest OS and workload configuration.
Pitfall
Do not generalize EC2 responsibility boundaries to every managed service. As the abstraction level rises, AWS manages more of the stack.
Sketch
AWS data center/network/hypervisor | Customer OS/security groups/app/dataMemory cue
Remember: Physical/network/hypervisor → AWS; guest OS, security groups, data, apps → customer.
AWS reference: AWS documentation
A CloudFormation template creates an Auto Scaling group with user data initialization, but creation fails because the resource wait condition never receives enough signals. What should be changed?
- Set
AssociatePublicIpAddressto true in the launch template. (option A) - Call
cfn-signalat the end of the user-data initialization after setup succeeds. (option B) - Reduce the ASG desired capacity. (option C)
- Open outbound port 8080 in the instance security group. (option D)
Reveal answer & reasoning
Situation
CloudFormation is waiting for proof that instance bootstrap finished successfully.
Answer
Reasoning
Use a CreationPolicy with ResourceSignal and run cfn-signal after the software is installed and healthy. This lets each instance report success/failure and avoids CloudFormation timing out without signals. Check that the instance can reach CloudFormation endpoints and that the signal command reports the intended exit status.
Rule of thumb
ResourceSignal wait → call
cfn-signalafter successful initialization.
Pitfall
Signal too early and CloudFormation may declare success before the application works; forget permissions/network connectivity and the signal may never arrive.
Sketch
CloudFormation CreationPolicy → EC2 user data/bootstrap → `cfn-signal` → stack proceedsMemory cue
Remember: User data installs/configures → health check succeeds → cfn-signal → stack continues.
AWS reference: AWS documentation
Employees have separate standalone AWS accounts that must join the company's central AWS Organization. What should be done?
- Add the accounts using AWS IAM. (option A)
- Log in to each account and directly join the organization without an invitation. (option B)
- Create a new organization in each account and join them to the central organization. (option C)
- Send each standalone account an invitation from the central organization's management account; the account accepts it. (option D)
Reveal answer & reasoning
Situation
Existing accounts need to become member accounts in the central organization.
Answer
Reasoning
The organization's management account invites existing standalone AWS accounts using their account ID or email. An authorized administrator of each invited account must accept the invitation. Plan billing and governance changes because joining changes consolidated billing/policy relationships.
Rule of thumb
Existing account → central organization invitation → invited account accepts.
Pitfall
An account cannot be a member of two organizations simultaneously. Organizations membership is not established by creating IAM users or roles.
Sketch
Company Organizations → invite existing accounts → account owners acceptMemory cue
Remember: Management account sends invite → existing account administrator accepts → account becomes member.
AWS reference: AWS documentation
Across multiple Regions, EC2 security groups must never allow public SSH (0.0.0.0/0), and detected violations must be automatically removed. Which TWO steps are best?
- Use EventBridge to detect security-group changes and invoke a Lambda to modify the group. (option A)
- Create an AWS Config rule that detects security groups allowing SSH from
0.0.0.0/0. (option B) - Use GuardDuty to detect any security group allowing public SSH. (option C)
- Create a Systems Manager Automation document to update/remediate the identified security group rules. (option D)
- Use CloudTrail only to send an SNS notification. (option E)
Reveal answer & reasoning
Situation
The company needs both configuration detection and automatic corrective action across accounts/Regions.
Answer
recommended native remediation pattern
Reasoning
AWS Config evaluates the security-group configuration; configure remediation using an SSM Automation runbook to revoke the dangerous ingress permission. EventBridge+Lambda can also be engineered, but Config + automatic remediation is the direct, auditable compliance pattern among the options. Deploy regionally and aggregate compliance if needed.
Rule of thumb
Detect drift with Config; remediate with a tested, least-privilege runbook.
Pitfall
Do not rely only on GuardDuty, which is threat detection rather than a complete control for every open security-group rule. Test remediation to avoid removing approved administrative access unexpectedly.
Sketch
Security group rule → AWS Config SSH rule → SSM Automation remediation → corrected SGMemory cue
Remember: Rule detects public SSH → NON_COMPLIANT → SSM Automation revokes ingress → Config re-evaluates.
AWS reference: AWS documentation · AWS documentation
A first CloudFormation stack creation ends in ROLLBACK_COMPLETE. Template problems are fixed. How should deployment continue?
- Update the rolled-back stack. (option A)
- Run
validate-templateand the existing stack will resume. (option B) - Execute a change set against the failed stack. (option C)
- Delete the failed stack and create a new stack from the corrected template. (option D)
Reveal answer & reasoning
Situation
The initial stack creation failed and rolled back to a completed rollback state.
Answer
Reasoning
A stack in ROLLBACK_COMPLETE after a failed create generally cannot be updated. Delete it and create a new stack with the corrected template. Preserve diagnostic events/logs before deleting if you need root-cause evidence.
Rule of thumb
Create failure +
ROLLBACK_COMPLETE→ delete then recreate.
Pitfall
validate-template checks template syntax/structure, not whether every resource creation will succeed. Save events before deleting the stack if needed.
Sketch
Failed CREATE → ROLLBACK_COMPLETE → delete stack → create corrected stackMemory cue
Remember: Inspect Events → fix template → delete rollback-complete stack → create new stack.
AWS reference: AWS documentation
An EC2 application writes log files to an S3 bucket. What is the most secure way to grant the instance access?
- Store long-lived access keys in the AMI. (option A)
- Create an IAM user and distribute its keys to the instance. (option B)
- Make the S3 bucket accessible to all EC2 instances. (option C)
- Create an IAM role with the required S3 permissions and attach it to the instance profile. (option D)
Reveal answer & reasoning
Situation
The application needs AWS credentials without embedding secrets into an image or application files.
Answer
Reasoning
An EC2 instance profile delivers temporary role credentials through instance metadata. Grant only the necessary S3 actions on the target bucket/prefix and optionally combine with a bucket policy. Credentials rotate automatically with the role session.
Rule of thumb
EC2 workload identity → instance role; least privilege for the exact bucket/prefix.
Pitfall
Never bake long-lived IAM user keys into AMIs or source code. The role should allow only the specific required operations and object paths.
Sketch
EC2 instance profile → least-privilege S3 role → bucket/prefixMemory cue
Remember: EC2 → instance profile/role → temporary credentials → S3 PutObject to approved prefix.
AWS reference: AWS documentation · AWS documentation
A memory leak is suspected across both EC2 Linux instances and on-premises servers. What is the simplest way to track memory utilization over time for both?
- Install/configure the CloudWatch Agent on both EC2 and on-premises servers to publish memory metrics. (option A)
- Write a custom script or buy third-party software. (option B)
- Use CloudWatch Agent for EC2 and different monitoring software on premises. (option C)
- Put on-premises servers and EC2 instances in Auto Scaling groups. (option D)
Reveal answer & reasoning
Situation
The team needs a common time series view of an OS metric that EC2 basic monitoring does not report by default.
Answer
Reasoning
CloudWatch Agent can collect OS-level memory metrics from EC2 and on-premises/hybrid servers that are configured as managed hosts or agent targets. Publish into a consistent namespace and use the same dashboards/alarms to compare trends.
Rule of thumb
Memory utilization is an OS metric → CloudWatch Agent, not default EC2 hypervisor metrics alone.
Pitfall
EC2 basic monitoring commonly doesn't expose guest memory. Verify the agent config, IAM permissions, namespace, and network connectivity on on-premises nodes.
Sketch
EC2 + on-prem servers → CloudWatch Agent → CloudWatch custom memory metrics → dashboardMemory cue
Remember: CloudWatch Agent on each host → common namespace → compare memory time series/alarms.
AWS reference: AWS documentation
EC2 instances behind a Network Load Balancer cannot be reached from an on-premises data center on port 8081. VPC Flow Logs show the return flow to an ephemeral client port is REJECT. What is the likely cause?
- The EC2 security group does not allow inbound traffic from the NLB. (option A)
- The NLB security group lacks an inbound rule from the data center. (option B)
- The on-premises firewall blocks traffic into the VPC. (option C)
- The subnet network ACL blocks outbound traffic to the client's ephemeral port range. (option D)
Reveal answer & reasoning
Situation
The flow-log evidence shows one direction accepted and the response direction rejected on the ephemeral port.
Answer
Reasoning
Network ACLs are stateless; they must allow both the request port and the return traffic's ephemeral port range. Security groups are stateful. If the REJECT record is the target's response toward the client ephemeral port, inspect NACL egress/return-path rules for that range.
Rule of thumb
Flow direction + destination port + ACCEPT/REJECT reveals which network layer/direction is blocked.
Pitfall
Validate the actual five-tuple and subnet direction from the complete flow-log schema before changing rules. Do not open all ports if a narrower ephemeral range will satisfy the return path.
Sketch
On-prem client → NLB:8081 → EC2 target; return flow → ephemeral port REJECT at NACLMemory cue
Remember: Inbound request accepted → response to ephemeral port rejected → check stateless NACL egress/return range.
AWS reference: AWS documentation · AWS documentation
A Memcached ElastiCache cluster has more traffic and needs a larger node type with more memory. Which API operation applies the change to the existing cluster?
- CreateReplicationGroup with a new CacheNodeType. (option A)
- ModifyCacheParameterGroup with a new CacheNodeType. (option B)
- ModifyCacheCluster for the existing cache cluster. (option C)
- CreateCacheCluster with a new node type and leave the old cluster untouched. (option D)
Reveal answer & reasoning
Situation
The question asks to resize an existing Memcached cluster rather than change parameter values or create a new deployment.
Answer
Reasoning
Use the ElastiCache cluster modification API/console to change CacheNodeType where supported. Plan the impact: Memcached data is cached and generally can be repopulated, but changing node type can trigger replacement/reconfiguration and application cache misses. Redis replication-group procedures are not interchangeable with Memcached cluster operations.
Rule of thumb
Memcached cluster resize → ModifyCacheCluster/modify the existing cluster's node type.
Pitfall
A cache is not durable primary storage. Expect cold-cache effects and ensure the application handles cache misses during or after resizing.
Sketch
Application → Memcached cluster → ModifyCacheCluster(CacheNodeType) → cache repopulatesMemory cue
Remember: Select new node type → modify cluster → monitor node state/cache miss rate/application latency.
AWS reference: AWS documentation
Many EC2 instances upload logs to a third-party service that now allows only one source IP. What should be changed?
- Route private instances through a NAT gateway and give the service the NAT gateway's Elastic IP. (option A)
- Attach one Elastic Network Interface to all instances and whitelist its EIP. (option B)
- Move all instances into one subnet and whitelist the subnet CIDR. (option C)
- Route all instances through an internet gateway and whitelist the gateway IP. (option D)
Reveal answer & reasoning
Situation
Multiple private instances need a common, stable outbound public IPv4 address.
Answer
Reasoning
A NAT gateway in a public subnet can use an Elastic IP and provide a single egress address for instances in private subnets. The third party can whitelist that EIP. Route tables for private subnets must direct default-route internet traffic through the NAT gateway.
Rule of thumb
Single egress public IP for many private IPv4 workloads → NAT gateway + EIP.
Pitfall
An internet gateway does not itself have a single fixed egress address to whitelist for private instances. Avoid public IPs on every workload when a shared controlled egress IP is required.
Sketch
Private EC2 fleet → NAT gateway (EIP) → third-party service whitelistMemory cue
Remember: Private instances → private route 0.0.0.0/0 to NAT → NAT EIP → third party allowlist.
AWS reference: AWS documentation
The security team requires server-side encryption for all new objects uploaded to an S3 bucket. What is the best choice among the listed options?
- Configure the bucket's default encryption for the desired server-side encryption mode. (option A)
- Generate a pre-signed PUT URL that includes an encryption flag and distribute one URL to users. (option B)
- Add the shown policy statement to the IAM user permissions policy to deny unencrypted uploads (the OCR'd policy is malformed and appears to misuse
Principal). (option C)
Reveal answer & reasoning
Situation
The security requirement is encryption at rest for new uploads, not a particular user's upload workflow.
Answer
Reasoning
S3 now automatically applies SSE-S3 to all new object uploads. For a desired SSE-KMS or DSSE-KMS default, configure bucket default encryption. If policy requires a specific customer-managed key or forbids callers from overriding the encryption choice, use a correctly scoped bucket policy with the relevant condition. A Principal element does not belong in an IAM identity policy.
Rule of thumb
Default encryption covers new uploads automatically; use policy enforcement for a specific mandatory encryption configuration.
Pitfall
The source choices are from older S3 guidance. Do not copy the OCR'd JSON into production; it is syntactically and semantically malformed. Enabling default encryption provides encryption, while a separate bucket-policy guardrail may be needed if a specific key/algorithm is mandatory.
Sketch
Client PUT → S3 bucket default encryption → SSE-S3 (or chosen SSE-KMS/DSSE-KMS); optional policy enforcementMemory cue
Remember: Upload → S3 default SSE-S3/SSE-KMS applied; if exact key mandated → bucket policy guardrail.
AWS reference: AWS documentation · AWS documentation
A CloudFormation template creating a new VPC for each customer application fails when creating a new customer environment. What is the most likely cause?
- The template is not the latest version. (option A)
- The AMI is unavailable in the selected Region. (option B)
- The account/Region has reached its VPC quota. (option C)
- Scheduled Region maintenance makes the Region temporarily unavailable. (option D)
Reveal answer & reasoning
Situation
A repeatable template that has worked before fails when provisioning yet another VPC in the same account and Region.
Answer
Reasoning
VPC and related networking resources have service quotas. If the account has reached the VPC quota, another stack's VPC creation fails until resources are removed or the quota increased. Confirm the failed resource and CloudFormation event before concluding that quota is the cause.
Rule of thumb
Repeated per-customer VPC deployment → check VPC/service quotas first.
Pitfall
A generic stack failure is not proof of a quota issue; use CloudFormation Events and Service Quotas to verify. Templates can also fail due to CIDR overlap, permissions, or unavailable AMIs.
Sketch
CloudFormation VPC resource → Service Quotas check → free capacity or request quota increaseMemory cue
Remember: Stack fails at VPC create → inspect event/error → compare current usage with quota → request/clean up.
AWS reference: AWS documentation
A CloudOps Engineer needs to identify cost savings by downsizing underutilized EC2 instances with minimal effort. What should be used?
- AWS Cost Explorer rightsizing recommendations (and current Cost Optimization Hub where appropriate). (option A)
- A custom Lambda that calculates CPU utilization. (option B)
- Manually inspect all CloudWatch EC2 metrics. (option C)
- AWS Budgets alerts for underutilized instances. (option D)
Reveal answer & reasoning
Situation
This is a rightsizing analysis task across EC2 usage, not simply a budget threshold alert.
Answer
Reasoning
Cost Explorer's rightsizing recommendations analyze EC2 usage and identify downsizing/termination opportunities. Current AWS guidance also points to Cost Optimization Hub for broader optimization opportunities. Validate memory, network, disk, seasonality, and performance needs before applying recommendations.
Rule of thumb
Rightsizing with low effort → Cost Explorer/Cost Optimization Hub.
Pitfall
Low average CPU alone does not prove an instance is safe to downsize. Check peak demand, memory, I/O, workload schedule, and business SLAs.
Sketch
EC2 usage data → Cost Explorer/Cost Optimization Hub → savings candidate → validate then resizeMemory cue
Remember: Usage history → rightsizing recommendation → engineer validates → resize with rollback plan.
AWS reference: AWS documentation
A CloudFormation-deployed app uses EC2 in an Auto Scaling group behind an ALB. A new version must be deployed without DNS changes and with rollback support. Which listed option is best?
- Use lifecycle hooks to deploy the new version on new instances and mark them healthy when ready. (option A)
- Build a new AMI and swap the launch configuration without a managed rollout policy. (option B)
- Use CloudFormation's AutoScalingReplacingUpdate strategy so the ASG is replaced and rollback can retain the old group until the new one succeeds. (option C)
- Deploy a second stack with a different ALB and change DNS to cut over. (option D)
Reveal answer & reasoning
Situation
The public traffic entry point should remain stable while application capacity is updated and failed deployments can be rolled back.
Answer
closest listed choice; in practice choose a suitable rolling/instance-refresh strategy where appropriate
Reasoning
CloudFormation supports replacing the Auto Scaling group while retaining the old group until the new one succeeds, when configured with AutoScalingReplacingUpdate/creation signals. For a normal in-place fleet rollout, a rolling update or Auto Scaling instance refresh may be safer and more efficient. Keep the ALB/DNS name stable and validate new instances before shifting traffic.
Rule of thumb
Stable ALB/DNS + health-checked capacity replacement + rollback guardrails.
Pitfall
The option wording is not the only modern deployment pattern. Use AutoScalingRollingUpdate or instance refresh for a rolling deployment where appropriate; full ASG replacement can temporarily double capacity/cost and requires correct target-group wiring.
Sketch
Stable DNS → ALB → current ASG; CloudFormation safely replaces/updates the ASG with health checks and rollbackMemory cue
Remember: Provision replacement capacity → wait for success signals/healthy targets → shift/remove old capacity; on failure retain/restore old capacity.
AWS reference: AWS documentation · AWS documentation
A malicious IP must be explicitly denied for both inbound and outbound traffic across the VPC's subnet resources immediately. What is the quickest fit among the choices?
- Install host-based firewalls on every EC2 instance. (option A)
- Remove the internet gateway and replace it with NAT. (option B)
- Add deny rules to the network ACLs associated with all relevant subnets. (option C)
- Add deny rules to EC2 security groups. (option D)
Reveal answer & reasoning
Situation
The rule must deny a specific IP in both directions across subnet traffic.
Answer
Reasoning
Network ACLs are stateless and support explicit DENY entries, so the IP can be blocked at subnet boundaries for inbound and outbound traffic. Security groups are stateful allow-only filters and cannot create explicit deny rules. Ensure rule numbers precede broader allow rules and apply the ACL to every relevant subnet.
Rule of thumb
Explicit IP deny at subnet boundary → network ACL, not security group.
Pitfall
NACLs are stateless, so permitted return traffic must also be allowed; a higher-priority rule can shadow the deny if rule numbering is wrong. This only covers traffic through subnets where the ACL is applied.
Sketch
Subnet boundary → NACL inbound DENY + outbound DENY for the malicious IPMemory cue
Remember: Threat IP → NACL deny rule in each direction → verify Flow Logs show REJECT.
AWS reference: AWS documentation
CloudFront fronts an ALB, but mobile users sometimes receive desktop pages. The origin varies content by User-Agent. What should change?
- Forward/include the User-Agent header in CloudFront's origin request/cache configuration and include it in the cache key when responses vary by User-Agent. (option A)
- Add a fixed custom User-Agent header to all origin requests. (option B)
- Enable IPv6 on CloudFront and use a dualstack hostname. (option C)
- Enable IPv6 on the ALB and set CloudFront's origin to dualstack. (option D)
Reveal answer & reasoning
Situation
CloudFront may reuse a cached desktop response for a mobile request because the relevant variation isn't represented in caching behavior.
Answer
Reasoning
If the origin returns different content by User-Agent, configure the cache/origin request policy so the needed header reaches the origin and responses are cached separately where required. Modern best practice is to vary only on necessary headers, cookies, and query strings to avoid fragmenting the cache unnecessarily.
Rule of thumb
If origin response varies by a request property, forward it and account for it in the cache key.
Pitfall
Forwarding a header without adding it to the cache key can still allow the wrong cached variant to be returned. Don't forward every header by default; it reduces cache efficiency.
Sketch
Mobile/desktop viewer → CloudFront cache policy (required device/header variation) → ALB originMemory cue
Remember: Mobile/Desktop request → cache key varies on required device signal → correct origin response/cache variant.
AWS reference: AWS documentation
Systems Manager Patch Manager runs scheduled patches, but users report poor response times while patching. What minimizes impact?
- Create a patched AMI and deploy it to exactly 10% of the fleet through a maintenance-window option. (option A)
- Configure the maintenance-window task's concurrency to patch 10% of instances at a time. (option B)
- Update all instances one by one using an AMI snapshot without automation. (option C)
- Create separate patch groups and update them at different times only. (option D)
Reveal answer & reasoning
Situation
The fleet is being patched simultaneously, consuming CPU/I/O or causing reboots that degrade the service.
Answer
Reasoning
Systems Manager maintenance windows support rate controls, including maximum concurrency as a count or percentage. Limit concurrency (for example, 10%), set an error threshold, and make sure load balancers and Auto Scaling capacity can absorb instances temporarily out of service. The exact percentage depends on fleet size and redundancy.
Rule of thumb
Reduce patch concurrency and use maintenance windows so healthy capacity remains available.
Pitfall
A 10% concurrency setting is not universally safe; use service SLOs, AZ balance, batch size, and error threshold. An immutable AMI/instance refresh can be better for some fleets.
Sketch
Fleet → SSM maintenance window (`MaxConcurrency: 10%`) → staged patch batchesMemory cue
Remember: Maintenance window → patch 10% batch → verify service health → continue until complete.
AWS reference: AWS documentation
A website serves dynamic content through an ALB/EC2 and static content from S3. Users report slow loading. Which TWO actions improve performance?
- Enable Route 53 latency-based routing. (option A)
- Move dynamic content from web servers to S3. (option B)
- Implement EC2 Auto Scaling for the web tier. (option C)
- Add CloudFront caching for static S3 content. (option D)
- Move static content from S3 onto the EC2 web servers. (option E)
Reveal answer & reasoning
Situation
The architecture needs both capacity elasticity for the dynamic tier and edge caching for static assets.
Answer
Reasoning
Auto Scaling adds/removes EC2 application capacity as demand changes. CloudFront caches static objects at edge locations close to users, reducing round trips to S3 and improving latency. Route 53 latency routing is most relevant when multiple regional endpoints are available; it does not cache static content itself.
Rule of thumb
Dynamic throughput → scale the application tier; static global latency → CDN caching.
Pitfall
Do not move static files onto EC2 and thereby compete with dynamic compute. Ensure caching headers/TTLs and invalidation strategy fit content update frequency.
Sketch
Dynamic: Route53/ALB → EC2 ASG; Static: users → CloudFront → S3Memory cue
Remember: Dynamic requests → ALB → ASG; static requests → CloudFront edge cache → S3 origin.
AWS reference: AWS documentation · AWS documentation
SSM Agent and IAM permissions are configured, but Systems Manager does not manage all EC2 instances in one subnet. What should be checked/fixed?
- Verify that instances have the right tags to grant Systems Manager access. (option A)
- Provide private-subnet connectivity to Systems Manager using the required interface VPC endpoints when no NAT/internet path exists. (option B)
- Use IAM Access Analyzer to identify and automatically repair the issue. (option C)
- Reinstall Inventory and wait for the next inventory run. (option D)
Reveal answer & reasoning
Situation
Agent and role are already valid, and failures are correlated to instances in one subnet, pointing toward network path differences.
Answer
assuming private subnet lacks SSM endpoint connectivity
Reasoning
SSM Agent must reach Systems Manager service endpoints. In private subnets without a NAT route, configure the required VPC interface endpoints, endpoint security groups, DNS, and routes. Validate connectivity to the SSM, SSM Messages, and EC2 Messages endpoints appropriate for the Region/agent features.
Rule of thumb
Subnet-specific SSM failures after IAM/agent checks → investigate endpoint/DNS/network reachability.
Pitfall
Tags can be used to target managed nodes but do not create connectivity. Inventory collects instance metadata; it does not make a disconnected instance become managed.
Sketch
Private subnet EC2 → interface endpoints for Systems Manager → SSM control channelMemory cue
Remember: Agent + role present → endpoint/DNS/SG connectivity check → SSM managed node online.
AWS reference: AWS documentation · AWS documentation
Two VPCs in different Regions must replicate data. All traffic must remain off the public internet and be encrypted in transit. What is a simple solution?
- Use NAT gateways in both VPCs. (option A)
- Create inter-Region VPC peering and update both VPC route tables. (option B)
- Create a managed VPN between the VPCs and configure routes. (option C)
- Use internet gateways as route targets. (option D)
Reveal answer & reasoning
Situation
The VPCs need private IP connectivity across Regions with encryption on the inter-Region path.
Answer
Reasoning
Inter-Region VPC peering provides private routing between VPCs without traversing the public internet, and AWS documents AES-256 encryption at the virtual network layer for inter-Region traffic. Update both route tables and security controls. If policy requires application-controlled encryption or complex transitive routing, add TLS or evaluate Transit Gateway/other architectures.
Rule of thumb
Two VPCs, different Regions, direct private connectivity → inter-Region VPC peering + routes.
Pitfall
VPC peering is non-transitive and CIDR ranges must not overlap. NAT and IGWs are not the private inter-VPC connection mechanism.
Sketch
VPC A route table ↔ inter-Region VPC peering ↔ VPC B route tableMemory cue
Remember: VPC-A private CIDR → inter-Region peering link → VPC-B private CIDR.
AWS reference: AWS documentation · AWS documentation
An Auto Scaling group has not reached maximum capacity but fails to launch instances during busy periods. Which TWO checks can identify the cause?
- Check AWS Health Dashboard for service/outage events. (option A)
- Monitor limits in Systems Manager. (option B)
- Inspect CloudTrail for the result/error of
RunInstancesrequests. (option C) - Use Trusted Advisor to check EC2 service limits. (option D)
- Use Amazon Inspector for instance performance reports. (option E)
Reveal answer & reasoning
Situation
The desired scaling event may be running but instance launch calls can fail because of quota, configuration, IAM, capacity, or subnet constraints.
Answer
best direct diagnostic pair
Reasoning
CloudTrail helps reveal the API request and error code for RunInstances; Trusted Advisor service-limit checks can highlight limit problems. Also inspect Auto Scaling activity history, EC2 launch-template configuration, subnet IP capacity, instance-type capacity, and AWS Health when evidence points to a service event.
Rule of thumb
ASG does not launch → activity history + CloudTrail error + service-quota check.
Pitfall
The maximum capacity not being reached does not prove enough launch capacity exists. A service limit, subnet exhaustion, invalid AMI, KMS permission, or launch-template error can still block launches.
Sketch
ASG activity history → CloudTrail RunInstances error + Trusted Advisor quota checkMemory cue
Remember: Scaling event fails → inspect ASG activity → examine RunInstances error → check quotas/health/capacity.
AWS reference: AWS documentation · AWS documentation
A Route 53 hosted zone and an ALB are in different AWS accounts. What is the most cost-effective and efficient way to point the domain to the ALB?
- Create an A/AAAA alias record pointing directly to the ALB's DNS name and canonical hosted-zone ID. (option A)
- Create another ALB in the hosted-zone account and forward traffic cross-account. (option B)
- Make a replicated hosted zone in the ALB account. (option C)
- Create a CNAME pointing to an alias record for the ALB. (option D)
Reveal answer & reasoning
Situation
DNS is centrally managed in one account while the application load balancer belongs to another account.
Answer
Reasoning
Route 53 supports alias records targeting an ELB load balancer in another account. Obtain the load balancer DNS name and canonical hosted-zone ID; the console may not list cross-account targets, so enter the target details manually. Alias records work at the zone apex and avoid an extra CNAME hop.
Rule of thumb
Cross-account ALB DNS → Route 53 alias record; manually enter target DNS and load-balancer hosted-zone ID if not listed.
Pitfall
Do not use the domain's hosted-zone ID where the alias requires the load balancer's canonical hosted-zone ID. The ALB must be accessible to the intended clients.
Sketch
Route 53 hosted zone (account A) → alias record → ALB (account B)Memory cue
Remember: Hosted zone account → alias A/AAAA → ALB DNS in application account.
AWS reference: AWS documentation
An S3 bucket is currently accessible to users in other AWS accounts. It must be accessible only to users in the owning account. What is the best control?
- Move the bucket to S3 One Zone-IA and disable versioning. (option A)
- Use a bucket policy that restricts principals to the owning account. (option B)
- Change the ACL to restrict access to the bucket owner. (option C)
- Create pre-signed URLs for objects. (option D)
Reveal answer & reasoning
Situation
The access boundary must be enforced at the bucket resource policy level for cross-account access.
Answer
Reasoning
Write a bucket policy that grants/permits the intended same-account principals and excludes or denies cross-account principals, taking other policy mechanisms into account. S3 Object Ownership settings can disable ACLs and simplify authorization. Pre-signed URLs can grant temporary access to other parties, the opposite of the goal.
Rule of thumb
Cross-account access restriction → bucket policy and S3 Object Ownership/ACL review.
Pitfall
A policy 'allowing same-account principals' is not always enough if existing resource grants allow other principals; explicit Deny conditions may be required. Review access points and ACLs too.
Sketch
Caller principal → bucket policy account boundary → same-account onlyMemory cue
Remember: Incoming request principal account ID → bucket policy condition → allow/deny.
AWS reference: AWS documentation
A computer on premises pings EC2 172.31.10.10 across a Site-to-Site VPN but gets no reply. Flow Logs show the inbound request ACCEPT and the return packet REJECT. What is the most likely fix?
- Allow inbound traffic from the on-premises host in the EC2 security group. (option A)
- Modify the network ACL to allow outbound traffic to the on-premises host. (option B)
- Modify the network ACL to allow inbound traffic from the on-premises host. (option C)
- Modify the EC2 security group to allow outbound traffic to the on-premises host. (option D)
Reveal answer & reasoning
Situation
The echo request reaches the instance, but the return flow is rejected by a stateless subnet control.
Answer
Reasoning
Network ACLs are stateless, so the return ICMP traffic must be permitted by the outbound NACL rules. Security groups are stateful and automatically allow reply traffic for permitted inbound ICMP, subject to other network controls. The Flow Logs' ACCEPT/REJECT direction points to outbound NACL policy as the issue.
Rule of thumb
Inbound accepted + reply rejected → examine outbound NACL rules and flow direction.
Pitfall
Do not add broad security-group rules without evidence. ICMP needs to be allowed in the correct direction, and NACL rule numbering can override later allows.
Sketch
On-prem ICMP request → EC2 inbound ACCEPT → reply → subnet NACL outbound REJECTMemory cue
Remember: ICMP echo request ACCEPT → reply REJECT → add appropriate outbound NACL allow for the on-prem CIDR/ICMP.
AWS reference: AWS documentation · AWS documentation
No questions match that search.
Cross-question durable memory sheet
| Situation / clue | First service/control to consider | Remember |
|---|---|---|
| SQS backlog grows | EC2 Auto Scaling on backlog per instance | Queue depth is work waiting; CPU alone can mislead. |
| No internet egress allowed | Private subnet route table + egress controls | “Private” is a route configuration, not just no public IP. |
| Root-account hygiene | MFA, no root keys, Trusted Advisor/security review | Root is for tasks that require root. |
| Production HA | Multi-AZ application tier + managed DB HA | HA differs from read scaling. |
| S3 unauthorized attempts | CloudTrail data events and/or server access logs + Athena | Enable the evidence source before querying it. |
| Key rotation policy | AWS Config for detection + controlled remediation | Detecting noncompliance is not the same as changing a key. |
| OS vulnerabilities | Systems Manager Patch Manager | Stage changes and plan for reboots. |
| CloudFront HTTPS | Viewer Protocol Policy + custom hostname/certificate | Viewer-to-edge and edge-to-origin are separate TLS hops. |
| EC2-to-S3 credentials | Instance profile role | No long-lived keys embedded in AMIs. |
| S3 private path | Gateway endpoint + subnet route-table association | Endpoint policy, bucket policy, IAM, and routes all matter. |
| KMS imported key material | New key + alias migration for key replacement | Alias movement does not re-encrypt old ciphertext. |
| Explicit IP deny at subnet edge | Network ACL | NACLs are stateless and support DENY; security groups are stateful allow-only. |
| Config compliance | AWS Config rule + tested remediation | Detection, alerting, and remediation are distinct steps. |
| ASG launch failure | Activity history + CloudTrail API errors + quotas | Maximum capacity not reached does not prove launches can succeed. |
| Slow global static assets | CloudFront caching | CDN for static; Auto Scaling for dynamic throughput. |
Official documentation references
The per-question citations link directly to AWS service documentation. For exam preparation, favor current AWS documentation over memorized third-party answer keys, especially for areas where service defaults and naming have changed (S3 default encryption, AWS IAM Identity Center, KMS key rotation, S3 Glacier storage models, and Auto Scaling deployment mechanisms).
High-yield map
| Question | Main topic | Answer(s) |
|---|---|---|
| 01 | An application uses EC2 instances to process messages from an Am | C |
| 02 | Sensitive workloads must not be able to send traffic to the publ | Awith route-table caveat |
| 03 | A CloudOps Engineer needs to verify that root-user security best | A |
| 04 | A production application currently runs its web interface and My | A |
| 05 | Unauthorized attempts against several S3 buckets must be investi | AB |
| 06 | Company policy requires IAM access keys to be automatically disa | D |
| 07 | A security vulnerability affects a Linux version running on EC2 | C |
| 08 | CloudFront serves www.sample.com. Traffic to CloudFront must u | AE |
| 09 | An RDS for MySQL database is slow during peak load. CloudWatch C | A |
| 10 | Deploy a web application on EC2 behind an ALB, with a separate E | B |
| 11 | AWS notifies a CloudOps Engineer that an EBS-backed EC2 instance | D |
| 12 | During migration, unnecessary objects were written to an S3 buck | BE |
| 13 | An administrator cannot find a custom-Linux-AMI EC2 instance in | AC |
| 14 | AWS Single Sign-On (now IAM Identity Center) has been enabled in | A |
| 15 | An ALB-backed website receives repeated 404 requests from one so | B |
| 16 | An EC2 instance transitions from pending to terminated immed | D |
| 17 | A fleet is steady most of the day but has a predictable two-hour | B |
| 18 | EC2 instances must lose public IP addresses but still reach S3 a | BC |
| 19 | A security policy says all EBS volumes must use a specific KMS c | B |
| 20 | A hybrid application needs encryption at rest and encrypted traf | BCapplication/data encryption pairing |
| 21 | Lambda functions access an RDS database, but credentials are har | C |
| 22 | A web app on one EC2 instance needs a stable public IP for a dom | BE |
| 23 | An administrator can SSH into an EC2 instance from the corporate | C |
| 24 | Each AWS WAF-protected request contains a header with the front- | D |
| 25 | An S3 static website returns HTTP 403 Forbidden even though stat | C |
| 26 | A new member account is created through AWS Organizations. How a | B |
| 27 | The virtual machine running an AWS Storage Gateway Volume Gatewa | Cgateway service stopped, VM rebooted, gateway restarted |
| 28 | An ALB has EC2 targets in an Auto Scaling group. Create a CloudW | A |
| 29 | Data must be archived for at least seven years using Amazon S3 G | B |
| 30 | EC2 instances have specific tags and only a group of users shoul | BD |
| 31 | A company needs to see how Reserved Instance discounts are alloc | D |
| 32 | CloudWatch Agent sends custom metrics to a custom namespace. How | DAA is the same workflow in compressed form |
| 33 | A global static S3 website begins receiving HTTP 503 Service Una | D |
| 34 | Private EC2 instances use a NAT gateway to reach peers on the in | A |
| 35 | A company must prevent all users, including administrators/root | B |
| 36 | After an incident, TCP port 80 must be blocked in security group | A |
| 37 | EC2 instances cannot access S3 through an already created S3 VPC | B |
| 38 | An Aurora cluster with a writer and reader experiences query lat | Cfor read-heavy load |
| 39 | A CloudWatch alarm is repeatedly triggered and remains in ALARM | A |
| 40 | An application uses a KMS customer-managed key with imported key | D |
| 41 | An S3 bucket is in us-east-1; users in ap-south-1 need faste | C |
| 42 | Under the EC2 shared responsibility model, which TWO activities | BE |
| 43 | A CloudFormation template creates an Auto Scaling group with use | B |
| 44 | Employees have separate standalone AWS accounts that must join t | D |
| 45 | Across multiple Regions, EC2 security groups must never allow pu | BDrecommended native remediation pattern |
| 46 | A first CloudFormation stack creation ends in `ROLLBACK_COMPLETE | D |
| 47 | An EC2 application writes log files to an S3 bucket. What is the | D |
| 48 | A memory leak is suspected across both EC2 Linux instances and o | A |
| 49 | EC2 instances behind a Network Load Balancer cannot be reached f | D |
| 50 | A Memcached ElastiCache cluster has more traffic and needs a lar | C |
| 51 | Many EC2 instances upload logs to a third-party service that now | A |
| 52 | The security team requires server-side encryption for all new ob | A |
| 53 | A CloudFormation template creating a new VPC for each customer a | C |
| 54 | A CloudOps Engineer needs to identify cost savings by downsizing | A |
| 55 | A CloudFormation-deployed app uses EC2 in an Auto Scaling group | Cclosest listed choice; in practice choose a suitable rolling/instance-refresh strategy where appropriate |
| 56 | A malicious IP must be explicitly denied for both inbound and ou | C |
| 57 | CloudFront fronts an ALB, but mobile users sometimes receive des | A |
| 58 | Systems Manager Patch Manager runs scheduled patches, but users | B |
| 59 | A website serves dynamic content through an ALB/EC2 and static c | CD |
| 60 | SSM Agent and IAM permissions are configured, but Systems Manage | Bassuming private subnet lacks SSM endpoint connectivity |
| 61 | Two VPCs in different Regions must replicate data. All traffic m | B |
| 62 | An Auto Scaling group has not reached maximum capacity but fails | CDbest direct diagnostic pair |
| 63 | A Route 53 hosted zone and an ALB are in different AWS accounts. | A |
| 64 | An S3 bucket is currently accessible to users in other AWS accou | B |
| 65 | A computer on premises pings EC2 172.31.10.10 across a Site-to | B |