232k views
4 votes
As part of this assignment, you will create a high-level architecture diagram that uses AWS service icons and arrows to depict an AWS solution for the given scenario. Create your diagram by using a tool like diagrams.net, or you can select a different tool by from the AWS Architecture Icons page by scrolling to the Drawing and diagramming tools section.

Scenario: You have a web application that accepts requests from the internet. Clients can send requests to query for data. When a request comes in, the web application queries a MySQL database and returns the data to the client.
Review criteria
Grading: Students will get 2 points for each of the following items, totaling 18 points:
Does the submission have an architecture diagram attached to it?
Does the submission include a written explanation?
Does the diagram use AWS Regions?
Does the diagram show a network that uses a virtual private cloud (VPC)?
Does the diagram use more than one Availability Zone?
Does the diagram show the use of Amazon EC2, ELB, and Amazon EC2 Auto scaling?
Does the diagram show a relational database?
Does the diagram show multiple subnets in each Availability Zone?
Does the written explanation cover how the network traffic would flow through the different AWS components?
Assignment Instructions
less
Instructions: Design a three-tier architecture that follows AWS best practices by using services such as Amazon Virtual Private Cloud (Amazon VPC), Amazon Elastic Compute Cloud (Amazon EC2), Amazon Relational Database Service (Amazon RDS) with high availability, and Elastic Load Balancing (ELB). Create an architecture diagram that lays out your design, including the networking layer, compute layer, database layer, and anything else that’s needed to accurately depict the architecture. Write a few paragraphs that explain why you chose the AWS services that you used and how they would support the solution for the given scenario. Your explanation must describe how traffic flows through the different AWS components—from the client to the backend database, and back to the client.

1 Answer

2 votes

Final answer:

To design a three-tier architecture for the given scenario, we can use a combination of AWS services such as EC2, ELB, VPC, and RDS. This architecture ensures high availability and scalability for the web application and the database. Traffic flows from the client through the ELB to the EC2 instances, and then to the RDS database.

Step-by-step explanation:

To design a three-tier architecture for the given scenario, we can use a combination of AWS services. Here's an overview of the design:

  1. The web application should be deployed using Amazon EC2 instances in an Auto Scaling group. This ensures high availability and scalability.
  2. An Elastic Load Balancer (ELB) should be placed in front of the EC2 instances to distribute traffic and improve availability.
  3. The EC2 instances should be placed in a Virtual Private Cloud (VPC) that spans multiple Availability Zones. This ensures fault tolerance and disaster recovery.
  4. The MySQL database should be hosted using Amazon RDS, which provides a managed and highly available database service.
  5. The RDS database should be designed as a multi-AZ deployment to ensure high availability in case of an outage in one Availability Zone.

This architecture allows clients to send requests to the web application over the internet. The requests are then forwarded by the ELB to the EC2 instances running the web application. The web application queries the MySQL database hosted on RDS for the requested data and returns it to the client.

Primary Keywords: AWS three-tier architecture, Amazon EC2, Elastic Load Balancer, Virtual Private Cloud, Amazon RDS, high availability

User Rajkumar Vasan
by
8.7k points