ECS section Flashcards
Docker
for deploy app: What is the name of the software development platform that allows you to run applications the same way, regardless of where they are run
Where image are stored
- docker images are stores in docker repositories
- public Docker Hub
- Private: Amazon ECR ( Elastic container registry
ECS: Elastic container service
AWS service allows you to launch Docker containers on AWS, but requires you to provision and maintain the infrastructure
Fargate
- You would like a serverless service to launch Docker containers with no infrastructure to provision.
- Where should you store your private Docker images
- Do not need ec2
- severless
ECR: Elastic container registry
- You store your docker images
- Private docker registry on aws
Severless
- you don’t manage/provision/ see them server ,deploy function as service
- Initially serverless == FaaS (function as a service)
- Serveless service Amazon s3 DynamoDB Fargate Lambda
Lambda
virtual function: It is a computing service that runs code in response to events and automatically manages the computing resources required by that code.
- serverless server in the cloud
- Event drive:happens when needed
- create serverless apl
- short executions: invocation time 15 min
- run on-demand, charged by per call and per duration
- scaling is automated
Benefits: - Easy pricing: invocation by number, and the time * by the RAM provisioned
- Pay per request and compute time
- Free tier 1million Aws lambda request and 400 thousand gbs of computing time
Use case Lamnda
- serverless thumbnail creation
- serverless Cron Job
- support: code language
AWS Batch
A company needs to run thousands of jobs but would like to NOT manage the compute resources.
- Fully managed batch processing at any scales
- Batch will dynamically launch EC2 instance or spot instance
- Batch jobs are defined as docker images and run on ECS
Amazon API gateway
to create Serverless api (Which AWS serverless service can be used by developers to create APIs)
Example: building a serverless API
Batch vs lambda
batch:
- No time limit
- any runtime as long as its package as a docker image
- rely on EBS/ instance store for disk space
- relies on ec2, can be manage by aws
Lambda:
- time limit
- limited runtime
- limited temporary disk space
- serveless
Amazon Lightsail
A complete cloud beginner would like to create a simple application with predictable pricing.)
- with little cloud experience, low and predictable pricing, get started quickly, no configuration
- alway wrong answer