Date post: | 26-Jun-2015 |
Category: |
Technology |
Upload: | jakub-krajcovic |
View: | 367 times |
Download: | 1 times |
Bringing the application to the data
Changing the world with ZeroVM and Swift
The Genesis
3RACKSPACE® HOSTING | WWW.RACKSPACE.COM
Google Native Client (NaCl)
• Created for enabling safe client-side execution of code for Chromium
• Combines memory segmentation with run-time disassembly
• Near-native run speeds – much faster than inline instruction checking
What is ZeroVM
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
The (sort of) Plain English Description
ZeroVM creates a secure isolated execution environment that allows users to run a single application
or program.
Service providers can leverage ZeroVM to allow their users to run applications inside of multi-tenant systems.
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
Some Technical Details
• Based on the Chromium Native Client (NaCl) project
• Leverages ZeroMQ ZBroker (networked named pipes)
• Includes a full compiler toolchain
• ZRT provides a subset of the POSIX API
• ZRT also includes a port of the CPython interpreter
8RACKSPACE® HOSTING | WWW.RACKSPACE.COM
NaCl vs ZeroVM
• ZeroVM retains the same restrictions as NaCl
• ZeroVM retains the disassembly checking
• ZeroVM comes with its own runtime environment: ZRT
• Files represent input and output in true UNIX fashion
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
ZeroVM
Threads
Concurrency
NICs
Filesystems
1
0
0
0
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
ZeroVM Principles
Small, Light, Fast
Functional
Open Source
Secure
Hyper-Scalable
Embeddable
Evolution of computing
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
The path to abstraction
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
VM vs. Container vs. ZeroVM
Traditional VM
Shared Hardware
Dedicated Kernel/OS
High Overhead
Slow Startup
(minutes)
Security model
ZeroVM
Shared Hardware
No Kernel/OS
Very Low Overhead
Very Fast Startup
(microseconds)
Security model
Container
Shared Hardware
Shared Kernel/OS
Low Overhead
Fast Startup
(seconds)
Security model
Embedding ZeroVM in Openstack Swift
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
An Artificial Problem
Storage Compute
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
Simplified Swift Architecture
Proxy Node Proxy Node Proxies…
Storage Node
Storage Node
Storage Node
Storage Node
Storage Node
Storage Node
Storage Nodes
…
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
Simplified Swift Architecture with ZeroVM
Proxy Node Proxy Node Proxies…
Storage Node
Storage Node
Storage Node
Storage Node
Storage Node
Storage Node
Storage Nodes
…
ZVMZVMZVM
ZVM ZVMZVM ZVM ZVMZVM ZVM
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
Detailed Architecture Diagram
19RACKSPACE® HOSTING | WWW.RACKSPACE.COM
Using Zerocloud
$ zpm new$ zpm bundle$ zpm deploy wordcount mrwordcount.zapp$ zpm execute wordcount mrwordcount.zapp
execution: groups:
- name: "mrwordcount" path: file://python2.7:python args: "mrwordcount.py" connect: ["reducer"] devices: - name: python2.7 - name: stdout - name: input path: "swift://~/shakespeare/*.txt”
Use Cases
21RACKSPACE® HOSTING | WWW.RACKSPACE.COM
Video Transcoding
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
22RACKSPACE® HOSTING | WWW.RACKSPACE.COM
Log searching
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
23RACKSPACE® HOSTING | WWW.RACKSPACE.COM
Distributed SQL
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
RACKSPACE® HOSTING | WWW.RACKSPACE.COM
Go play
http://github.com/zerovm
http://zerovm.org
http://zebra.zerovm.org
RACKSPACE® HOSTING | © RACKSPACE US, INC. | RACKSPACE® AND FANATICAL SUPPORT® ARE SERVICE MARKS OF RACKSPACE US, INC. REGISTERED IN THE UNITED STATES AND OTHER COUNTRIES. | WWW.RACKSPACE.COM
RACKSPACE® HOSTING | Level 4, 210 George Street | Sydney, NSW 2000
Phone: 1-800-722577 | www.rackspace.com.au