cloudcamp justin cormack hypervise my app!

16
Hypervise My App! Justin Cormack @justincormack http://sho.io/hypervise

Upload: chris-purrington

Post on 05-Dec-2014

674 views

Category:

Technology


4 download

DESCRIPTION

 

TRANSCRIPT

Page 1: CloudCamp   justin cormack    hypervise my app!

Hypervise My App!

Justin Cormack @justincormack

http://sho.io/hypervise

Page 2: CloudCamp   justin cormack    hypervise my app!

Hypervisor

Platform as a service is about providing a

hypervisor for applications so they can be

securely isolated on shared systems.

As we shift from virtualising whole

operating systems to just running apps we

need smaller, lighter, faster and more

secure hypervisors.

Page 3: CloudCamp   justin cormack    hypervise my app!

“I once heard that Hypervisors are the living proof of Operating System's

incompetence. And if we think about it, OSes should be able to run services

alongside with each other peacefully. Isolation should be granted, and

excessive resource usage shouldn't be an issue. But because Linux was

never able to provide such isolation, people started to span more physical

servers to isolate services, and when that started to mean idle capacity,

hypervisors kicked in."

Glauber Costa, Parallels

Page 4: CloudCamp   justin cormack    hypervise my app!

Some history

Page 5: CloudCamp   justin cormack    hypervise my app!

Processes

“The only way quick response

can be provided at a

bearable cost is by time-

sharing. That is, the computer

must attend to other

customers while one customer

is reacting to some output.”

John McCarthy, 1 January 1959

Page 8: CloudCamp   justin cormack    hypervise my app!

Library operating systems

•  1995 Exokernel

•  2012 OpenMirage

•  2009 NetBSD rump kernel

•  2012 Dune

•  2013 Drawbridge

Page 9: CloudCamp   justin cormack    hypervise my app!

Three new solutions

Page 10: CloudCamp   justin cormack    hypervise my app!

ZeroVM = processes + Google NaCl

Bought by Rackspace in 2013. Current main use case is for running

untrusted code in Hadoop-style apps.

Page 11: CloudCamp   justin cormack    hypervise my app!

OSv = hardware virtualization + single app JVM sandbox

Founded by ex-Qumranet ex-Redhat engineers, launched 2013

Page 12: CloudCamp   justin cormack    hypervise my app!

Docker = namespacing + ease of use

Page 13: CloudCamp   justin cormack    hypervise my app!

Complexity vs attack surface

insecurity

com

ple

xity

ZeroVM

OSv

Docker

Linux distro

Page 14: CloudCamp   justin cormack    hypervise my app!

x86 virtualization is about basically placing another nearly full kernel, full

of new bugs, on top of a nasty x86 architecture which barely has correct

page protection. Then running your operating system on the other side of

this brand new pile of shit.

You are absolutely deluded, if not stupid, if you think that a worldwide

collection of software engineers who can't write operating systems or

applications without security holes, can then turn around and suddenly

write virtualization layers without security holes. Theo de Raadt

Page 15: CloudCamp   justin cormack    hypervise my app!

Trends

1.  App developers are not experts here

2.  Security historically led by Linux distros

3.  Shifting to new structures and projects

4.  So Redhat is getting involved in Docker fast

5.  A move to simpler (eg CoreOS) is very disruptive

6.  Distros large, slow, not on github

7.  Lots of new code, changing fast

Page 16: CloudCamp   justin cormack    hypervise my app!

Questions?

Justin Cormack @justincormack

http://sho.io/hypervise