[Sheepdog] [RFC PATCH 0/2] Sheepdog: distributed storage system for QEMU

MORITA Kazutaka morita.kazutaka at lab.ntt.co.jp
Wed May 12 12:46:51 CEST 2010


Hi all,

This patch adds a block driver for Sheepdog distributed storage
system.  Please consider for inclusion.

Sheepdog is a distributed storage system for QEMU.  It provides highly
available block level storage volumes to VMs like Amazon EBS.

Sheepdog features are:
- No node in the cluster is special (no metadata node, no control
  node, etc)
- Linear scalability in performance and capacity
- No single point of failure
- Autonomous management (zero configuration)
- Useful volume management support such as snapshot and cloning
- Thin provisioning
- Autonomous load balancing

The more details are available at the project site [1] and my previous
post about sheepdog [2].

We have implemented the essential part of sheepdog features, and
believe the API between Sheepdog and QEMU is finalized.

Any comments or suggestions would be greatly appreciated.


Here are examples:

$ qemu-img create -f sheepdog vol1 256G     # create images

$ qemu --drive format=sheepdog,file=vol1    # start up a VM

$ qemu-img snapshot -c name sheepdog:vol1   # create a snapshot

$ qemu-img snapshot -l sheepdog:vol1        # list snapshots
ID        TAG                 VM SIZE                DATE       VM CLOCK
1                                   0 2010-05-06 02:29:29   00:00:00.000
2                                   0 2010-05-06 02:29:55   00:00:00.000

$ qemu --drive format=sheepdog,file=vol1:1  # start up from a snapshot

$ qemu-img create -b sheepdog:vol1:1 -f sheepdog vol2   # clone images


Thanks,

Kazutaka

[1] http://www.osrg.net/sheepdog/

[2] http://lists.nongnu.org/archive/html/qemu-devel/2009-10/msg01773.html


MORITA Kazutaka (2):
  close all the block drivers before the qemu process exits
  block: add sheepdog driver for distributed storage support

 Makefile         |    2 +-
 block.c          |   14 +-
 block.h          |    1 +
 block/sheepdog.c | 1828 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 monitor.c        |    1 +
 vl.c             |    1 +
 6 files changed, 1845 insertions(+), 2 deletions(-)
 create mode 100644 block/sheepdog.c




More information about the sheepdog mailing list