AWS & React: Deploy an Auto-Scaling E-Commerce App with ELB


AWS Foundations | Amazon EC2 | EC2 Configuration | AWS Storage (EBS, EFS) | ELB | ASG | Route 53 | ReactJS | E-Commerce

What you will learn

Navigating the AWS Management Console

Securing an AWS account with Multi-Factor Authentication (MFA)

Creating Billing Alerts

Deploying and Configuring EC2 Instances

Creating IAM roles for EC2

Working with Various EC2 Storage Services (EBS, EFS)

Creating EBS Snapshots and Amazon Machine Images (AMIs)

Attaching EC2 Instances to EBS and EFS Storage

Dynamic Workload Distribution using Elastic Load Balancers (ELBs) and Auto Scaling Groups (ASGs)

Routing Traffic through Amazon Route 53 and DNS

Understanding the Foundations of React

Creating a Basic Development Setup for Building a ReactJS App

Building a Customizable E-Commerce App using ReactJS

Description

This course is designed to teach students the foundations of Amazon Web Services (AWS) and React.js. By the end of the course, students will have the skills necessary to build a fully customizable e-commerce site on an Amazon Elastic Compute Cloud (EC2) instance. The entire infrastructure will be highly available and scalable using Elastic Load Balancers (ELBs) and Auto Scaling Groups (ASGs).

The course begins by introducing students to AWS and the various services it offers. This includes a brief overview of the AWS management console and how to navigate it. From there, we delve deeper into the Amazon Elastic Compute Cloud (EC2) service. EC2 will serve as the backbone of the e-commerce site we build using React.JS. Students will learn how to launch and configure EC2 instances, as well as how to connect to them securely using remote connection utilities like PuTTY and Terminal.

Next, we will cover AWS Storage, including Elastic Block Store (EBS) and Elastic File System (EFS). Here, students learn to create and manage storage volumes, and how to securely connect them to EC2 instances. We also explore the different types of storage available on AWS and when to use each one.

After covering the basics, students learn to create Elastic Load Balancers and integrate them with Auto Scaling Groups for workload distribution. Here, we demonstrate how to create a highly available and scalable infrastructure for the e-commerce site which will be built in the last section of the course. The infrastructure will automatically scale based on traffic and overall load. Traffic will only be distributed to healthy nodes in the network, based on parameters that are established during configuration.


Subscribe to latest coupons on our Telegram channel.

Finally, students learn how to build a fully customizable e-commerce site using React.js. Here, students will create and manage a React project, as well as effectively use React components to build a dynamic user interface. We also explore how to integrate the e-commerce site with other AWS services such as AWS storage, to efficiently scale capacity based on application requirements.

Throughout the course, students will work on hands-on projects to apply the concepts they have learned. These projects include building a simple e-commerce site to start and scaling up to a more complex site with advanced features such as product search, and product categories.

By the end of the course, students will have a solid understanding of the basics of AWS and React.js. Students will be able to build a fully functional and customizable e-commerce site on an EC2 instance. This includes having the knowledge and skills necessary to continue learning more advanced AWS and React.js concepts and being able to build out new projects independently.

This course is designed for developers and IT professionals who want to learn how to build scalable and highly available applications on AWS using React.js. No prior experience with AWS or React.js is necessary, but basic understanding of web development and programming concepts is recommended.

English
language

Content

Getting Started with AWS

Introduction
AWS Pricing Foundations
AWS Free Tier Overview
AWS Acceptable Use Policy
AWS Account Registration
AWS Cloud Practitioner Exam – Key Topics
AWS Global vs. Regional Services
Global vs. Regional Services Example
Creating Billing Alerts
AWS Multi-Factor Authentication (MFA)
Activate MFA for the Root User Account
Creating IAM Users and Groups
IAM User Custom Sign-In Link
Configure a Custom Password Policy

Amazon Elastic Compute Cloud (EC2)

Introduction to EC2
EC2 Instance Core Features
EC2 Instance Types
Amazon Machine Images (AMI)
Creating an IAM User for EC2
The EC2 Dashboard
Deploying an EC2 Instance
Deploying an EC2 Instance (Continued)
EC2 Instances Console
Elastic IP (Theory)
Elastic IP (Guide)
EC2 Instance Administration (Guide)
EC2 Instance Launch Templates
Creating an Amazon Machine Image (AMI)
IAM Roles (Theory)
IAM Roles (Practial Guide)
IAM Roles for EC2 (Guide)
Introduction to Security Groups
Security Groups (Guide)
Secure Socket Shell (SSH) Overview
PuTTY (SSH) Client for Windows
EC2 Instance Connect (Guide)

AWS Storage (EC2)

Introduction
Block vs. File. vs Object Storage
Amazon Elastic Block Store (EBS) Overview
Amazon EBS Guide [Part 1]
Amazon EBS Guide [Part 2]
EBS Snapshots Overview
EBS Snapshots (Guide)
Amazon Machine Image (AMI)
Amazon AMI Guide [Part 1]
Amazon AMI Guide [Part 2]
Amazon EC2 Image Builder
Amazon EC2 Image Builder Guide [Part 1]
Amazon EC2 Image Builder Guide [Part 2]
Amazon Elastic File System (EFS)
Deploy an EC2 Instance with Ubuntu (Guide)
Creating an EFS (Guide)
Attach EFS to EC2 (Guide)
Upload Files to EFS via FTP (Guide)
Attach EFS to Second EC2 Instance (Guide)
Account Cleanup

ELB, ASG, Route 53

Introduction
High Availability & Elasticity
Elastic Load Balancer (ELB) Overview
Auto Scaling Groups (ASG)
ELB + ASG Prep: Setup AMI from EC2
ELB Deployment (Guide)
Creating a Launch Template (Guide)
Auto Scaling Groups (Guide)
Auto Scaling Strategies
Dynamic Scaling (Guide)
Step and Simple Scaling (Guide)
Predictive Scaling (Guide)
Creating a Launch Template (Guide)
Virtual Private Cloud (VPC) Guide
Amazon Route 53 & DNS Foundations (Guide)
Route 53 Domain Registration & Routing (Guide)
Route 53 Domain Settings and Hosted Zones
Route 53 DNS Records in the Hosted Zone
Account Clean-Up

Intro to React

Skills Required
What is React?
Hello React
Tools Needed
Code Pen
Intro to JSX

React Project – Build an E-Commerce Store

Project Overview
Scaffolding the Project
Intro to JSON Server
Fetch API
Styling the Store
Rendering the Categories
Binding the Products
Refactor the Fetch API call
Dealing with errors in Fetch API
Tidy the Fetch API call
Styling the Product List
Installing React Router
Fixing the Key Warning
React Router – Detail Page
Fetch API – Get Product By Id
Product Description
Intro to Styled Components
Styled Components – Product Description
Dangerously Set HTML (yeah really)
Refactor the Categories
Refactor the Layout
Refactor the Home Page
Intro to Context in React
UseContext Hook and UseReducer Hook in React
Basket Layout
Implementing the Basket
Implementing Basket Icons
Implementing Basket Total
Finishing the Checkout
Checkout – Fixing the State
Implementing the Order Confirmation
Intro to Local Storage
Implementing Search Results
Better Searching with Debouncing
Validating Forms in React – Part 1
Validating Forms in React – Part 2
Validating Forms in React – Part 3
Validating Forms in React – Part 4
Project Summary