Virtualization, Cloud Computing and Containerization

M. Rocha  

ROP Exploring Computer Science

Virtualization

Virtualization is the process of creating a software-based (or virtual) representation of something rather than a physical one.

Hardware virtualization is used to distribute the computing resources (CPU, Memory, Storage and Network) of one computer into many Virtual Machines (VMs)

V Layer (Hypervisor)

Virtualization & Cloud Computing

Hardware virtualization enables low cost cloud computing

Virtualization v.s Containerization

Containers are very lightweight Virtual Machines with a stripped OS (very basic unix system) and only the Binaries and Libraries necessary to run a specific application 

Is the leading software containerization platform

Most open-source projects and free apps provide docker images on the Docker Hub

You can create docker containers from docker images and run this containers on any system via docker

Application Deployment on AWS with Docker Images

Builds Docker Images When Code Is Updated on GitHub

Docker Images Can Be Stored in The Amazon Elastic Container Repository (ECR)

Amazon's Elastic Container Service (ECS) Creates and Runs Docker Containers from Docker Images

Amazon's Elastic Compute Cloud (EC2) Administers the Resources Needed for ECS

Amazon's ELB Determines if More Resources Are Needed Based On User Demand

Continuous Integration & Deployment System (CI/CD):

DevOps Workflow

AWS Basics

Virtualization and Containerization

By Miguel Rocha

Virtualization and Containerization

Exploring Computer Science: lecture 15

  • 470