Is DAS OK for under-utilised virtual machines?

Your question can be answered partly by looking at the performance counters for I/O in the machines that you're trying to migrate to virtual. Look at how many I/O operations per second (IOPS) each requires. Remember that each physical disk is good for a few tens of IOPS. Now size your virtualization system to support that level of I/O. You'll know how many "spindles" you need. Use a RAID controller to spread the load across the disks.

Note that none of this said anything about a SAN. SANs are great, but they mostly provide things that you didn't mention: high availability, backup, storage tiering, fault tolerance, cross-site disaster recovery, rapid deployment, etc.

The most notable part of all of that is that if you use DAS, the failure of the physical server that the DAS is attached to constitutes a failure of all the VMs that were hosted on it. With a SAN, using a cluster of compute hosts all attached to the SAN, you can survive the failure of the physical host by moving the VM to a new host.

Another strategy for surviving failure of that physical host is to back up the apps and OSes within the VMs frequently, or at least frequently enough that you won't mind losing things that happened after the last backup.

Your choice. DAS can give you the performance you need (given what you have described.)


1. Performance In my experience, SAN storage and DAS storage have different characteristics which make performance hard to measure objectively, since workloads tend not to rely on just one metric (e.g. access time), but rather a variable blend of access time, throughput, read vs write, etc. It's a very complex picture. The main benefits of a SAN, IMO, are having your data available to several hosts simultaneously (allowing for clustering/high availability), and unifying the storage of your data allowing for easier management and maintenance. So long story short - I wouldn't sweat performance all that much for DAS.

2. SAN Availability & Cost

You don't have to go with off-the-shelf discrete SAN solutions. Many folks are building their own since a collection of regular server parts can get you a fully functional SAN system. Here's one route to that:

  1. Pick the server that you own that can take the most disks with the highest total capacity
  2. Strip out all but a couple of Gb of RAM
  3. Install OpenFiler
  4. Configure some volumes and expose some iSCSI LUNs
  5. Hook the server into an isolated gigabit VLAN
  6. Plumb your virtual hosts into the same storage network
  7. Point the hosts at the target LUNs
  8. Start adding VMs to your SAN

Vendor support can be purchased for OpenFiler, and your hardware, if your company insists on these things. You can also configure multiple OpenFiler hosts with DRDB to give you high availability and redundancy options.

We've run one of these in production for over a year now, and it's been very solid.