A software development company is setting up its testing environments on AWS. The team wants to deploy identical environments temporarily using templates, delete them when testing is complete to minimize costs, and ensure the system can recover automatically if a virtual server stops working. Which two AWS Cloud design principles should the team follow to meet these requirements?
- Design for failureAnswer
- Disposable resources instead of fixed serversAnswer
- CTightly coupling all database and application layers
- DPre-provisioning a fixed number of physical host servers
- EMaintaining static, persistent environments that are manually patched
Answer
The correct principles are designing for failure and using disposable resources instead of fixed servers.
The correct design principles are designing for failure and using disposable resources instead of fixed servers. Designing for failure ensures that the application is built to handle infrastructure outages and recover automatically, such as when a virtual server stops working. Using disposable resources instead of fixed servers allows the company to deploy identical environments using templates and easily terminate them when testing is finished, reducing costs.
Step-by-Step Solution
Key Concept
AWS Cloud design principles promote system resilience through designing for failure and flexibility through disposable resources.