SlideShare a Scribd company logo
OSV
Avi Kivity, Don Marti
Cloudius Systems
@CloudiusSystems
Typical Cloud Stack
Hardware
Hypervisor
OS
JVM
App Server
Your App
OS
JVM
App Server
Your App
OS
JVM
App Server
Your App
Our software stack
congealed into existence.
Too Many Layers, Too Little Value
Property/Component
Hardware abstraction
Isolation
Resource virtualization
Backward compatibility
Security
Memory management
I/O stack
Configuration
VMM OS runtime
Duplication
Transformed the
enterprise from
physical2virtual
Virtualization
Virtualization 1.0 Virtualization 2.0
Compute node
virtual server
Virtualization 2.0, Massive Scale
Scalability
Virtualization 2.0
vServer OS 1.0Architecture
● No Hardware
● No Users
● One app/guest
● Yes Complexity
The new Cloud Stack - OSv
Hardware
Hypervisor
Core
App
Server
Your App
Single
Process
Kernel
space only
Linked to
existing
JVMs
App sees
no change
Core
Your App
The new Cloud Stack - OSv
Memory Huge pages, Heap vs Sys
I/O Zero copy, full aio, batching
Scheduling Lock free, low latency
Tuning Out of the box, auto
CPU
Low cost ctx, Direct
signals,..
Alpha Release
3/2014
Optimized ZFS cache
Dirty page writeback
JVM page table
HV support:
GCE, VMW, VBox
Milestones
Git init
osv,
12/2012
Java hello world,
01/2013
support for
64 vcpu
02/2013
UDP,
03/2013
ZFS support
> 1Gbps netperf,
6/2013
Cassandra
outperforms
Linux,
8/2013
Native REST API
Memcached gain >
70%
1/2014
Cli and web
interface
9/2013
Tomcat,
HAProxy
modules
10/2013
Net channels
JVM ballooning
>47Gbps netperf
2/2014
Image Repository
JVM Read barrier
elimination
DPDK support
More ...
Memcached benchmark
Requests/s (higher is better)
Integrating the JVM into the kernel
Core
JVM
Application
Server
Your AppDynamic
Heap
Memory
TCP in the
JVM + App
context Fast inter
thread
wakeup
JVM Garbage Collection and the
kernel
Application thread (“mutator”)
Garbage collection thread
JVM Object
JVM Object
ref
JVM Garbage Collection
Application thread (“mutator”)
Garbage collection thread
JVM Object
JVM Object
JVM Object
ref
change
JVM Garbage Collection
Application thread (“mutator”)
Garbage collection thread
JVM Object
JVM Object
JVM Object
ref
scan
change
JVM Garbage Collection
Application thread (“mutator”)
Garbage collection thread
JVM Object
JVM Object
JVM Object
ref
scan
write
change
card table
read
JVM Garbage Collection
Application thread (“mutator”)
Garbage collection thread
JVM Object
JVM Object
JVM Object
ref
scan
change
page table
read
hardware update
Van Jacobson == TCP/IP
Common kernel network stack
Leads to servo-loop:
Van Jacobson == TCP/IP
Net Channel design:
Dynamic heap, sharing is good
JVM Memory System
memory
Lend
memory
OS that doesn’t get in the way
4 VMs per sys
admin ratio
http://www.computerworld.com.au/article/352635/there_best_practice_server_system_administrator_ratio_/
NO Tuning
NO State
NO Patching
Virtualization 2.0: Stateless servers
REST API definition use Swagger
REST api for *any* action
Performance and tracing
Porting a JVM application to OSV
1. Done*
* well, unless the application fork()s
Porting a C application to OSV
1. Must be a single-process application
2. May not fork() or exec()
3. Rebuild as a shared object (.so)
4. Other API limitations apply*
* Post to the list, and missing items are usually added quickly.
● JVM-based application
○ No effort
● Traditional C/C++ application
○ More effort
● Virtio-app
○ NFV - highest gain
Different customization levels
● First OS to be written in C++11
● Interrupt handler using lambda function:
_msi.easy_register({
{ 0, [&] { _rxq.vqueue->disable_interrupts(); },
poll_task},
{ 1, [&] { _txq.vqueue->disable_interrupts(); }, nullptr }
});
OSv == Cool
So what about
containers?
Capstan demo
● Docker is awesome! Low overhead!
○ Small artifacts
○ Fast deployment
○ Fast startup (container start, not OS boot)
● Docker is awesome! Easy builds!
○ Simple configuration file
○ Minimal additional work on top of application build
Docker is awesome
Containers under the hood
● Hypervisors are awesome too!
○ Live migration (load balance, hardware maint)
○ Multiple kernel versions available
● Running VMs everywhere is awesome!
○ Public cloud, private cloud, existing hypervisor...
● Security is awesome!
○ Container attack surface is full kernel interface.
○ Hypervisor attack surface is small.
● Sometimes a hypervisor is already there
(private and public clouds)
Hypervisors are awesome
Everything is awesome
What if we could have advantages of Docker
without limitations of containers?
● Fast boot, fast provisioning
● High performance
● Tiny footprint
● Virtualized
○ Live migration
○ Elasticity
○ MMU access
Capstan
● Check out a base image
● Build application
● Create complete run-anywhere VM
○ No Capstan needed in production
● 12-20MB and 3 seconds of overhead
● All driven by one simple config file
● Low overhead of containers with
deployment flexibility of a VM image.
Let’s Collaborate
http://osv.io
https://github.com/cloudius-systems/osv
@CloudiusSystems
osv-dev@googlegroups.com
OSv
@Cloudius
Backup slides
Virtualization 2.0, Dev/Ops
Virtualization 2.0, agility!
Rolling upgrade
within seconds and
a fall back option
Cloudius Systems, OS Comparison
Feature/Property
Good for:
Typical workload
kernel vs app
API, compatibility
# Config files
Tuning
Upgrade/state
OSv
Machete:
Cloud/Virtualization
Single app * VMs
Cooperation
JVM, POSIX
0
Auto
Stateless, just boots
JVM support
Lines of code
License
Tailored GC/STW
solution
Fewer
BSD
Traditional OS
Swiss knife: anything
goes
Multiple apps/users,
utilities, anything
distrust
Any, but
versions/releases..
1000
Manual, requires
certifications
Complex, needs
snapshots, hope..
Yet another app
Gazillion
GPL / proprietary
Be the best OS
powering virtual machines
in the cloud
Mission statement
Hardware
Hypervisor
OSv
Your App
Hardware
Hypervisor
OSv
+ Jazz JVM
Your App
Hardware
Hypervisor
OSv
+ Jazz JVM
Hardware
Hypervisor
OSv
Hardware
Hypervisor
OSv
+ Jazz JVM
Your App
Application upload
● Going idle is much more expensive on
virtual machines
● So are inter-processor interrupts - IPIs
● Combine the two:
○ Before going idle, announce it via shared memory
○ Delay going idle
○ In the meanwhile, poll for wakeup requests from
other processors
● Result: wakeups are faster, both for the
processor waking, and for the wakee
Idle-time polling
OSv
applicable for
Virtualization
Application server
Virtual appliance
PaaS
Cloud
Vendors
Plan
1. Open Source Launch - Done
2. Harden Virtual Appliances - Doing
3. Q4 2014 GA by Cloud vendors -
Doing
4. OEM (cloud/appliance), Enterprise

More Related Content

What's hot

XPDS14 - Scaling Xen's Aggregate Storage Performance - Felipe Franciosi, Citrix
XPDS14 - Scaling Xen's Aggregate Storage Performance - Felipe Franciosi, CitrixXPDS14 - Scaling Xen's Aggregate Storage Performance - Felipe Franciosi, Citrix
XPDS14 - Scaling Xen's Aggregate Storage Performance - Felipe Franciosi, Citrix
The Linux Foundation
 
XPDS14: Xen 4.5 Roadmap - Konrad Wilk, Oracle
XPDS14: Xen 4.5 Roadmap - Konrad Wilk, OracleXPDS14: Xen 4.5 Roadmap - Konrad Wilk, Oracle
XPDS14: Xen 4.5 Roadmap - Konrad Wilk, Oracle
The Linux Foundation
 
Live migrating a container: pros, cons and gotchas
Live migrating a container: pros, cons and gotchasLive migrating a container: pros, cons and gotchas
Live migrating a container: pros, cons and gotchas
Docker, Inc.
 
Ceph Goes on Online at Qihoo 360 - Xuehan Xu
Ceph Goes on Online at Qihoo 360 - Xuehan XuCeph Goes on Online at Qihoo 360 - Xuehan Xu
Ceph Goes on Online at Qihoo 360 - Xuehan Xu
Ceph Community
 
Running Cloud Foundry for 12 months - An experience report | anynines
Running Cloud Foundry for 12 months - An experience report | anyninesRunning Cloud Foundry for 12 months - An experience report | anynines
Running Cloud Foundry for 12 months - An experience report | anynines
anynines GmbH
 
[En] IPVS for Docker Containers
[En] IPVS for Docker Containers[En] IPVS for Docker Containers
[En] IPVS for Docker Containers
Andrey Sibirev
 
Automatic Operation Bot for Ceph - You Ji
Automatic Operation Bot for Ceph - You JiAutomatic Operation Bot for Ceph - You Ji
Automatic Operation Bot for Ceph - You Ji
Ceph Community
 
Doing QoS Before Ceph Cluster QoS is available - David Byte, Alex Lau
Doing QoS Before Ceph Cluster QoS is available - David Byte, Alex LauDoing QoS Before Ceph Cluster QoS is available - David Byte, Alex Lau
Doing QoS Before Ceph Cluster QoS is available - David Byte, Alex Lau
Ceph Community
 
Erlang on OSv
Erlang on OSvErlang on OSv
Erlang on OSv
Zvi Avraham
 
Ceph QoS: How to support QoS in distributed storage system - Taewoong Kim
Ceph QoS: How to support QoS in distributed storage system - Taewoong KimCeph QoS: How to support QoS in distributed storage system - Taewoong Kim
Ceph QoS: How to support QoS in distributed storage system - Taewoong Kim
Ceph Community
 
Experience Report: Cloud Foundry Open Source Operations | anynines
Experience Report: Cloud Foundry Open Source Operations | anyninesExperience Report: Cloud Foundry Open Source Operations | anynines
Experience Report: Cloud Foundry Open Source Operations | anynines
anynines GmbH
 
[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"
[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"
[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"
OpenStack Korea Community
 
How Can OpenNebula Fit Your Needs: A European Project Feedback
How Can OpenNebula Fit Your Needs: A European Project FeedbackHow Can OpenNebula Fit Your Needs: A European Project Feedback
How Can OpenNebula Fit Your Needs: A European Project Feedback
NETWAYS
 
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
Open Source Consulting
 
Delivering a production Cloud Foundry Environment with Bosh | anynines
Delivering a production Cloud Foundry Environment with Bosh | anyninesDelivering a production Cloud Foundry Environment with Bosh | anynines
Delivering a production Cloud Foundry Environment with Bosh | anynines
anynines GmbH
 
Optimizing VM images for OpenStack with KVM/QEMU
Optimizing VM images for OpenStack with KVM/QEMUOptimizing VM images for OpenStack with KVM/QEMU
Optimizing VM images for OpenStack with KVM/QEMU
OpenStack Foundation
 
Ceph and cloud stack apr 2014
Ceph and cloud stack   apr 2014Ceph and cloud stack   apr 2014
Ceph and cloud stack apr 2014
Ian Colle
 
[NYC Meetup] Docker at Nuxeo
[NYC Meetup] Docker at Nuxeo[NYC Meetup] Docker at Nuxeo
[NYC Meetup] Docker at Nuxeo
Nuxeo
 
Disk Performance Comparison Xen v.s. KVM
Disk Performance Comparison Xen v.s. KVMDisk Performance Comparison Xen v.s. KVM
Disk Performance Comparison Xen v.s. KVM
nknytk
 
Integrating Puppet with Cloud Infrastructures-Remco Overdijk
Integrating Puppet with Cloud Infrastructures-Remco OverdijkIntegrating Puppet with Cloud Infrastructures-Remco Overdijk
Integrating Puppet with Cloud Infrastructures-Remco Overdijk
MaxServ
 

What's hot (20)

XPDS14 - Scaling Xen's Aggregate Storage Performance - Felipe Franciosi, Citrix
XPDS14 - Scaling Xen's Aggregate Storage Performance - Felipe Franciosi, CitrixXPDS14 - Scaling Xen's Aggregate Storage Performance - Felipe Franciosi, Citrix
XPDS14 - Scaling Xen's Aggregate Storage Performance - Felipe Franciosi, Citrix
 
XPDS14: Xen 4.5 Roadmap - Konrad Wilk, Oracle
XPDS14: Xen 4.5 Roadmap - Konrad Wilk, OracleXPDS14: Xen 4.5 Roadmap - Konrad Wilk, Oracle
XPDS14: Xen 4.5 Roadmap - Konrad Wilk, Oracle
 
Live migrating a container: pros, cons and gotchas
Live migrating a container: pros, cons and gotchasLive migrating a container: pros, cons and gotchas
Live migrating a container: pros, cons and gotchas
 
Ceph Goes on Online at Qihoo 360 - Xuehan Xu
Ceph Goes on Online at Qihoo 360 - Xuehan XuCeph Goes on Online at Qihoo 360 - Xuehan Xu
Ceph Goes on Online at Qihoo 360 - Xuehan Xu
 
Running Cloud Foundry for 12 months - An experience report | anynines
Running Cloud Foundry for 12 months - An experience report | anyninesRunning Cloud Foundry for 12 months - An experience report | anynines
Running Cloud Foundry for 12 months - An experience report | anynines
 
[En] IPVS for Docker Containers
[En] IPVS for Docker Containers[En] IPVS for Docker Containers
[En] IPVS for Docker Containers
 
Automatic Operation Bot for Ceph - You Ji
Automatic Operation Bot for Ceph - You JiAutomatic Operation Bot for Ceph - You Ji
Automatic Operation Bot for Ceph - You Ji
 
Doing QoS Before Ceph Cluster QoS is available - David Byte, Alex Lau
Doing QoS Before Ceph Cluster QoS is available - David Byte, Alex LauDoing QoS Before Ceph Cluster QoS is available - David Byte, Alex Lau
Doing QoS Before Ceph Cluster QoS is available - David Byte, Alex Lau
 
Erlang on OSv
Erlang on OSvErlang on OSv
Erlang on OSv
 
Ceph QoS: How to support QoS in distributed storage system - Taewoong Kim
Ceph QoS: How to support QoS in distributed storage system - Taewoong KimCeph QoS: How to support QoS in distributed storage system - Taewoong Kim
Ceph QoS: How to support QoS in distributed storage system - Taewoong Kim
 
Experience Report: Cloud Foundry Open Source Operations | anynines
Experience Report: Cloud Foundry Open Source Operations | anyninesExperience Report: Cloud Foundry Open Source Operations | anynines
Experience Report: Cloud Foundry Open Source Operations | anynines
 
[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"
[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"
[OpenInfra Days Korea 2018] Day 1 - T4-7: "Ceph 스토리지, PaaS로 서비스 운영하기"
 
How Can OpenNebula Fit Your Needs: A European Project Feedback
How Can OpenNebula Fit Your Needs: A European Project FeedbackHow Can OpenNebula Fit Your Needs: A European Project Feedback
How Can OpenNebula Fit Your Needs: A European Project Feedback
 
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교  및 구축 방법
[오픈소스컨설팅] 쿠버네티스와 쿠버네티스 on 오픈스택 비교 및 구축 방법
 
Delivering a production Cloud Foundry Environment with Bosh | anynines
Delivering a production Cloud Foundry Environment with Bosh | anyninesDelivering a production Cloud Foundry Environment with Bosh | anynines
Delivering a production Cloud Foundry Environment with Bosh | anynines
 
Optimizing VM images for OpenStack with KVM/QEMU
Optimizing VM images for OpenStack with KVM/QEMUOptimizing VM images for OpenStack with KVM/QEMU
Optimizing VM images for OpenStack with KVM/QEMU
 
Ceph and cloud stack apr 2014
Ceph and cloud stack   apr 2014Ceph and cloud stack   apr 2014
Ceph and cloud stack apr 2014
 
[NYC Meetup] Docker at Nuxeo
[NYC Meetup] Docker at Nuxeo[NYC Meetup] Docker at Nuxeo
[NYC Meetup] Docker at Nuxeo
 
Disk Performance Comparison Xen v.s. KVM
Disk Performance Comparison Xen v.s. KVMDisk Performance Comparison Xen v.s. KVM
Disk Performance Comparison Xen v.s. KVM
 
Integrating Puppet with Cloud Infrastructures-Remco Overdijk
Integrating Puppet with Cloud Infrastructures-Remco OverdijkIntegrating Puppet with Cloud Infrastructures-Remco Overdijk
Integrating Puppet with Cloud Infrastructures-Remco Overdijk
 

Similar to OSv presentation from Linux Foundation Collaboration Summit

Cloudjiffy vs Pivotal web services
Cloudjiffy vs Pivotal web servicesCloudjiffy vs Pivotal web services
Cloudjiffy vs Pivotal web services
Sharma Aashish
 
Cloudjiffy vs Amazon Elastic Beanstalk
Cloudjiffy vs Amazon Elastic BeanstalkCloudjiffy vs Amazon Elastic Beanstalk
Cloudjiffy vs Amazon Elastic Beanstalk
Sharma Aashish
 
Cloudjiffy vs AWS ops works
Cloudjiffy vs AWS ops worksCloudjiffy vs AWS ops works
Cloudjiffy vs AWS ops works
Sharma Aashish
 
Cloud jiffy vs Heroku
Cloud jiffy vs HerokuCloud jiffy vs Heroku
Cloud jiffy vs Heroku
Sharma Aashish
 
ASP.NET vNext the future of ASP
ASP.NET vNext the future of ASPASP.NET vNext the future of ASP
ASP.NET vNext the future of ASP
Clément Hallet
 
Cloudjiffy vs Microsoft Azure
Cloudjiffy vs Microsoft AzureCloudjiffy vs Microsoft Azure
Cloudjiffy vs Microsoft Azure
Sharma Aashish
 
Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh VariaCloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Amazon Web Services
 
01 overview-servlets-and-environment-setup
01 overview-servlets-and-environment-setup01 overview-servlets-and-environment-setup
01 overview-servlets-and-environment-setup
dhrubo kayal
 
Cloudjiffy vs Pivotal Cloud Foundry (private cloud)
Cloudjiffy vs Pivotal Cloud Foundry (private cloud)Cloudjiffy vs Pivotal Cloud Foundry (private cloud)
Cloudjiffy vs Pivotal Cloud Foundry (private cloud)
Sharma Aashish
 
Docker - Demo on PHP Application deployment
Docker - Demo on PHP Application deployment Docker - Demo on PHP Application deployment
Docker - Demo on PHP Application deployment
Arun prasath
 
Docker intro
Docker introDocker intro
Docker intro
spiddy
 
5 simple steps to migrate to AWS
5 simple steps to migrate to AWS5 simple steps to migrate to AWS
5 simple steps to migrate to AWS
Amazon Web Services
 
Java in the Cloud : PaaS Platforms in Comparison
Java in the Cloud : PaaS Platforms in ComparisonJava in the Cloud : PaaS Platforms in Comparison
Java in the Cloud : PaaS Platforms in Comparison
adesso AG
 
Java in the Cloud : PaaS Platforms in Comparison
Java in the Cloud : PaaS Platforms in Comparison Java in the Cloud : PaaS Platforms in Comparison
Java in the Cloud : PaaS Platforms in Comparison
Eberhard Wolff
 
5 Simple Steps to Migrate to AWS – Zerto
  5 Simple Steps to Migrate to AWS – Zerto  5 Simple Steps to Migrate to AWS – Zerto
5 Simple Steps to Migrate to AWS – Zerto
Amazon Web Services
 
WindowsAzureSDK1.7
WindowsAzureSDK1.7WindowsAzureSDK1.7
WindowsAzureSDK1.7
Saravanan G
 
Provisioning the IoT
Provisioning the IoTProvisioning the IoT
Provisioning the IoT
Sander Mak (@Sander_Mak)
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for Government
Amazon Web Services
 
Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy Wordress
George Kanellopoulos
 
Techdays SE 2016 - Micros.. err Microcosmos
Techdays SE 2016 - Micros.. err MicrocosmosTechdays SE 2016 - Micros.. err Microcosmos
Techdays SE 2016 - Micros.. err Microcosmos
Mike Martin
 

Similar to OSv presentation from Linux Foundation Collaboration Summit (20)

Cloudjiffy vs Pivotal web services
Cloudjiffy vs Pivotal web servicesCloudjiffy vs Pivotal web services
Cloudjiffy vs Pivotal web services
 
Cloudjiffy vs Amazon Elastic Beanstalk
Cloudjiffy vs Amazon Elastic BeanstalkCloudjiffy vs Amazon Elastic Beanstalk
Cloudjiffy vs Amazon Elastic Beanstalk
 
Cloudjiffy vs AWS ops works
Cloudjiffy vs AWS ops worksCloudjiffy vs AWS ops works
Cloudjiffy vs AWS ops works
 
Cloud jiffy vs Heroku
Cloud jiffy vs HerokuCloud jiffy vs Heroku
Cloud jiffy vs Heroku
 
ASP.NET vNext the future of ASP
ASP.NET vNext the future of ASPASP.NET vNext the future of ASP
ASP.NET vNext the future of ASP
 
Cloudjiffy vs Microsoft Azure
Cloudjiffy vs Microsoft AzureCloudjiffy vs Microsoft Azure
Cloudjiffy vs Microsoft Azure
 
Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh VariaCloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
Cloud-powered Continuous Integration and Deployment architectures - Jinesh Varia
 
01 overview-servlets-and-environment-setup
01 overview-servlets-and-environment-setup01 overview-servlets-and-environment-setup
01 overview-servlets-and-environment-setup
 
Cloudjiffy vs Pivotal Cloud Foundry (private cloud)
Cloudjiffy vs Pivotal Cloud Foundry (private cloud)Cloudjiffy vs Pivotal Cloud Foundry (private cloud)
Cloudjiffy vs Pivotal Cloud Foundry (private cloud)
 
Docker - Demo on PHP Application deployment
Docker - Demo on PHP Application deployment Docker - Demo on PHP Application deployment
Docker - Demo on PHP Application deployment
 
Docker intro
Docker introDocker intro
Docker intro
 
5 simple steps to migrate to AWS
5 simple steps to migrate to AWS5 simple steps to migrate to AWS
5 simple steps to migrate to AWS
 
Java in the Cloud : PaaS Platforms in Comparison
Java in the Cloud : PaaS Platforms in ComparisonJava in the Cloud : PaaS Platforms in Comparison
Java in the Cloud : PaaS Platforms in Comparison
 
Java in the Cloud : PaaS Platforms in Comparison
Java in the Cloud : PaaS Platforms in Comparison Java in the Cloud : PaaS Platforms in Comparison
Java in the Cloud : PaaS Platforms in Comparison
 
5 Simple Steps to Migrate to AWS – Zerto
  5 Simple Steps to Migrate to AWS – Zerto  5 Simple Steps to Migrate to AWS – Zerto
5 Simple Steps to Migrate to AWS – Zerto
 
WindowsAzureSDK1.7
WindowsAzureSDK1.7WindowsAzureSDK1.7
WindowsAzureSDK1.7
 
Provisioning the IoT
Provisioning the IoTProvisioning the IoT
Provisioning the IoT
 
AWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for GovernmentAWS Webcast - Build Agile Applications in AWS Cloud for Government
AWS Webcast - Build Agile Applications in AWS Cloud for Government
 
Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy Wordress
 
Techdays SE 2016 - Micros.. err Microcosmos
Techdays SE 2016 - Micros.. err MicrocosmosTechdays SE 2016 - Micros.. err Microcosmos
Techdays SE 2016 - Micros.. err Microcosmos
 

Recently uploaded

GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
ThomasParaiso2
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
TIPNGVN2
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
DianaGray10
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
sonjaschweigert1
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
Neo4j
 

Recently uploaded (20)

GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...GridMate - End to end testing is a critical piece to ensure quality and avoid...
GridMate - End to end testing is a critical piece to ensure quality and avoid...
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
Data structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdfData structures and Algorithms in Python.pdf
Data structures and Algorithms in Python.pdf
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6UiPath Test Automation using UiPath Test Suite series, part 6
UiPath Test Automation using UiPath Test Suite series, part 6
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...A tale of scale & speed: How the US Navy is enabling software delivery from l...
A tale of scale & speed: How the US Navy is enabling software delivery from l...
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
GraphSummit Singapore | Graphing Success: Revolutionising Organisational Stru...
 

OSv presentation from Linux Foundation Collaboration Summit

  • 1. OSV Avi Kivity, Don Marti Cloudius Systems @CloudiusSystems
  • 2. Typical Cloud Stack Hardware Hypervisor OS JVM App Server Your App OS JVM App Server Your App OS JVM App Server Your App
  • 4. Too Many Layers, Too Little Value Property/Component Hardware abstraction Isolation Resource virtualization Backward compatibility Security Memory management I/O stack Configuration VMM OS runtime Duplication
  • 5.
  • 6. Transformed the enterprise from physical2virtual Virtualization Virtualization 1.0 Virtualization 2.0 Compute node virtual server Virtualization 2.0, Massive Scale Scalability
  • 7. Virtualization 2.0 vServer OS 1.0Architecture ● No Hardware ● No Users ● One app/guest ● Yes Complexity
  • 8.
  • 9. The new Cloud Stack - OSv Hardware Hypervisor Core App Server Your App Single Process Kernel space only Linked to existing JVMs App sees no change Core Your App
  • 10. The new Cloud Stack - OSv Memory Huge pages, Heap vs Sys I/O Zero copy, full aio, batching Scheduling Lock free, low latency Tuning Out of the box, auto CPU Low cost ctx, Direct signals,..
  • 11. Alpha Release 3/2014 Optimized ZFS cache Dirty page writeback JVM page table HV support: GCE, VMW, VBox Milestones Git init osv, 12/2012 Java hello world, 01/2013 support for 64 vcpu 02/2013 UDP, 03/2013 ZFS support > 1Gbps netperf, 6/2013 Cassandra outperforms Linux, 8/2013 Native REST API Memcached gain > 70% 1/2014 Cli and web interface 9/2013 Tomcat, HAProxy modules 10/2013 Net channels JVM ballooning >47Gbps netperf 2/2014 Image Repository JVM Read barrier elimination DPDK support More ...
  • 13. Integrating the JVM into the kernel Core JVM Application Server Your AppDynamic Heap Memory TCP in the JVM + App context Fast inter thread wakeup
  • 14. JVM Garbage Collection and the kernel Application thread (“mutator”) Garbage collection thread JVM Object JVM Object ref
  • 15. JVM Garbage Collection Application thread (“mutator”) Garbage collection thread JVM Object JVM Object JVM Object ref change
  • 16. JVM Garbage Collection Application thread (“mutator”) Garbage collection thread JVM Object JVM Object JVM Object ref scan change
  • 17. JVM Garbage Collection Application thread (“mutator”) Garbage collection thread JVM Object JVM Object JVM Object ref scan write change card table read
  • 18. JVM Garbage Collection Application thread (“mutator”) Garbage collection thread JVM Object JVM Object JVM Object ref scan change page table read hardware update
  • 19. Van Jacobson == TCP/IP Common kernel network stack Leads to servo-loop:
  • 20. Van Jacobson == TCP/IP Net Channel design:
  • 21. Dynamic heap, sharing is good JVM Memory System memory Lend memory
  • 22. OS that doesn’t get in the way 4 VMs per sys admin ratio http://www.computerworld.com.au/article/352635/there_best_practice_server_system_administrator_ratio_/ NO Tuning NO State NO Patching
  • 24. REST API definition use Swagger REST api for *any* action
  • 26. Porting a JVM application to OSV 1. Done* * well, unless the application fork()s
  • 27. Porting a C application to OSV 1. Must be a single-process application 2. May not fork() or exec() 3. Rebuild as a shared object (.so) 4. Other API limitations apply* * Post to the list, and missing items are usually added quickly.
  • 28. ● JVM-based application ○ No effort ● Traditional C/C++ application ○ More effort ● Virtio-app ○ NFV - highest gain Different customization levels
  • 29. ● First OS to be written in C++11 ● Interrupt handler using lambda function: _msi.easy_register({ { 0, [&] { _rxq.vqueue->disable_interrupts(); }, poll_task}, { 1, [&] { _txq.vqueue->disable_interrupts(); }, nullptr } }); OSv == Cool
  • 32. ● Docker is awesome! Low overhead! ○ Small artifacts ○ Fast deployment ○ Fast startup (container start, not OS boot) ● Docker is awesome! Easy builds! ○ Simple configuration file ○ Minimal additional work on top of application build Docker is awesome
  • 33. Containers under the hood ● Hypervisors are awesome too! ○ Live migration (load balance, hardware maint) ○ Multiple kernel versions available ● Running VMs everywhere is awesome! ○ Public cloud, private cloud, existing hypervisor... ● Security is awesome! ○ Container attack surface is full kernel interface. ○ Hypervisor attack surface is small. ● Sometimes a hypervisor is already there (private and public clouds) Hypervisors are awesome
  • 34. Everything is awesome What if we could have advantages of Docker without limitations of containers? ● Fast boot, fast provisioning ● High performance ● Tiny footprint ● Virtualized ○ Live migration ○ Elasticity ○ MMU access
  • 35. Capstan ● Check out a base image ● Build application ● Create complete run-anywhere VM ○ No Capstan needed in production ● 12-20MB and 3 seconds of overhead ● All driven by one simple config file ● Low overhead of containers with deployment flexibility of a VM image.
  • 40. Virtualization 2.0, agility! Rolling upgrade within seconds and a fall back option
  • 41. Cloudius Systems, OS Comparison Feature/Property Good for: Typical workload kernel vs app API, compatibility # Config files Tuning Upgrade/state OSv Machete: Cloud/Virtualization Single app * VMs Cooperation JVM, POSIX 0 Auto Stateless, just boots JVM support Lines of code License Tailored GC/STW solution Fewer BSD Traditional OS Swiss knife: anything goes Multiple apps/users, utilities, anything distrust Any, but versions/releases.. 1000 Manual, requires certifications Complex, needs snapshots, hope.. Yet another app Gazillion GPL / proprietary
  • 42. Be the best OS powering virtual machines in the cloud Mission statement Hardware Hypervisor OSv Your App Hardware Hypervisor OSv + Jazz JVM Your App Hardware Hypervisor OSv + Jazz JVM Hardware Hypervisor OSv Hardware Hypervisor OSv + Jazz JVM Your App
  • 44. ● Going idle is much more expensive on virtual machines ● So are inter-processor interrupts - IPIs ● Combine the two: ○ Before going idle, announce it via shared memory ○ Delay going idle ○ In the meanwhile, poll for wakeup requests from other processors ● Result: wakeups are faster, both for the processor waking, and for the wakee Idle-time polling
  • 46. Plan 1. Open Source Launch - Done 2. Harden Virtual Appliances - Doing 3. Q4 2014 GA by Cloud vendors - Doing 4. OEM (cloud/appliance), Enterprise