Amazon Services Flashcards
multitenancy
sharing physical machines with multiple other users
hypervisor
used to manage and coordinage isolation of multitenant VMs
CaaS
Compute as a Service
scaling
vertical scaling - instances are resizable
EC2
Elastic Compute Cloud
types of EC2 instances
- general purpoe
- compute optimized
- storage optimized
- memory optimized
- accelerated computing
compute optimized instances - uses
- gaming
- hpc
- scientific modeling
memory optimized instances - uses
- high performance DBs
- real time data processing
accelerated computing - uses
- FP calculations
- graphics
- data pattern matching
storage optimized instances - uses
- distributed file systems
- data warehousing
- OLTP (online transactional processing)
storage optimized instances - what is the optimization?
high IOPS - tens of thousands
accelerated computing instances - what is the optimization?
use of hardware accelerators (coprocessors)
EC2 instance pricing types
- on demand (per hour, per second)
- savings plan
- reserved instances
- spot instances
- dedicated host
What is savings plan?
Reduced pricing in exchange for committment to use.
How long are savings plan agreements for?
1 or 3 years
How cheaper can the savings plan be?
Up to 60%.
What are reserved instances used for?
Steady-state workloads or workloads with predictable usage.
How long are reserved instances agreements for?
1 or 3 years.
How cheaper the reserved instances can be?
Up to 72%.
What is the deal with spot instances?
AWS can claim an instance back at any time with 2-minute warning.
What are spot instances good for?
Workflows which are not affected by sudden disruptions.
How cheaper are spot instances?
Up to 90%.
Why someone would choose a dedicated host?
For meeting compliance requirements.
What is a dedicated host?
A physical host, no shared tenancy.
Amazon EC2 Auto Scaling
EC2 service which allows for automatically scaling in response to changing demand.
2x2 types of scaling
- dynamic scaling vs. predictive scaling
- scaling up vs. scaling out
What is dynamic scaling?
Scaling responds to the actual demand.
What is predictive scaling?
Scheduling the right amount of instances based on predicted demand.
What is scaling up?
Adding more power to an instance.
What is scaling out?
Adding more instances.
What can be configured in an Auto Scaling Group?
Minimum capacity, desired capacity, maximum capacity.
Elastic Load Balancing (ELB)
A managed service. A load balancer which routes requests to instances to properly distribute traffic in:
- high performant
- cost efficient
- highly available
- automatically scalable
way.
Features of the ELB
- regional construct (single URL)
- automatically highly available
- automatically scalable (handles additional traffic without additional cost)
- not only for external traffic
- single point of contact to an autoscaling group
Amazon SNS (Simple Notification Service) - features
- send messages to services
- send notifications to end users
- publish/subscribe model (topic + publisher + subscribers)
SNS subscribers include…
- push
- sms
SNS publishers include…
- SQS
- http(s)
- lambda
Amazon SQS (Simple Queue Service) is used for…
sending, storing, receiving messages between software components (at any volume)
Amazon SQS - features
- scales automatically
- reliable
- protects payload
Why would you want to use messaging and queuing
to avoid tight coupling of components -> to achieve loosely coupled architecture
What is the name of the architecture that makes use of messaging and queuing?
Microservice architecture
What is serverless compute?
User cannot access the underlying infrasctructure.
What are the steps to use Amazon Lambda?
- upload code to a lambda function
- configure a trigger
- lambda waits for the trigger
- when the trigger happens, the code is run in a managed environment
What is the runtime limit for Amazon Lambda?
15 minutes
What do you pay for using Amazon Lambda?
For the time the code is running.
Amazon ECS
Elastic Container Service - docker container orchestration tools run on an instance managed by the user
Amazon EKS
Elastic Kubernetes Service
Amazon Fargate
serverless platform for ECS and EKS