VMware Cloud Community
kwg66
Hot Shot
Hot Shot
Jump to solution

NFS datastores

Hi Folks - not long ago NFS datastores were created to house a few VMs in a cluster that primarily uses FC \ SAN.    Without getting into the why of it all, the NFS datastores were created hastily without any thought to the architecture best practice.  As a result, these VMs are running off the NFS mounted datastore, but there isn't any VMKernel ports set up for NFS.  Not sure if there is any performance impact, but I would certainly like to fix this configuration to see if we get better performance.   So I am going to have the VMkernel ports created.   

When you provision an NFS datastore, there isn't any options in the datastore wizard that would allow one to specifically select a VMKernel portgroup for this communication - so all this must be done by default in some way - the magic of VMware, it just knows to use the vmkernel portgroup for an NFS mounted datastore, is this correct?   

So here's the question - when adding a VMkernel portgroup specifically for NFS am I going to have to recreate the existing NFS mounted datastore?   Should I migrate the VMs running on the existing NFS datastore off it first, create the VMKernel connections, then recreate the NFS datastore, then migrate the running VMs back onto it?   

Thanks in advance for the expertise 

 

 

Reply
0 Kudos
1 Solution
7 Replies
kwg66
Hot Shot
Hot Shot
Jump to solution

I would also like to add some more detail to this post.   

Is the purpose of the VMkernel port for NFS just so that the packets don't have to be routed?   

Also, if a specific VMkernel port  is not created, and the only 2 VMkernel ports created are specifically designated for mgmt and vmotion, per the check box when they were created, then from what VMkernel port is the NFS traffic originating from?   

LEt me just state, we don't have a specific vmkernel port configured, only mgmt and vmotion, yet our VMs are running fine on the NFS datastores (granted I'd like to see better performance, latency is averaging 2ms (as measured from the highest latency metric) 

Cormac Hogan if you're out there can you add some knowledge here?  🙂 

 

 

 

Reply
0 Kudos
depping
Leadership
Leadership
Jump to solution

So what does the network look like? you typically create a different vmkernel interface on the same VLAN as the NFS storage system, to avoid the need for multiple hops / routing, which then subsequently also makes it a bit more secure and will lower the latency as the "distance" traveled for each IO will be lower.

Reply
0 Kudos
kwg66
Hot Shot
Hot Shot
Jump to solution

thanks Duncan - great info and very helpful, thanks for sharing the links.  

AS a next step I'm going to do the following:

1. create new VMkernel connections for NFS with IP on the same network as the NAS front end 

2.  Create new VMNICs that can be used for this traffic that aren't being shared by data plane traffic (all existing Ethernet traffic from our vSPhere hosts is sharing the same VMNICs and paths out of the UCS FIs) 

Once I have all this set up, I don't imagine the  existing traffic to the NAS will just automatically start using the new path, it may require powering off the VMs, unmounting and reconnecting the storage.  If this isn't necessary, and all this is needed to is to create the new VMkernel ports along with adding the new VMKernel IPs to the NAS permissions to get the traffic moving properly, let me know, Otherwise, I believe you have answered my questions and I appreciate your expertise, as always.  

 

Reply
0 Kudos
depping
Leadership
Leadership
Jump to solution

Yeah I can't see that magically happening, although, if you change the route and have that vmkernel interface I can also understand why it would switch to the other interface. But I never tried this to be honest, I am not sure if/how disruptive it would be.

Reply
0 Kudos
kwg66
Hot Shot
Hot Shot
Jump to solution

I put together a non disruptive game plane that starts with shutting down the VMs on the datastore, unmounting, changing the permissions on the NAS so the new VMkernel IPs are defined, remount, power up.    

 

 

Reply
0 Kudos