Shortly after ceph was added to the linux kernel 2.6.34 last week comes patches for a ceph/rbd qemu block driver. In case you've never heard of it, ceph is an open source, high performance, distributed file system designed for high availability and scalability. The ceph project is currently being developed out of the University of California, Santa Cruz and still considered to be experimental. That being said, the fact that it has been added to the linux kernel during this early stage of development is a huge vote of confidence. Ceph is designed to scale to petabyte level storage and because it processes in parallel, performance scales along with the size of your cluster.
A distributed file system such as ceph has obvious benefits to cloud computing and virtualization in particular. One problem that can be easily overlooked with server consolidation using virtualization is the single point of failure problem. Yes, you save lots of money consolidating servers onto a single server with virtualization but lose that server and you lose multiple virtual servers in one swoop. Ceph is not the first project attempting to solve the problem of replicating storage but it's probably the first designed to scale to petabyte levels without having to sacrifice performance. Being included in the kernel and having a native driver for qemu-kvm will make it a popular choice for kvm deployments.
Currently there's a qemu-kvm repository available with patches already applied for the ceph/rbd block driver that you can download for testing.
The following instructions are taken from the kvm-rbd wiki you can refer to for future reference.
$ git clone git://ceph.newdream.net/git/qemu-kvm.git $ cd qemu-kvm $ git checkout -b rbd origin/rbd $ ./configure --enable-rbd $ make; make install
Once your driver is installed you can start using your rbd images. To create your rbd image, you need to use qemu-img binary built from the commands above as follows.
qemu-img create -f rbd rbd:data/foo 10G
rbd is described as a linux kernel driver that is part of the ceph file system module. Similar to the sheepdog project, it allows striping a linux block device over the network. For more informaion on the rbdtool, see the following wiki on rbd.
The qemu-kvm ceph/rbd driver is good for testing so you can give it a try and see how it works for you. You can also follow the exchange on the kvm development mailing list at the following link.