Seeking comments/advise on the following NAS setup.

I am seeking comments and recommendations on the following seutp.  This was in place prior to my enterance to the environment and would like to know what I am facing.

Two IBM x3550 servers (Dual quadcore 3.66Ghz, 32GB, RAID 1 73GB SAS rpm unknown)
HYPER-V running the following
Two Win 2k3 Std / Citrix 4.5 serving 220 users (average 45-55 users concurrently) (All desktop apps are on these servers)
One SQL 2000 server running a customized database (used by approximatly 100 users some light some heavy)

All three virtualized and running on QNAP TS-859U-RP+ Turbo NAS with 4x 600GB SATA 10K drives in RAID 5.

In addition there is a plan to add the following to the Hyper-V setup and NAS:
Exchange 2010 (220 active mailboxes - approx 100 fully utilized)
Upgrading Citirix 4.5 to XenApp 6 utilizing both until upgrade complete.
SQL 2008 R2 Std to replace the above mentioned SQL 2000 install.  Both will operate for approximately 1 year prior to the shutdown of the first.
Accounting Server running a version of SQL express 2005.
2 to 3 test servers running misc apps.

My concerns are:
# of Disks being used in NAS (Disk Queuing)
Virtualizing SQL to the NAS
Virtualizing Exchange to the NAS
When running batch reporting our entire system grinds to a halt until the batch job is done.

Please advise.  Greatly appreciated.

Who is Participating?
Andrew Hancock (VMware vExpert / EE MVE^2)Connect With a Mentor VMware and Virtualization ConsultantCommented:
What that rack of NetApp disks?

Standard config for most of our clients, some have four 42U racks of shelves!

I think you've outgrown your QNAP, and you would be better investigating other iSCSI of FC storage options.
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
RAID 10 would be better.

Are you attaching via iSCSI?
Indy_AdminAuthor Commented:
The NAS has iSCSI targeting service available and I beleive we are using that.

Is it a major concern is that I have that much read and write data ALL hitting on one logical drive regardless of the array type?  Either way the sytem was setup as a RAID 5.  While I could mirror the 4 drive RAID 5 I don't think that would help with my read write which is where I think the issue/bottleneck will continue to be a problem.

Improve Your Query Performance Tuning

In this FREE six-day email course, you'll learn from Janis Griffin, Database Performance Evangelist. She'll teach 12 steps that you can use to optimize your queries as much as possible and see measurable results in your work. Get started today!

Indy_AdminAuthor Commented:
FYI the info on the QNAP devices can be found at
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
RAID 10 would provide better read and write performance, but you are limited in what you are going to get out of four 7,200 rpm SATA disks.
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
Enabling Jumbo Frames on your network interface, Physical Switches and NAS may also help with throughput.
Indy_AdminAuthor Commented:
So do you think that I can run a SQL 2008 VM, a Exchange 2010 VM, two Citrix VMs running all apps, a SQL Express VM, and test servers all from this NAS without serious performance issues even with Jumbo Frames enabled?  I would think that the drive IO would choke the system let alone the network traffic.

Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
No. Performance will be terrible.
Indy_AdminAuthor Commented:
The drives will be supporting the OSes of all machines, the paging files of all machines, the log files from the SQL and Exchange machines, and the read and write database transactions for the SQL and Exchange machines.
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
I think it's time to start looking at a larger NAS or SAN.
Indy_AdminAuthor Commented:
I have typically been advised to not run SQL or Exchange in a SAN or NAS environment unless they were fiber connected.  Can you comment on that?
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
Fiber or iSCSI it does not matter, it depends on how many IOPS you NAS or SAN can provide.

You could be running iSCSI over 10GB ethernet whicn is potentially faster than Fibre.

There are many iSCSI based solutions using Exchange and SQL.

Disks in the SAN/NAS are the key.
Indy_AdminAuthor Commented:
I would assume then that you also beleive that having a maximum of 8 disks is not enough to sucessfully run the above configuration?  Especially with 4 drives already being configured as a RAID 5?
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
if you were using 8 - SAS, 10,000rpm disks.

SATA 7,200rpm disks are the devil, you will always have performance issues.

more disk = more spindles = more performance.

here are some example figures from SATA 7,200rpm disks

2 disks - 84.5 MB/s Write,  150 MB/s Read
4 disks - 196 MB/s Write, 276 MB/s Read
8 disks 212 MB/s Write,  287 MB/s Read

more spindles, more performance
Indy_AdminAuthor Commented:
agreed.  Also, Seperation of jobs from spindles is important. (OS, logs, paiging, Database read & write).  Would you agree?
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
it's an old fashioned thoery, we think, as long as you have a very fast datastore, that's presented to OS, it should not make any difference.

That was the thinking with physical machines.

If you have a very large SAN of many many spindles, your storage LUNs are carved out of a massive volume, striped across many storage enclosures of 14 disks.
Indy_AdminAuthor Commented:
Love being considered old fashion.  lol

What you are saying makes alot of sense if indeed you have 14 disks to spread the data over, however even with 14 disks removing the paging and writing (logs) from the reading (DB) would still enhance performance wouldn't it?
Neil RussellTechnical Development LeadCommented:
Yes...... IN THEORY

IF you had another 14 disk SAN to put those on.

But if you are reducing your 14 disk just so you can create a seperate array to present another lun to create another volume to store you logs on then no, because you've just degraded your original 14 disks......

Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
But where would you put the paging files and writing (logs)?

if you had a very large NetApp Filer with

A 3U Chassis - NetApp DS14MK2, 14 shelves, in a 42U rack, driven by a NetApp filer head, High performance RAID 6 or RAID 4.

196 spindles and disks. The LUNs which area presented to the servers are carved out of a pool or storage that is stripped across 196 spindles.

Removing the paging files and logs, may increase performance, but where would you put them?

On what!

You could split the shelves, but less spindles less performance, so performance you gain, is performance you would lose!?

geekgonewildConnect With a Mentor Commented:
I currently have (3) TS-859U-RP+ deployed and running in a medium sized (100+ VM's) VMWare ESXi environment. We run several Oracle 11g DB Servers as well as our mail server (Zimbra ZCS) which servers 35000+ users.

We have found that in order to extract the best performance from the QNAP's we utilize all 8 Drive Bays. Use exactly matched SATA drives (We are using Hitachi A7K2000 UltraStar 2TB Drives) , Format the 8 HDD's (7+1 as Hot Spare) as a RAID 6 Array, and connect using NFS.

NOTE: the TS-859's do support iSCSI but in our testing it just wasn't as fast as NFS, this is probably just a symptom of other factors in our setup. We do use iSCSI as VMware datastores but only when we want or need a block-level file system.

Make sure you update to the latest Firmware (3.5.0 Build 0815T as of 09/30/2011)

It is QNAP best Practice to Dis-able write cache for use in virtualization environments, if you upgrade to 3.50 this is now the default. This setting is located on the "Hardware Tab" of the "System Administration" section.

Use both Ethernet Ports in a Trunking configuration. We use the IEEE 802.3ad Dynamic Link Aggregation method because we have a Cisco 6500 Core Switch that supports this very well. If you don't have a switch that will do 802.3ad then I would recommend using Balance-alb (Adaptive Load Balancing).

We have also upgraded the memory in our TS-859's. This is not supported by QNAP and will violate your warranty. We increased from 2Gb to 4Gb by replacing the installed SODIMMS with matched 2Gb - DDR2 SODIMMs. We find that this makes everything move much better in the box. This is not necessary but after testing it on one box for several weeks and having no problems while under heavy loads we upgraded the remaining two boxes.

We also practice separating the RAID 6 Disk by assigning unique folders / mount points for each or our high load server VM's. This serves to break up the load on the network side as this becomes a factor in the Load Balancing Algorithm. Most folks just create a folder and use it as the single mount point for all virtual disk storage. This reduces the efficiency of the Load Balancing as well as file/block allocation in the underlying file system on the NAS.  In addition, separating the VM's in their own folders allows for flexibility when you want to secure the datastore. In example; login to the NAS and navigate to the "Access Right Management" section and choose the "Share Folders" tab. Create a folder for each or your SQL VM's, Exchange Server VM's.

So in a nutshell, regarding your concerns;

#1 Increase the number and/or size of your drives
#2 Use RAID6 (7+1 Hot Spare)
#3 Make sure you are using the latest Firmware
#4 Make use of both Ethernet Ports
#4 Create a separate NFS Mount for Each of your High Use VM's

I hope this helps!


Indy_AdminAuthor Commented:

Does Hyper-V support NFS Mounting?

It is my understanding from the posts I have read that it does not.  In addition I already have a RAID 5 in place which leaves only 4 drives left in the array.  I have found that VMWare, which is the world I came from, is a completely different ball game than Hyper-V when it comes to resourse allocation and availability.  Thank you, however for your post.

Some but not all of the post follow:
Indy_AdminAuthor Commented:

A bit over the top dont you think???

I agree that taking away spindles would reduce performance, however, you cannot read and write to the same spindle at the same time so moving the logs away at the cost of a couple of disks another array would avoid that unnecessary collission and reduce disk queuing.  In a 14 drive array, how much do you think you would loose by pulling a couple of drives out for logging?

The answer probably resides in how much writing vs reading the system is doing simultaneously.

Either way, my original post was centered around a currently populated 4 disk array not being able to handle batch reporting when it only has two citirix presetnation servers serving all desktop apps and a transactional DB server.  I dont think that even if I were able to change the system to a RAID 6 (7+1), adding the additional SQL box, Exchange Box, Accounting Box, and test servers would be feasible...
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
The point, I was trying to make is the DBAs come to the Storage Engineers, with tail between legs asking:-

Can I have a VM of the following:-

RAID 1 - OS (two disks)
RAID 1 - DB (database)
RAID 1 - DB (logs)
RAID 5 - Page file

and it was demonstrated that what they asked for was slower, than 5 LUNs carved out of the existing Storage Array.
Indy_AdminAuthor Commented:
Point well taken.  Thank you for your help.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.