Can we have some discussion re:Using NFS as a datastore in terms of performance, best practice etc?
yes, i'd like to see some discussion on this.
we are currently using nfs for data stores, but keep getting the stink eye from consultants or even vmware support when we tell them we're doing it, even though it seems to be working great.
we used nfs instead of LUN's & iSCSI after reading an article by some net/storage admin fellow who extolled the virtues of using it. (sorry i don't have a link to it anymore).
we are using netapp's storevault units & accessing them via nfs for our HA-DRS environment. it seems faster than iSCSI & LUN's.
although we have been occasionally been getting swap file (.vswp) errors when migrating vm's, we haven't been able to directly attribute this to using nfs, but the stink eye make us wonder. but perhaps it's something else causing this.
any thoughts / discussion / experiences would be great to see.
we are using esx 3.5 on HP servers.
There has been loads on interest in running VI3 on NFS datastores ever since it was added as a storage protocol option in release 3. There have been several papers presented at VMworld in 2006 and 2007. One recent joint project comparing VM performance on VI3 with different protocols was recently published on the NetApp external web site as Technical Reference #3697 (http://www.netapp.com/us/library/technical-reports/tr-3697.html). The bottom line is that performance is only one of several concerns with regards to which protocol should be chosen for shared storage pools for VI3. Ease of management, attainment of High Availability and your IT staff being familar with a given protocol should also be factored in as well.
To address best practices, there will be a paper presented at VMworld 2008 two weeks from now that is titled Joint best practices for running VI3 on IP storage. I am a co-speaker along with two NetApp experts. That presentation will be available after the conf and will outline some general guidelines for optimal configuration for HA, Performance and management optimization. If you are attending VMworld, the talk is TA 2784 and will be presented at 1:30 on Tuesday Sept 16th.
The bottom line is that many are using NFS datastores and it is performing very well. Even though some might frown, it is often more a result of NAS being out of their comfort zone more than it being a problem.
Hey Paul, don't keep us in suspense. How about putting some of the best practice tidbits up on the site now? Think of it as a trailer to the real show.
As a quick summary of best practices, I will share the following content from the before mentioned presentation:
Thanks, Paul! Everyone, Paul is our Storage Guru in VMware, so sage advice indeed!
To make sure we don't lose this valuable advice, I've created a document Using NFS as a data store.
Anyone can edit and add to this document - just click Submit for approval when you're done and I'll approve it for publishing.
Why do this? Good advice gets lost in threads, so let's make sure that doesn't happen to us on VIOPS. Also, this site also behaves like a wiki - so we can all add our thoughts, ideas and practices in an equitable manner.
Is this a good idea? Violently for / against?
I don't mean to drag a dead thread back to life, but:
-Is it truly a best practice to have vmswap on NFS? The only document in the VMware KB found when searching for "NFS swap" (1004082) suggests otherwise.
If so:
-What was the basis for the previous recommendation not to have vmswap on NFS?
-And what is the basis for the change in recommendations?
Thanks!
Hey Andy, or should I call you Lazarus?
This might be a language thing. I've ping'd Paul to see if we can get clarification.
The current best practice for NFS is to not seperate the VM swap space from the VMhome directory on a NFS datastore. The reason for the originial recommendation was just good old fashioned conservitiveness. The thought was that if the IP traffic slowed the response time for swap space access that it could have a significant impact on the performance of the VM. However, the performance conern was not an issue that made this step of placing swap on antoher storage device a needed step.
Further, it turns out that it is a more simple solution to address the concern of performance degredation is to not over subscribe the memory of the VM. However the performance of the access to NFS storage compared to FC storage for swap space is not considered to be a significant enough delta that would make the separation of VM swap from the VMhome worth it.
So even though the KB article 1004082 hasreference to separating them, it is not longer considered best practice. And that KB article is slated to be updated to be consistent with our current best practice of keeping swap in the VMhome Directory for VMs on NFS datastores.
I am using NFS datastores on ESX 3.5, we moved away from iSCSI because of the storage overhead to snapshot LUNS on NetAPP, my volumes had to be double the lun size... Using NFS I keep my volumes 25-50% free space and I dedupe them with NetApp ASIS, which is a huge space savings.
We replicate these volumes to an offsite NetApp SAN... I am considering moving the vm guest swap files to a seperate dedicated NFS datastore that I will not replicate. I am looking to conserve the bandwith used by replication and other than the page files, there is not that much that changes in the VM guest. So I figure for DR, I don't need the page file.
40 VMs x 1GB page file = 40GB of data to replicate at every replication interval... that is hurting us.
Thoughts on this? Can anyone offer a reason I should not do this? I know it's best practice to store the swap file with the vmdk on NFS, but I really am not sure why. Does what I want to do make sense? Will it cause me any problems?
Thanks
Interesting thread and very topical for what we're currently going through. We're a big Netapp shop and deployed our virtual infrastructure on Netapp NFS. After experiencing some stability issues and odd VMotion oddities we were told by VMWare to move swap to iSCSI - Not something that I wanted to do. Interestingly Paul's post was back in '08 and it seems that VMWare support is still telling customers to do this, they recommended this about 5-6 weeks ago and I've been fighting the recommendation ever since.
Our shop uses 100% NFS to almost 50 ESX servers and a few labmanager environments with no issues (at least due to NFS). In terms of best practices, particularly if you're going to run NetApp filers, is to follow the info in the NetApp doc found here:
You will find a wealth of information in it. As a side note, if you can get your filers up to Ontap 7.3.1p1 or higher, you can run the new RCU 2.0.1 to have a precursor to some of the functionality that the vStorage interface will have in vSphere. If you're unfamiliar with RCU, you can take a look at this youtube video.. We're about to begin testing it tomorrow ![]()
Keep in mind you still have to follow all the normal best practices for a guest VM, including file system alignment, as well as setting certain things like SCSI timeout values on your guest operating system. You can look here for more details on that.
We're going to be playing with RCU in our lab shortly.
As for best practices, followed the Netapp docs and anything else we could get our hands on.
Copyright © 2008 VMware, Inc. All rights reserved.

