Project 01 – Deploy a multi-tier website on AWS

Problem Statement: Deploying a Custom PHP Website to AWS with functionalities for SQL, NoSQL and file storage

Topics – RDS, SNS, DynamoDB, S3, VPC, EC2, NAT Gateways, Load Balancer and Auto Scaling

Highlights:

1.1 Configuring AWS to send emails for every operation using the website

1.2 Deploying the web application in private subnet with no internet access

1.3 Using Load Balancer to expose the application in the private subnet

1.4 Using NoSQL database for metadata storage

1.5 Using Auto Scaling for varying traffic workloads

Project 02 – Deploying a website for High Availability and High Resilience

Problem Statement: Design an architecture which can automatically scale up and down based on traffic and is de coupled for components like Database, webapp etc.

Topics: Auto Scaling, Target Groups, Load Balancing, RDS, PaaS, Elastic Beanstalk

Highlights:

2.1 Designing Architectures which are self-healing and auto scale

2.2 Load Balancing across multiple instances using Load Balancer

2.3 Deploying AWS RDS for connecting to Elastic Beanstalk

Project 03 – Sending Notifications to patients using push notifications

Problem Statement – Design an architecture on AWS, which can send notifications to patients based on Doctor Feedback

Topics: AWS SNS, VPC, EC2

Highlights:

3.1 Sending messages through SNS for resiliency

3.2 Integrating EC2 and SNS for message storing

3.3 Securing the instances using Private and Public subnets in VPC.

Case Study 01 – Using different operations on EC2 and EBS

Problem Statement: Replicate EC2 instances to other regions for High Availability, extending the size of EBS volumes without losing data

Topics – EC2, EBS, AMIs

Highlights:

1.1 Copying EC2 instance to another region

1.2 Scaling EBS Volumes

1.3 Mounting the same EBS Volumes to different EC2 instances one at a time

Case Study 02 – Autoscaling compute capacity in AWS

Problem Statement: Autoscaling and Load Balancing EC2 instances in AWS based on different metrics. Routing custom domain to AWS resources

Topics – Autoscaling, Load Balancing, Route 53

Highlights:

2.1 Load Balancing among multiple EC2 instances

2.2 Scaling up and scaling down instances automatically using Autoscaling

2.3 Defining metrics for Autoscaling instances

2.4 Routing custom domain to AWS resources

Case Study 03 – Creating custom VPCs in AWS

Problem Statement: Create a custom VPC in AWS, with multiple subnets having private and public access

Topics: VPC, Subnets, Internet Gateway, NAT Gateway, Route Tables

Highlights:

3.1 Creating a custom VPC with various subnets

3.2 Configuring routes to the subnets

3.3 Using and configuring NAT Gateways

Case Study 04 – Using AWS S3 for Lifecycle Access Management

Problem Statement: Moving artifacts from on-premise to S3 in the most cost efficient manner

Topics: Lifecycle Management, Glacier, Access Tiers, Event in S3

Highlights:

4.1 Creating Lifecycle rules for S3 objects

4.2 Hosting Static Website

4.3 Using Route 53

Case Study 05 – Highly available relational database in AWS

Problem Statement: Create a highly available and scalable AWS Database service in AWS using RDS

Topics – Multi Region Deployment, High Availability, RDS, Backups

Highlights:

5.1 Build a highly scalable database

5.2 Creating Database Architecture

5.3 Collect data for real time analysis

5.4 Resolving Latency Issues

Case Study 06 – CloudFormation for Infrastructure as a Code

Problem Statement: Provisioning AWS Resources using AWS CloudFormation

Topics: CloudFormation, VPC, Route 53, RDS

Highlights:

6.1 Using CloudFormation to deploy resources

6.2 Defining rules for deletion using IaC

6.3 Minimize deployment time

Case Study 07 – Administering user access using AWS IAM

Problem Statement: Creating users for defining granular access to different users

Topics – AWS IAM Users, IAM Groups, Policies

Highlights:

7.1 Creating users in IAM

7.2 Defining custom policies

7.3 Adding users to groups

Case Study 08 – Appplication Services in AWS and Configuration Management

Problem Statement: Using application services in AWS to deploy code, configuration management using OpsWorks

Topics: Elastic Beanstalk, AWS Lambda, SNS

Highlights:

8.1 Deploying code to AWS Lambda

8.2 Deploying webapp to Elastic Beanstalk

8.3 Configuration Management using OpsWorks