Introduction to Ganeti

A cluster virtualization manager.

  • Guido Trotter <ultrotter@google.com>
  • Helga Velroyen <helgav@google.com>

Latest version of these slides

What can it do?

  • Manage clusters of physical machines
  • Deploy Xen/KVM/LXC virtual machines on them
    • Live migration
    • Resiliency to failure (data redundancy over DRBD)
    • Cluster balancing
    • Ease of repairs and hardware swaps
ganeti-cluster.png

Ideas

  • Interact with the cluster as an entity, instead of the individual machines.
  • Making the virtualization entry level as low as possible
    • Easy to install/manage
    • No specialized hardware needed (eg. SANs)
    • Lightweight (no "expensive" dependencies)
  • Scale to enterprise ecosystems
    • Manage simultaneously from 1 to ~200 host machines
    • Access to advanced features (DRBD, live migration)
  • Be a good open source citizen
    • Design and code discussions are open
    • External contributions are welcome
    • Cooperate with other "big scale" Ganeti users

Terminology

  • Instance: a virtualization guest
  • Node: a virtualization host
  • Nodegroup: a homogeneous set of nodes
  • Cluster: a set of nodes, managed as a collective, partitioned by nodegroups
  • Job: a ganeti operation
terminology.png

Technologies

  • Linux and standard utils (iproute2, bridge-utils, ssh)
  • socat
  • KVM/Xen/LXC
  • DRBD, LVM, or SAN, soon Ceph/Gluster
  • Python (plus a few modules)
  • Haskell
tech.png

Controlling Ganeti

  • Command line (*)
  • Ganeti Web manager
    • Developed by osuosl.org and grnet.gr
  • RAPI (Rest-full http interface) (*)
  • On-cluster "luxi" interface (*)
    • luxi is currently json over unix socket
    • there is code for python and haskell

(*) Programmable interfaces

People running Ganeti

  • Google (Corporate Computing Infrastructure)
  • grnet.gr (Greek Research & Technology Network)
  • osuosl.org (Oregon State University Open Source Lab)
  • debian.org
  • fsffrance.org (according to docs on their website and trac)
  • ...

Thank You!

Questions?

Survey at https://www.usenix.org/lisa13/training/survey

 

 

  • © 2010 - 2013 Google
  • Use under GPLv2+ or CC-by-SA
  • Some images borrowed / modified from Lance Albertson and Iustin Pop
  • Some slides were borrowed / modified from Tom Limoncelli
  • cc-by-sa.png