Why would a developer choose to use a Virtual Machine over a container solution?
A VM is necessary when the application requires:
Can you develop your own container specific to your application need?
Yes, via a Dockerfile
What does VM stand for?
Virtual Machine
What does a VM virtualize?
The hardware
What does a container virtualize?
The OS Layer of a machine
Which has a faster startup time between VMs and Containers?
Containers (secs/ms) are faster than VMs (mins), because VMs have to start up the OS
What does a hypervisor do?
A hypervisor creates and runs VMs on physical machines and enforces the VM’s isolation.
How do containers use the hypervisor?
They don’t. Containers bypass the hypervisor and go directly to the OS kernel
What primary container advantage makes it ideal for microservices and Auto Scaling on AWS?
Speed and Density. The rapid seconds-to-milliseconds startup time (no OS boot) allows for much faster horizontal scaling (agility) and higher density (cost efficiency) compared to VMs.
What AWS service is used to store and manage your custom container images?
Amazon ECR (Elastic Container Registry). Think of it as Docker Hub managed by AWS.
What does Amazon ECR stand for?
Elastic Container Registry
What does Amazon ECS stand for?
Elastic Container Service
What types of EC2 instances are Virtual Machines?
All of them!
What does Amazon EKS stand for?
Elastic Kubernetes Service
What is the difference between the Control Plane and the Data Plane of a container system?
The control plane is the “brain” or management layer of an orchestration system that makes decisions on scheduling, scaling, and maintaining the desired state of the cluster.
The data plane is the “muscle” (worker) that does the actual running of a task
What is a container image?
A standalone, executable software package that includes everything needed to run an application: code, runtime, system tools, and libraries. It is a static, read-only blueprint.
What is the relationship between a container image and a container?
The container is a running instance of a container image.
The image is the static, read-only blueprint.
Does a container image include your specific application code or just infrastructure specs?
Both
It packages the application code on top of the necessary infrastructure
What AWS service is the primary type of VM?
Amazon EC2 instances.
What AWS services are used to deploy and run containers?
ECS & EKS.
What AWS service is used to store and manage your custom container images?
ECR
What is the role of Kubernetes?
It is an open-source Control Plane
What is the primary difference between ECS and EKS?
The Control Plane.
- ECS is AWS proprietary (simpler, integrated).
- EKS uses the open-source Kubernetes standard (high portability).
What is the main advantage of choosing EKS over ECS?
Portability.
K8s can be moved to other cloud providers