Sheepdog: QEMU/KVM Distributed Storage Nirvana?
Sheepdog: QEMU/KVM Nirvana?

                

    
        
            
Traditional virtualization infrastructures with a need of some type of
shared storage are expensive to deploy and hard to scale up.
Imagine an infrastructure built on a cluster of hosts
running guest systems where each host contributes a fraction of its
inexpensive local storage space to establish a distributed storage system used
across the entire cluster. This storage layer provides advanced features
such as snapshotting, cloning, thin provisioning. Guest disk images are
stored on this system and are therefore accessible
to any host part of the cluster. Imagine also that this infrastructure
has built-in fault tolerance and automatically replicates data to handle
hosts added to or removed from the cluster (as it can happen in case of
hardware failure). Such a system would provide:



Good performance scalibility at all levels: CPU, RAM, and storage
all scale linearly because a host contributes each of these resources to the cluster.
Whereas traditional virtualization infrastructures are hard to scale up due to
the inherent throughput and latency bottlenecks of a centralized SAN/NAS.
Excellent reliability due to the fault tolerance and
lack of a single point of failure such as a SAN/NAS.
Convenient ability to live migrate any guest from any
host to any other host without the need of centralized storage.
Ability to replace/upgrade 100% of the parts of a cluster,
over time, with zero downtime.



A project to accomplish all the above exists! MORITA Kazutaka,
FUJITA Tomonori, and MORIAI Satoshi, all working for NTT Cyber Space
Laboratories —I am trying to imagine what NTT might be doing—,
started the Sheepdog project for
QEMU/KVM. Their backgrounds reveal these guys are kernel developers,
Xen hackers, and storage experts. They have worked on the kernel block
layer, Xen Kemari (Virtual Machine Synchronization for Fault Tolerance),
the SCSI layer, and much more.



I am very excited to hear about this project. A Sheepdog block driver
for QEMU/KVM has already gone through multiple iterations of reviews.
The latest patch posted to the qemu-dev@ mailing list was
v6 on
June 6, 2010. Hopefully it will soon make it to an official release.



This whole project is very innovative. As far as I know, no other 
virtualization vendor offers anything remotely similar to Sheepdog.

        
    

    


        