Learn Aws Practitioner Level the Right Way
Post Date : 2023-11-07T08:46:51+07:00
Modified Date : 2023-11-07T08:46:51+07:00
Category: systemdesign aws
Tags: aws
Roadmap
- Introduction to AWS Services
- Cloud concepts
- Amazon EC2
- AWS Compute Services
1. Introduction to AWS Services
- What is cloud computing?
- Pay as you go model?
- The benefits of cloud computing?
- Introduction of AWS Services
- Practice Exams
1.1. What is cloud computing?
A solution to provide IT resources through internet
1.2. Summary
AWS Services:
- Solution to provide IT resources through internet
- Provide solutions for your business through internet: other aws services
- The benefits of Cloud Computing(costs, time, speed and agility)
- Deployment model: cloud-based, on-premises(private cloud), hybrid(cloud-based + on-premises)
Practition Level
2. Cloud concepts
2.1. Cloud Characteristics
2.2. Regions, Availability Zones, Edge Locations
Region and Availability Zone
Region
- Fully independent and isolated
- Resource and service specific
Availability Zones(AZs)
- Consist one or more physically seperated data centers
- Connected through low-latency links
- Fault tolerant
- Allows for high availability
Edge location
2.3 Summary
2.4. AWS Management
You can manage your AWS Service by:
- AWS Management Console ( Web Interface )
- AWS Command Line Interface (CLI)
- AWS SDKs : to access AWS services from popular programming languages
Note:
- The root user should only be used once and be protected with MFA
2.5. Questions and Answers
3. Amazon EC2
3.1. Amazon EC2 Instances
There are 5 types of EC2 Instances
- General purpose: balanced resources(CPU, Memory, Networking, Storage)
- Compute Optimized: optimized for CPU - WebServer/Game Server
- Memory Optimized: optimized for memory - Database
- Accelerated Computing: use accelerate hardwares, eg: GPU - graphic applications/ streaming
- Storage optimized: optimize for high frequency online transaction processing(FOTP) and high input output operations per seconds(IOPS) - Data warehouse/Distributed File System
3.2. Amazon EC2 Pricing
4. AWS Compute Services
4.1 AWS Compute Options
There are 3 type of compute options
- Compute: Amazon EC2
- Container: EKS(Amazon Elastic Kubernetes Service), ECS(Amazon Elastic Container Service)
- Serverless: AWS Lambda
4.1.1. Amazon EC2
You should use when you have:
- compute-intensive or memory-intensive applications
- application that run more than 15 mins
4.1.2. Container
You should use when you have:
- compute-intensive workloads
- a small application that runs under in 15 minutes but is compute intensive
4.1.3. Serverless
You should use when:
- want to focus only on your code and not on infrastructure
- applications less compute intensive
- applications that you are running or building small, simple, or modular
- using multiple AWS services where one service might need to call another service
- applications that don’t run longer than 15 minutes.
4.2. Additional Compute Options
4.2.1. AWS Lambda
Example usecase
A user takes a photograph and uploads that photo to an Amazon S3 bucket.When the image is placed into the bucket, this invokes an event (upload to bucket), which calls the Lambda function. The function runs its code to resize the image and make the image available in different sizes for web, mobile, and tablet interfaces. The lambda function have to : adding the image name into a database, copying the images to another location, or initiating an update to an image on a website.
Practice: build a resize image application
4.2.2. AWS Step Functions
- AWS Step Functions is a fully managed service that you can use to coordinate the components of distributed applications and microservices using visual workflows.