Specialised Operating System designed for the cloud
Fast to boot
Huge Community
Can handle complex topologies (w/ Compose)
Huge attack surface
Big images
No system optimization
Need host machine
Not so simple to use
Docker | Unikernel | |
---|---|---|
Boot time | Fast | Fast |
Community | Huge | 18 personnes (~) |
Complex topologies | Nice ! | Hypervisor's job ! |
Attack surface | Do me ! | Minimal |
Image sizes | What is our mascot again ? | < 70 Mb for Java8 |
Host | Another machine | Xen |
Simple to use | Medium | Easy |
Performance | Good | Optimal |
Network appliances
Performance critical applications (IO)
Hypervisor dependant infrastructures
Short lived/Sandbox environments
Micro-services ?
Clive (Go)
HaLVM (Haskell)
LING (Erlang)
MirageOS (OCaml)
OSv
base: cloudius/osv-openjdk8
cmdline: /java.so -jar /server.jar
build: mvn package
files:
/server.jar: target/echo-1.0-SNAPSHOT-jar-with-dependencies.jar
QEmu
VirtualBox
VMWare
Google Compute Engine
Amazon
https://medium.com/@darrenrush/after-docker-unikernels-and-immutable-infrastructure-93d5a91c849e
https://en.wikipedia.org/wiki/Unikernel
https://queue.acm.org/detail.cfm?id=2566628
https://www.linux.com/news/enterprise/cloud-computing/821243-unikernel-use-cases-containers
http://www.skjegstad.com/blog/2015/03/25/mirageos-vm-per-url-experiment/