Download - OSv at Cassandra Summit

Transcript
Page 1: OSv at Cassandra Summit

Cassandra on OSv

Dor Laor, Don Marti and Glauber CostaCloudius Systems

Page 2: OSv at Cassandra Summit

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

Page 3: OSv at Cassandra Summit
Page 4: OSv at Cassandra Summit

[ 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”;}

Page 5: OSv at Cassandra Summit

Cassandra boot time on OSv

Page 6: OSv at Cassandra Summit

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

Page 7: OSv at Cassandra Summit
Page 8: OSv at Cassandra Summit
Page 9: OSv at Cassandra Summit

Pimp my Memcached

Requests/s (higher is better)

Page 10: OSv at Cassandra Summit

Redis on Vitamins

Page 11: OSv at Cassandra Summit

Cassandra

Page 12: OSv at Cassandra Summit

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

Page 13: OSv at Cassandra Summit

New TCP/IP Stack

Common kernel network stack

Net Channel design:

Page 14: OSv at Cassandra Summit

Value Proposition II: Manageability

Page 15: OSv at Cassandra Summit
Page 16: OSv at Cassandra Summit

OSv management interface

Page 17: OSv at Cassandra Summit
Page 18: OSv at Cassandra Summit
Page 19: OSv at Cassandra Summit
Page 20: OSv at Cassandra Summit
Page 21: OSv at Cassandra Summit

Stateless root-fs

4 VMs per sys admin ratio

NO TuningNO StateNO Patching

Page 22: OSv at Cassandra Summit

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

Page 23: OSv at Cassandra Summit

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

Page 24: OSv at Cassandra Summit

Some more OSv Goodies

rest-apiJolokia JVM

PaaS approach for runtimes

ZFS snapshots

Ruby, Node, Scala, more

Cloud Init

NewRelicinteg

JVMBallooning

Page 25: OSv at Cassandra Summit

~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

Page 26: OSv at Cassandra Summit

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