OSv at Cassandra Summit


Published on

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.

Published in: Software

OSv at Cassandra Summit

  1. 1. Cassandra on OSv Dor Laor, Don Marti and Glauber Costa Cloudius Systems
  2. 2. Become the best OS powering virtual machines in the cloud Your App OSv Hypervisor Hardware Your App OSv + JVM Hypervisor Hardware OSv + JVM Hypervisor Hardware OSv Hypervisor Hardware Your App OSv + JVM Hypervisor Hardware
  3. 3. [ 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”;}
  4. 4. Cassandra boot time on OSv
  5. 5. What is OSv? Traditional Stack Thin OS Java App App Server Hypervisor Hardware JVM guest OS C++ App guest OS App Server OSv + JVM Your App Hypervisor Hardware Your App OSv
  6. 6. Pimp my Memcached Requests/s (higher is better)
  7. 7. Redis on Vitamins
  8. 8. Cassandra
  9. 9. 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...
  10. 10. New TCP/IP Stack Common kernel network stack Net Channel design:
  11. 11. Value Proposition II: Manageability
  12. 12. OSv management interface
  13. 13. Stateless root-fs NO Tuning NO State NO Patching 4 VMs per sys admin ratio
  14. 14. 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 Capstanfile base: cloudius/osv-openjdk cmdline: > /java.so -XX:+UseThreadPriorities -XX:+UseParNewGC -XX: +UseConcMarkSweepGC -XX:+CMSParallelRemarkEnabled -XX: SurvivorRatio=8 -XX:MaxTenuringThreshold=1 ... org.apache.cassandra. service.CassandraDaemon build: make
  15. 15. Deploying OSv at scale OSV 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: dc_local_address:
  16. 16. Some more OSv Goodies rest-api Jolokia JVM PaaS approach for runtimes ZFS snapshots Ruby, Node, Scala, more Cloud Init NewRelic integ JVM Ballooning
  17. 17. ~20MB image size Ideal for multi tenants 70% better tcp latency Stateless, streamable config Runs on virtualBox, kvm, vmw, xen, ec2, gce Public image repository
  18. 18. Thank you! Try it! http://osv.io/ Run on public cloud Follow @CloudiusSystems