Architecting on AWS Certification Non-Destructive Testing Methods 2 — Questions and Answers
Question 1: A team wants to test a new Lambda function version in production without routing any customer traffic to it. Which approach allows non-destructive validation?
- Deploy to a separate AWS account and use VPC peering
- Use Lambda aliases with 0% traffic weight on the new version (Correct answer)
- Replace the existing function and monitor CloudWatch alarms
- Use AWS Config rules to validate the function before deployment
Correct answer: Use Lambda aliases with 0% traffic weight on the new version
Lambda weighted aliases let you assign 0% traffic to a new version so it can be invoked directly for testing without affecting live users.
Question 2: Which AWS service lets you inject faults such as CPU stress, network latency, and instance termination into your environment in a controlled, reversible way?
- AWS Systems Manager Run Command
- AWS Fault Injection Service (FIS) (Correct answer)
- Amazon CloudWatch Synthetics
- AWS Config
Correct answer: AWS Fault Injection Service (FIS)
AWS Fault Injection Service (FIS) is purpose-built for controlled chaos experiments that can be stopped at any time, making it the non-destructive fault-injection tool on AWS.
Question 3: An architect needs to validate API Gateway changes without impacting the live stage. What is the best non-destructive option?
- Deploy directly to the prod stage and use CloudWatch rollback alarms
- Create a separate stage (e.g., 'test') and use stage variables to point at the new integration (Correct answer)
- Enable API caching and test through the cache layer
- Use Route 53 weighted routing to split traffic between stages
Correct answer: Create a separate stage (e.g., 'test') and use stage variables to point at the new integration
API Gateway stages are independent deployments; a dedicated test stage lets you validate changes without touching the production stage.
Question 4: A company uses CodeDeploy for EC2 deployments. Which deployment configuration ensures that production traffic is never fully redirected until the new version is verified healthy?
- AllAtOnce
- Rolling
- Blue/Green with traffic re-routing delayed until health checks pass (Correct answer)
- In-place with CodeDeploy hooks
Correct answer: Blue/Green with traffic re-routing delayed until health checks pass
Blue/Green deployments keep the original (blue) fleet live until the new (green) fleet passes health checks, then switch traffic — a non-destructive pattern.
Question 5: Which CloudFormation feature lets you preview what changes will be made to existing resources before executing a stack update?
- Stack policies
- Drift detection
- Change sets (Correct answer)
- Stack rollback triggers
Correct answer: Change sets
Change sets display the proposed resource additions, modifications, and deletions so you can review impact before executing the update.
Question 6: A team wants to run load tests against a production-mirrored environment without affecting real users. Which architecture pattern best supports this?
- Run load tests against production during off-peak hours
- Mirror the production environment in a separate AWS account and load-test there (Correct answer)
- Use AWS WAF to block real users during the test window
- Enable AWS Shield Advanced and run tests against the protected endpoint
Correct answer: Mirror the production environment in a separate AWS account and load-test there
A mirrored environment in a separate account provides production-equivalent infrastructure for realistic load testing without any risk to real users.
Question 7: Amazon CloudWatch Synthetics canaries are used primarily to:
- Inject synthetic errors to test alarm thresholds
- Continuously run scripted checks against endpoints to detect regressions without real-user traffic (Correct answer)
- Generate synthetic training data for ML models
- Simulate AWS service failures for resilience testing
Correct answer: Continuously run scripted checks against endpoints to detect regressions without real-user traffic
CloudWatch Synthetics canaries run scheduled scripts that probe your APIs and UIs, catching breakage before real users encounter it.
A team wants to test a new Lambda function version in production without routing any customer traffic to it.
Which approach allows non-destructive validation?