PHP2UNI: Building Unikernels using Scripting Language Transpilation

2 downloads 128 Views 314KB Size Report
Scripting Language Transpilation ... Unikernel supported languages: OCaml, C++, Haskell etc… ... We explored the use o
PHP2UNI: Building Unikernels using Scripting Language Transpilation Thomas Pasquier, David Eyers, Jean Bacon Harvard University, University of Otago, University of Cambridge

Plan - Introduce Unikernel

- Present our project

2

Plan - Introduce Unikernel

- Present our project

3

The good old cloud -

Cloud workloads greatly resemble their predecessors Applications with full stacks (OS, utilities, libraries etc…) Could run on hardware, but instead run on hypervisor VMs are large Work but not really efficient Dozens of VMs per physical machine

4

What was needed? -

Easier to deploy Smaller footprint, less duplication Faster startup Transient service Higher level of security 1000s of VMs per physical machines

5

Containers -

Great job in regards of deployment Smaller footprint Can run many more instances per physical machine Payload and host kernel must match Security issues -

Linux Kernel adding new container support features every release Large attack surface For security run your container… in a VM. Becomes just a packaging tool?

6

What is Unikernel? - Library OS: -

-

Your application is your OS

Execute directly on top of the hypervisor Only required OS components are included Small footprint Small attack surface Extremely fast deployment and migration

7

Unikernels - Applications run directly on top of hypervisor - A few implementations: MirageOS, RumpKernel, IncludeOS - Just what is needed to get the job done: -

etc…

Single user, no full stack etc…

8

Not a panacea -

Large disruption There will always be large Apps and Databases Deployment solutions are not there yet Languages supported (C, C++, OCaml etc…) not inline with the vast majority of mundane apps, but… - … useful in a number of domains -

Transient micro-service (small,