Tweets From Shivam Bhadani
Here, have some highlights:
Highlights
For any student, this is the bare minimum of AWS. Whatever is written in this thread, do these exercises:
- Basics like need of cloud, Regions, Availability Zones.
- EC2
Start instance, SSH, Configure Security Group, EBS Volume
- Application Load Balancer
Attach target group to multiple EC2 instances. Then attach this target group to load balancer. Add the security group of load balancer to EC2. Now, all the traffic goes from load balancer. This is the simplest way of horizontal scaling.
- AMI
Package all things like OS, Code, Root Volm etc into an AMI Snapshot then launch any EC2 instance using this AMI.
- IAM
- S3 (Buckets and how to push static files from backend app in this)
- Cloudfront
This is the CDN used to cash static objects like images, videos, html, css files. Connect your S3 store to cloudfront then access static files using CDN.
- VPC
This is the service where u will get the actual feel of AWS.
Launch VPC in a region. Inside that VPC, launch subnets (public and private). Now, launch EC2 instance inside these subnets.
Learn about Route Tables, Internet Gateway, NAT.
In security, learn about Security Group, NACL, VPC Peering.
SSH by jumping servers.
- Auto Scaling
Earlier we launched multiple EC2 instances and attached a load balancer, but now we will do auto scaling means no. of servers dynamically change based on traffic and CPU usage.
You can do this using 2 ways:
- EBS. Using this u can create Auto Scaling Groups (ASGs) in few clicks without overhead.
- Manually configuring ASGs by creating AMI -> Launch Template -> Start Script and attach load balancer.
- Serverless (Lambda)
Earlier in EC2, server was ON for all the time and money is charged on the basis of how much time your instance was running, but in this, server will cold start whenever user requests. And when no one is using your app, server will be OFF and you will not charged for that. Basically, it charges based on how many hits on the server.
Everything like scaling etc will be handled by AWS, u don’t need to do anything.
But we have to write our app based on lambda syntax which is different from expressjs, FastAPI etc. Convert your code into lambda then deploy it. This is the easiest method of deployment.
- ECS
Docker containers are deployed on ECS.
- EKS
This is the service for kubernetes.
Process finished with exit code 0