I am considering using Gluster to build a Xen hosting cluster/cloud. Xen requires shared storage in order to do a &quot;live migration&quot; (move a virtual machine from one host to another without taking it down) so that the vm&#39;s disk image is available on the machine it gets moved to.  The typical deployment scheme for this is a SAN, but a SAN is expensive both in terms of the hardware, and rack space - compute node can hold 4TB worth of drives, so why not use that instead of getting a big SAN box?<br>
<br>I&#39;d like to be able to use Gluster in such a way that:<br><br>1. The deployment is &quot;symmetrical&quot; - every machine is both a server and a client.<br><br>2. I can add another machine to the pool and add its storage space to the pool without having to take down the whole cluster.<br>
<br>3. Use Gluster for redundancy instead of RAID.  It would be nice if I can lose any single hard drive and/or entire server and still have access to 100% of all the data in the pool.  In this sort of setup, is it possible to limit the number of copies of data to 2 or 3, or if I have 10 machines, will I be forced to have 10 copies of the data?<br>
<br>4. Get good performance.  Will i get acceptable performance through gigabit ethernet, or do I need 10 gigabit ethernet or infiniband to have something decent?  Because I want a configuration where each machine is both a client and a server, will performance degrade as I add more machine such that the network needs to handle n^2 connections, where n is the number of servers?  Or will performance improve because data will be striped across a lot of machines?<br>
<br>5. How is OpenSolaris support?  I&#39;d like to be able to use ZFS as the underlying filesystem, although I&#39;d be happy with Linux or NetBSD too.<br><br>6. I spoke to Hitesh and he said that files have an affinity for the machine that&#39;s accessing them.  Suppose I live migrate a Xen vm to another machine, will it&#39;s disc image eventually physically make its way over to that machine?<br>
<br>I would like to thank in advance anyone who answers these questions for me.  I am new to Gluster and distributed filesystems so I apologize if any of my questions are stupid.<br>