OSv at Cassandra Summit

Post on 30-Nov-2014

13573 Views

Category:

Software

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

OSv is a new, high-performance OS for virtual machines in the cloud. Designed to run one application per guest with minimal overhead, OSv eliminates important bottlenecks for NoSQL applications through improvements in memory management, network I/O, and scheduling. And many important bottlenecks for NoSQL applications are tunable on a conventional OS, but do not require tuning in the OSv environment. OSv is fully stateless and can be configured at runtime with cloud-init or through a REST API, with zero configuration files. OSv offers unified tracing from the application layer through the JVM and the OS kernel. Attendees will learn how to boot Cassandra in one second, and create a simple cluster in a minute.

Transcript

Cassandra on OSv

Dor Laor, Don Marti and Glauber CostaCloudius Systems

Become the best OSpowering virtual machines

in the cloud

HardwareHypervisor

OSv

Your App

HardwareHypervisorOSv + JVM

Your App

HardwareHypervisorOSv + JVM

HardwareHypervisor

OSv

HardwareHypervisorOSv + JVM

Your App

[ 0.000] Status() {return PreBeta;}

[ 0.103] HR.count() { return pp(18);}

[ 0.217] countries.size() {return 9;}

[ 0.423] getOpenSourceExperience() { ret list.add(KVM).add(Xen).add(containers);}

[ 0.735] Mission(){ret “write code that doesn’t suck”;}

Cassandra boot time on OSv

Hardware

Hypervisor

guest OS

JVM

App Server

Java App

What is OSv?

guest OS

C++ App

Hardware

Hypervisor

OSv + JVM

App Server

Your App

OSvYour App

Traditional Stack Thin OS

Pimp my Memcached

Requests/s (higher is better)

Redis on Vitamins

Cassandra

Performance: Leave no stone unturned

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...

New TCP/IP Stack

Common kernel network stack

Net Channel design:

Value Proposition II: Manageability

OSv management interface

Stateless root-fs

4 VMs per sys admin ratio

NO TuningNO StateNO Patching

www.osv.io/Capstan:VM build and deploy● Docker-like config file● Takes about 3 seconds to build● Runs on any OS (written in Go)cat Capstanfilebase: cloudius/osv-openjdkcmdline: > /java.so -XX:+UseThreadPriorities -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX:SurvivorRatio=8 -XX:MaxTenuringThreshold=1 ... org.apache.cassandra.service.CassandraDaemonbuild: make

Deploying OSv at scaleOSV Cloud Init: - Stateless - Watch ma, no puppet/chef - Single (external) file to rule them all

files: /etc/config: | my config goes here

httpserver: ssl: yes port: 443

topology: - dc_name: DC1 racks: - rack_name: c1 nodes: - broadcast_address: 1.2.3.4 dc_local_address: 5.6.7.8

Some more OSv Goodies

rest-apiJolokia JVM

PaaS approach for runtimes

ZFS snapshots

Ruby, Node, Scala, more

Cloud Init

NewRelicinteg

JVMBallooning

~20MB image size

Ideal for multi tenants

Stateless, streamable config

70% better tcp latency

Runs on virtualBox, kvm, vmw, xen, ec2, gce

Public image repository

Thank you!Try it! http://osv.io/Run on public cloudFollow @CloudiusSystems

top related