Cassandra Summit 2014: Cyanite — Better Graphite Storage with Apache Cassandra
OSv at Cassandra Summit
description
Transcript of OSv at Cassandra Summit
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