ECS, Lambda, Batch, Lightsail Flashcards
What is Docker?
A software development platform used to deploy apps that are packaged in containers that can be run on any OS
What are the benefits of containers?
Can be assured that there will be no compatibility issues, you can run on any machines, there will be predictable behaviour, you can scale container-based deployments up and down very quickly
What are 2 main places that you can find base Docker images?
Public: Docker Hub
Private: Amazon Elastic Container Registry
What is AWS ECS?
Elastic Container Service. Allows you to launch Docker containers on AWS.
Unmanaged - you have to provision and manage the infrastructure
What is AWS Fargate?
A managed service for launching Docker containers on AWS.
Since it is managed, you don’t have to worry about provisioning the infrastructure since it is serverless
Explain the idea of ‘serverless’ computing
The idea that developers don’t have to manage servers any more - instead, the server provisioning and right-sizing is taken care of by the cloud provider.
What are you managing with AWS Lambda? How does this differ to EC2?
With Lambda, you are managing a function that triggers the deployment or provisioning of servers when needed. This is different from EC2 as in EC2, even if we aren’t using the server it will still be running
Name 4 benefits of using Lambda (7 total)
- Easy pricing: pay per request and compute time, pretty large free tier
- Lots of integrations with several AWS services
- Event-driven: functions get invoked by AWS when needed
- Integrated with many programming languages
- Easy monitoring through AWS cloudwatch
- Easy to get more resources per functions
- Increasing RAM will also improve CPU and network
What is API Gateway?
A fully managed service for developers that allows them to easily create, publish, maintain, and monitor secure APIs.
What are ‘batch’ jobs?
Jobs with a defined start and end, as opposed to a continuous or streaming job
What is the main selling point of AWS Batch?
It is very convenient - you can submit or schedule a batch job and AWS Batch will do the rest - there is very little management on your end
What is the backend architecture of AWS Batch?
Batch jobs are defined as Docker images and then run on Elastic Container Service
What is Lightsail?
A service that simplifies the deployment of servers, databases, storage and networking intended for people with little cloud experience