Monday, August 7, 2023

AWS Evaluation – Lab 2

 Scope 

A scenario to solve a business problem for AWS, draw architectural diagram, implement using terraform, take screenshots of key outputs, upload it the repo. 


Problem Statement 

For the past two years, our Travel platform – a Java web application named Dream Destinations, has been running smoothly on AWS. The application utilizes Amazon S3 to host static content and relies on a single web server with a MySQL database running on the same server to handle dynamic content. 

Currently, under normal traffic conditions, CPU usage remains at 60%, and memory usage at 65%, indicating a well-managed system. However, due to our company's growing customer base with acquisition, driven by substantial reference bonuses, and with plans to announce a significant billion-dollar sale in the coming months, we anticipate a surge in traffic and demand. 


Key challenges 

  • Scalability: The platform's current architecture struggles to dynamically adjust to varying user loads, leading to reduced response times and potential downtime during traffic spikes. 
  • Performance Bottlenecks: Certain components of the application experience performance bottlenecks, affecting overall user experience and leading to lower conversion rates. 
  • Cost Optimization: The infrastructure's inefficiencies result in increased operational costs, which need to be addressed while ensuring optimal performance. 
  • High Availability: The platform's resiliency needs improvement to minimize downtime and ensure continuous availability for our global customer base. 

Objective 

To prepare for this imminent expansion and ensure optimal performance, we are proactively reviewing and enhancing our infrastructure. The goal is to accommodate the upcoming influx of users while maintaining the high availability, peak performance and reliability that our customers expect. 

 

Deliverables 

  • Detailed architecture design with AWS services and configuration recommendations. You may use draw.io or any tool of your choice 
  • Write terraform code, execute to create the required resources  
  • Upload the terraform code 
  • Upload the following Screen shots 
  • Resources created from respective resource dashboard  

  • plan.out file 

  • tf.state file 

 

Success Criteria 

The project will be considered successful if the following criteria are met: 

  • The new platform demonstrates improved scalability and can handle increased user traffic during peak periods without performance degradation or downtime. 
  • The response times and load handling capacity of critical components show significant improvement. 
  • The platform's availability and resilience improve, minimizing the impact of potential failures or disruptions. 
  • Enhanced security measures are implemented, ensuring compliance with relevant data protection standards. 
  • This project aims to transform our Travel platform into a robust, scalable, and high-performing solution on AWS, empowering us to deliver an exceptional shopping experience to our customers, while also achieving cost-efficiency and maintaining top-notch security.        

 

Tools needed 

Install these tools before the start of the event 

  • IDE ( VS Code, Intellj, Atom) – as per your preference 

  • GIT CLI 

  • Terraform CLI7 

Github Repo: https://github.com/

Folder Structure    

  • Ecommerce-<FirstName>-<SecondName 

  •     TerraformCode 
       [Please add meaningful commit messages] 

  •       Output  

  • Screenshots as detailed above 

  •       Architecture 

  • <*draw.io file> or equivalent file 

Result 

  • Detailed architecture design with AWS services and configuration recommendations. You may use draw.io or any tool of your choice  
  • Write terraform code, execute to create the required resources   
  • Upload the terraform code  
  • Upload the following Screen shots  
  • Resources created from respective resource dashboard   
  • plan.out file  
  • tf.state file  
  • Write the terraform code for all the pieces  
  • Have a gitignore file to ignore .tfstate files and .terraform directory 
  • Run the Terraform code to provision resources in the AWS Account 
  • Execute the terraform code and take screenshots of key services/outputs. 
  • Take full browser screenshot with SSO Login / email on the top right corner of AWS Console. 

 

 

FAQs 

  • Duration 
  • 3 hours once they start. 
  • Lab should be taken in office.
  • HR can initiate a teams meeting and record video / audio with candidates screen share.

No comments:

Post a Comment

Autistic Child Story

 I dare you not to cry.  My son Andrew will never get married, have his own children, drive a car, so many things, BUT he is happy & hea...