Change in Delivery Models

Cloud Delivery models can apply to all Cloud Deployment Models (aka on premise and off premise)

Evolution of computing…

The Evolution of the Application

The Challenge

What is a Linux Container?

  • Linux Containers (LXC) are a lightweight virtual machine (VM) that let you run on a Linux Kernel without a Hypervisor.
  • A container consists of (in the form of processes): ‒ Linux OS. ‒ Single or Multiple applications
  • A container is a group of processes on a Linux machine. ‒ Those processes form an isolated environment. ‒ Inside the container, it looks like a VM. ‒ Outside the container, it looks like normal processes running on the machine.
  • They enable multiple isolated Linux systems to run on a single control host.

Container Basics

  • Hypervisors are based on emulation of the Hardware
  • Containers are about virtualizing the Operating System subsystems
  • Containers: Single Kernel
  • Hypervisors: Multiple Kernels
  • The objective of a container is: ‒ to encapsulate a software component and all its dependencies to be portable. ‒ Any compliant runtime can run without any extra dependency regardless of the underlying machine and container contents

Traditional Virtualisation and Containers

Why use a Linux Container?

“A LINUX CONTAINER IS THE NEXT EVOLUTION OF THE VM…”

They are Opensource…

FAST

  • Provision in seconds / milliseconds
  • Near bear metal runtime performance

LIGHTWEIGHT

  • Only a few MB per container (No need for SAN)
  • Just enough Operating System (JeOS)
  • Minimal service penalty for the application

VM’s almost…

  • Own Network, Filesystem, Security & Resources
  • VM-like agility but still classified as virtualisation

FLEXIBLE

  • due to the application being “containerised”
  • Not tied to a hypervisor

New Types of Use Cases

Container Services Engines Provider

  • HFor big websites and applications: ‒ less overhead than Virtual Machines
  • For small websites and applications: ‒ 10-1000x more efficient than Virtual Machines
  • Automatic shutdown when there is no traffic
  • Boot when a HTTP request arrives
  • # Joyent, AWS & Google uses container services engines for Linux Containers to run Containers-as-a-Service (CAAS) offerings which also support Docker / Mesosphere

SUMMARY

  • Linux Containers have arrived.
  • Application Packaging is becoming increasingly important
  • Vendors are responding to make containers ready for production environments. e.g. Red Hat OpenShift, Apache Mesos, Cloudfoundry, Google Kubernetes & Microsoft.
  • Distributed applications are being created with microservices
  • Docker has improved ease of use and image management
  • Virtualization is moving into embedded systems, allowing routers, switches to host network apps. e.g QNAP’s