• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 818
  • Last Modified:

SQL 2008 R2 disk configuration on Hyper V Server R2

Hi we are planning on virtualizing a line of business application that runs SQl as the back end on Hyper-V Server 2008 R2 and use either SCE or SCVMM to manage it.  Overall, this application now is run on 4 physical machines.  3 out of the 4 server functions are pretty small and don't use alot of the server resources.  

However, I know that SQL is one of the applications that alot of people aren't comfortable virtualizing.  The server we are putting this on is a pretty powerful machine, which I hope will overcome the overhead that is associated with virtualizing.

Dell R510, dual xeon processors
quad nic
2 146 gig 15K SAS drives - Mirror Hyper V Server
2 146 gig 15K SAS drives - Mirror (?? normally if this was a physical implementation I would put SQL Logs here)
3 146 gig 15K SAS drives - RAID 5:  VHD FIles for all 4 VM's

So my question is about the disk configuration?  For SQL, do people create separate VHD files for the logs and the SQL instance in addition to the VHD for the OS, and put them all on different spindles?  In our case, I think we want to stick with fixed sized VHD's if possible rather than pass through.  

Thanks in advance!
2 Solutions
Svet PaperovIT ManagerCommented:
If it is possible I would change the volumes in the following way:
4x 146 gig 15K SAS drives in RAID 10 – for SQL server VHD and other VMs data VHDs
3x 146 gig 15K SAS drives in RAID 5 – for the OS of the Hyper-V Server and the system (OS) VHDs of the VMs

RAID 10 has better performance than RAID 1 and RAID 5 is enough for the system volumes of the virtual machines. With this setup you will probably have equal read output and definitely better write output from RAID 10 vs. RAID 5.

Would I put the SQL logs and DB files on different VHD files? In that case, probably not, because my faster spindle will be on the single RAID 10 that I have. If you decide to stick with your drive setup, you could separate the Log and DB on both RAID 1 but you are going to lose the advantages of RAID 10.

I hope this helps  
Generally speaking the same rules might apply to a virtual SQL server in terms of disk IO.  There's just a bit of middleware in the Hypervisor.  Lots of VMs sharing the same disk spindles can suffer from what is called the disk "IO blender"

Example of a Virtual SQL Server configured similarly to a physical server's disk setup, if you wanted to set it up this way:
  OS - VHD can reside on one set of disk spingles (write performance is key)
  Tranaction logs - VHD can reside on another set of disk spingles (write performance is key)
  Databases - VHD file can reside on another set of disk spingles (ideally RAID5 or RAID10)

Another way to go is to get an inexpensive SAN with RAID10 and lots of spindles.  EMC's VNXe 3100 is very nice from a price point.

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now