SLIDE 1
OSv - A Modern Semi-POSIX LibraryOS Glauber Costa, Lead Engineer - - PowerPoint PPT Presentation
OSv - A Modern Semi-POSIX LibraryOS Glauber Costa, Lead Engineer - - PowerPoint PPT Presentation
OSv - A Modern Semi-POSIX LibraryOS Glauber Costa, Lead Engineer glommer@cloudius-systems.com Typical Cloud Stack Application Runtime Protection Operating System and abstraction Hypervisor Hardware Containers Application Application
SLIDE 2
SLIDE 3
Containers
Application Runtime Operating System Hardware Application Runtime
- high simplicity
- high resource efficiency
- high performance
SLIDE 4
“Library OS”
Application Runtime + OS Hypervisor Hardware Application Runtime + OS
- high simplicity
- high resource efficiency
- high performance
- high isolation
SLIDE 5
Architecture
- Only one application / many threads
- Single address space
- Network channels
- Written in C++11
- User API - REST
- BSD licenced
- ZFS filesystem
SLIDE 6
Not the only one out there
- Other examples: Erlang-on-Xen, Mirage, ClickOS.
- But runs on wide range of Hypervisors
○ Xen, KVM/Qemu, VMWare, VirtualBox.
- Supports a quasi-POSIX API.
○ no fork(), no exec(), ○ largely Linux compatible.
- Less than 1s boot time.
○ as fast as needed, not as fast as possible.
SLIDE 7
quasi-POSIX
- Allow unmodified applications to work,
- and modified applications to shine.
SLIDE 8
Performance
- System calls are free
○ context switches are really cheap ( x 4 Fedora)
- Network performance significantly faster
○ around 20 % with netperf over Fedora Linux ○ more than 50 % for some UDP workloads
- I will show you concrete results at the end
SLIDE 9
What do people think?
Roman Shaposhnik, Bigtop/Hadoop "Mark my words, GridGain [...] and OSv [...] are going to be excitingly disruptive in the next few years. […] And, by the way, if, after reading this blog, you are not dropping everything and porting your cloud application to OSv, I don’t know what’s wrong with you."
http://blog.gopivotal.com/pivotal/features/pivotal-debuts-at-apachecon-north-america-2014-thanks-for-having-us
SLIDE 10
The Xen Situation
- We like HVM because it brings greater flexibility
○ Xen's HVM boot is really slow ○ Other than that, all other goodies are there ■ interrupt injection, pv devices, etc.
- PVH is viable, but no one looking at the moment.
○ We take patches!
- PV out of question
○ too complex, ○ technically not possible.
SLIDE 11
The Xen Situation - cont
Stack Current Frame 128-byte Red Zone region The Xen Hypervisor does NOT respect that!
SLIDE 12
Will my application be fast?
- short answer:
○ yes
- short answer 2:
○ no
- Similar to Ahmdal's law, in the context of parallelism
○ no gains for 95 % CPU hungry userspace applications
- POSIX APIs poses a limitation.
SLIDE 13
Fresh from the Oven
- Cassandra NoSQL
- OSv vs CentOS 7
- up to 25 % faster reads
○ 1 VCPU only
SLIDE 14
redis
- up to 80 % faster than
Ubuntu 14.04
○ 10 Gb networking ○ No specialized interfaces ○ we do have some problems, though ○ check our blog about it, details at http://osv.io/blog/
SLIDE 15
memcached
- unmodified,
○ brings a juicy improvement out of the box.
- modified:
○ that showcases the real performance opportunity behind OSv.
That's already ~20 % more at http://osv.io/benchmarks/
SLIDE 16
http://osv.io https://github.com/cloudius-systems/osv @CloudiusSystems
- sv-dev@googlegroups.com