M.E.L.I.G. Unikernel and Serverless

Post on 05-Apr-2017

131 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

Transcript

VM -> SERVERLESSMEETUP 2017-03-23

OF IT-INFRASTRUCTURECOMMODITISATION

COMMODITISATION

SHORT HISTORY OF COMPUTE

1960

2000

▸ Mainframes

▸ Minicomputers

▸ Unix Servers/Workstations

▸ Windows/Linux on x86

3

COMMODITISATION

SHORT HISTORY OF COMPUTE

1960

2000

▸ Mainframes

▸ Minicomputers

▸ Unix Servers/Workstations

▸ Windows/Linux on x86

1996 First x86 commodity Linux cluster

4

COMMODITISATION

SHORT HISTORY OF COMPUTE

1960

2000

▸ Mainframes

▸ Minicomputers

▸ Unix Servers/Workstations

▸ Windows/Linux on x86

5

COMMODITISATION

SHORT HISTORY OF COMPUTE

physicalvirtual

1960

2000

today

▸ Mainframes

▸ Minicomputers

▸ Unix Servers/Workstations

▸ Windows/Linux on x86

5

COMMODITISATION

SHORT HISTORY OF COMPUTE

physicalvirtual

1960

2000

today

▸ VMware on blades

▸ Public Cloud

▸ Containers

▸ Serverless

▸ Mainframes

▸ Minicomputers

▸ Unix Servers/Workstations

▸ Windows/Linux on x86

5

TCO

COMMODITISATION

SHORT HISTORY OF COMPUTE

physicalvirtual

1960

2000

today

▸ VMware on blades

▸ Public Cloud

▸ Containers

▸ Serverless

▸ Mainframes

▸ Minicomputers

▸ Unix Servers/Workstations

▸ Windows/Linux on x86

5

COMMODITISATION

COMMODITY ITEMS (SOFTWARE EATS THE WORLD) *

physicalvirtual

▸ Mainframes

▸ Minicomputers

▸ Unix Servers/Workstations

▸ Windows/Linux on x86

▸ VMware on blades

▸ Public Cloud

▸ Containers

▸ Serverless

1960

2000

today

HW SW

HW SW

HW SW

HW SW

SW

SW

* rough estimate

6

VIRTUALIZATION TECHNIQUES

THE RAISE OF VIRTUALIZATION

physicalvirtual

▸ VMware on blades

▸ Public Cloud

▸ Containers

▸ Serverless

1960

2000

today

▸ Mainframes

▸ Minicomputers

▸ Unix Servers/Workstations

▸ Windows/Linux on x86

7

VIRTUALIZATION TECHNIQUES

THE RAISE OF VIRTUALIZATION

physicalvirtual

▸ VMware on blades

▸ Public Cloud

▸ Containers

▸ Serverless

1960

2000

today

▸ Mainframes

▸ Minicomputers

▸ Unix Servers/Workstations

▸ Windows/Linux on x86

7

VIRTUALIZATION TECHNIQUES

TECHNIQUES USED

▸ Virtualization provides 1:n consolidation of machines

SERVER

HOSTKERNEL

HYPERVISORSERVICES

Userland(OS)

KERNEL KERNEL

Userland

SERVICES SERVICES

Traditional Virtualization

Userland

8

VIRTUALIZATION TECHNIQUES

TECHNIQUES USED

▸ Virtualization provides 1:n consolidation of machines

▸ Containerization provides OS-level virtualization

SERVER

HOSTKERNEL

HYPERVISORSERVICES

Userland(OS)

KERNEL KERNEL

Userland

SERVICES SERVICES

Traditional Virtualization

Userland

SERVER

HOSTKERNEL

Userland

App1 App2

Linux Container

UserlandUserland

SERVICES

8

userland

TEXT

hardwareTraditional Virtualization Containerization

application

hardware

userland

TEXT

hardware

userland

application

Traditional Virtualization Containerization

application libs

sys-calls

hardware

userland

TEXT

hardware

kernel

userland

application

Traditional Virtualization Containerization

application libs

sys-calls

hardware

hardware

userland

TEXT

hardware

kernel

userland

application

Traditional Virtualization Containerization

hypervisor

application libs

sys-calls

hardware

hardware

userland

TEXT

hardware

kernel

kernel

userland

application

Traditional Virtualization Containerization

hypervisor

application libs

sys-calls

hardware

hardware

userland

TEXT

hardware

kernel

kernel

userland

application

Traditional Virtualization Containerization

hypervisor

application libs

sys-calls

hardware

hype

r cal

ls

hardware

userland

TEXT

hardware

kernel

kernel

userland

application

Traditional Virtualization Containerization

hypervisor

application libs

sys-calls

hardware

hype

r cal

ls

hardware

virtualization magic (HVM, PV, SR-IOV,

PCI-passthrough, hyper-calls, …)

userland

TEXT

hardware

kernel

kernel

userland

application

Traditional Virtualization Containerization

hypervisor

kernel

application libs

sys-calls

hardware

hype

r cal

ls

hardware

virtualization magic (HVM, PV, SR-IOV,

PCI-passthrough, hyper-calls, …)

userland

TEXT

hardware

kernel

kernel

Container

userland

application

Traditional Virtualization Containerization

lightweight abstractionwith negligible overhead

hypervisor

kernel

application libs

sys-calls

hardware

hype

r cal

ls

hardware

virtualization magic (HVM, PV, SR-IOV,

PCI-passthrough, hyper-calls, …)

userland

TEXT

hardware

kernel

kernel

Container

userland

application

Traditional Virtualization Containerization

lightweight abstractionwith negligible overhead

hypervisor

kernel

application libs

sys-calls

hardware

102

hype

r cal

ls

hardware

virtualization magic (HVM, PV, SR-IOV,

PCI-passthrough, hyper-calls, …)

VIRTUALIZATION TECHNIQUES

TECHNIQUES USED

▸ Virtualization provides 1:n consolidation of machines

▸ Containerization provides OS-level virtualization

SERVER

HOSTKERNEL

HYPERVISORSERVICES

Userland(OS)

KERNEL KERNEL

Userland

SERVICES SERVICES

Traditional Virtualization

Userland

SERVER

HOSTKERNEL

Userland

App1 App2

Linux Container

UserlandUserland

SERVICES

10

VIRTUALIZATION TECHNIQUES

TECHNIQUES USED

▸ Virtualization provides 1:n consolidation of machines

▸ Containerization provides OS-level virtualization

▸ Uni-Kernels combine bin, libs and kernel

SERVER

HOSTKERNEL

HYPERVISORSERVICES

Userland(OS)

KERNEL KERNEL

Userland

SERVICES SERVICES

Traditional Virtualization

Userland

SERVER

HOSTKERNEL

Userland

App1 App2

Linux Container

UserlandUserland

SERVICESUNIKERNEL

SERVER

HOSTKERNEL

OS

Serverless

App1

10

VIRTUALIZATION TECHNIQUES

UNIKERNELS

▸ Extract what is really needed from the OS

▸ Kernel-parts, which the app (libs) uses

▸ No multi-process, multi-user setup

▸ creates a sealed, single-purpose image (VM or HW image)

11

userland

TEXT

hardware

kernel

kernel

Traditional Virtualization

hypervisor

application

hardwareUnikernel

kernel

userland

TEXT

hardware

kernel

kernel

Traditional Virtualization

hypervisor

application

hardwareUnikernel

libs

app

kernel

userland

TEXT

hardware

kernel

kernel

Traditional Virtualization

hypervisor

application

hardwareUnikernel

libs

app

NET

VFS

+ Network + VFS I/O — Multiuser— Multiprocess — All other FS — …

kernel

userland

TEXT

hardware

kernel

kernel

Traditional Virtualization

hypervisor

application

hardwareUnikernel

libs

app

NET

VFS

+ Network + VFS I/O — Multiuser— Multiprocess — All other FS — …

userland

TEXT

hardware

kernel

kernel

Traditional Virtualization

hypervisor

application

hardwareUnikernel

+ Network + VFS I/O — Multiuser— Multiprocess — All other FS — …Unikernel

DEMOUNIKERNELS

SOASOA TO SERVERLESS

SERVICE ORIENTED ARCHITECTURE

SERVICE ORIENTED AMBIGUITY

▸ SOA implies an architecture where applications disappear

▸ SOA is about allowing systems to communicate over standard structure

▸ SOA is all about using (mostly) asynchronous messaging

▸ SOA is about exposing software through web services

https://martinfowler.com/bliki/ServiceOrientedAmbiguity.html

15

MICROSERVICESSOA TO SERVERLESS

MICROSERVICES

SOA DONE RIGHT

▸ run services as distinct processes

▸ communicate over network (HTTP, JSON)

▸ composable pieces

IMG -> https://thenewstack.io/the-new-stack-podcast-show-2-the-rise-of-microservices-in-the-paas-world/

17

SERVERLESSSOA TO SERVERLESS

SERVERLESS

FROM SERVICE TO FUNCTION

▸ no service-loop

▸ each request is handled individually

▸ by incoming HTTP-call, network package

▸ no state within function itself (lambda)

!K7, Stateless (Album cover)

19

SERVERLESS

HOW TO IMPLEMENT?

▸ pre-staged

▸ Watchdog that loops binary (faas)

▸ Blocking binary run

▸ ad-hoc

▸ fire-up function when requests comes in

AWS Lambda

20

DEMOFAAS

SERVERLESS

HOW TO IMPLEMENT?

▸ Technology

▸ linux container

▸ Docker

▸ special purpose

▸ unikernels

AWS Lambda

22

christian@qnib.org @CQnib

QUESTIONS?Thank you for listening

top related