Which solution will meet these requirements with the LEAST administrative overhead?
Migrate the web application to two Amazon EC2 instances across two Availability Zones behind an Application Load Balancer. Migrate the database to Amazon RDS for Microsoft SQL Server with read replicas in both Availability Zones.
Migrate the web application to an Amazon EC2 instance that runs in an Auto Scaling group across two Availability Zones behind an Application Load Balancer. Migrate the database to two EC2 instances across separate AWS Regions with database replication.
Migrate the web application to Amazon EC2 instances that run in an Auto Scaling group across two Availability Zones behind an Application Load Balancer. Migrate the database to Amazon RDS with Multi-AZ deployment.
Migrate the web application to three Amazon EC2 instances across three Availability Zones behind an Application Load Balancer. Migrate the database to three EC2 instances across three Availability Zones.
Explanations:
While migrating the web application to two EC2 instances with an Application Load Balancer and using RDS with read replicas provides some level of availability, it lacks the automatic scaling capabilities needed for high traffic during promotional events. Additionally, read replicas only handle read traffic, not write traffic, which may limit performance during high demand.
This option involves using two EC2 instances across separate AWS Regions, which increases complexity and administrative overhead due to cross-region database replication and management. This setup may also lead to increased latency and does not provide a highly available solution for the database.
This option provides a scalable and highly available solution. Using an Auto Scaling group for the web application across two Availability Zones allows the infrastructure to automatically adjust to traffic demands. Additionally, migrating the database to Amazon RDS with Multi-AZ deployment ensures high availability and failover support, minimizing administrative overhead while ensuring robust performance during peak traffic.
While having three EC2 instances across three Availability Zones increases availability, it does not utilize an Auto Scaling group for dynamic scaling and requires more administrative effort to manage instances. Furthermore, using EC2 instances for the database increases complexity and does not provide the automated management features of RDS, making it less optimal.