Home > Storage, Virtualization > How does vSphere recognize an Isilon NFS Datastore when using a SmartConnect Zone Name?

How does vSphere recognize an Isilon NFS Datastore when using a SmartConnect Zone Name?

January 24th, 2013 Leave a comment Go to comments

As one of the more Isilon-centric vSpecialists at EMC, I see a lot of questions about leveraging Isilon NFS in vSphere environments.  Most of them are around the confusion of how SmartConnect works and the load balancing/distribution it provides.

Not too long ago, a question arose around mounting NFS exports from an Isilon cluster, and the methods to go about doing that.

Duncan Epping published an article recently titled How does vSphere recognize an NFS datastore?

I am not going to rehash Duncan’s content, but suffice to say, a combination of the target NAS (by IP, FQDN, or short name) and a complete NFS export path are used to create the UUID of an NFS datastore.   As Duncan linked in his article, there is another good explanation by the NetApp folks here: NFS Datastore UUIDs:  How They Work, and What Changed In vSphere 5

Looking back at my Isilon One Datastore or Many post, there are a couple ways to mount NFS presented datastores from an Isilon cluster if vSphere 5 is used.  Previous versions of vSphere are limited to a single datastore per IP address and path.

Using vSphere 5, one of the recommended methods is to use a SmartConnect Zone name in conjunction with a given NFS export path.

In my lab, I have 3 Isilon nodes running OneFS 7.0, along with 3 ESXi hosts running vSphere 5.1.  The details of the configuration is:

  • Isilon Cluster running OneFS 7.0.1.1
  • SmartConnect Zone with the name of mavericks.vlab.jasemccarty.com
  • SmartConnect Service IP of 192.168.80.80
  • Pool0 with the range of 192.168.80.81-.83 & 1 external interface for each node
  • SmartConnect Advanced Connection Policy is Connection Count
  • NFS export with the following path
    • /ifs/nfs/nfsds1
  • vCenter Server 5.1 on Windows 2008 R2 with Web Client
  • 3 ESXi hosts running vSphere 5.1

A quick note about the mount point I am using…  By default an Isilon cluster provides the /ifs NFS export.  I typically create folders underneath the /ifs path, and export them individually.  I’m not 100% certain on VMware’s support policy on mounting subdirectories from an export, but I’ve reached out to Cormac Hogan for some clarification. Update: After speaking w/Cormac, VMware’s stance is support is provided by the NAS vendor. Isilon supports mounting subdirectories under the /ifs mount point.  Personally, I have typically created multiple mount points giving me additional flexibility.

nfs-00

One of the biggest issues when mounting NFS datastores (as Duncan mentioned in his post), is ensuring the name (IP/FQDN) and Path (NFS Export) are named the same across all hosts.  **Wake up call for those using the old vSphere Client- It is easier from the Web Client.**

If I mount the SmartConnect Zone Name (mavericks.vlab.jasemccarty.com) and my NFS mount (/ifs/nfs/nfsds1) it would look something like this:

Begin by adding the datastore to the cluster (Named HA here)

nfs01

Give the datastore a name (mavericks-ds1) in this case.nfs02

Select NFS as the type of datastorenfs03

Provide the SmartConnect Zone name as the Server, and the NFS Export as the Foldernfs04

Select all hosts in the cluster to ensure they all have the datastore mounted
(this will ensure they see the same name)nfs05

Finishnfs06

Now only a single NFS mounted datastore (with the above path) is mountednfs07

Looking further, each host sees an identical mount point.

nfs07a This can also be confirmed from the ESXi console on each host.nfs09This would lead one to believe that all hosts were talking to a single node.  But are they?

nfs08
Looking at the OneFS Web Administration Interface, it is shown that each of the 3 hosts has a separate connection to each of the 3 nodes

Because each of these hosts see the same mount point, SmartConnect brings value by providing a load balancing mechanism for NFS based datastores.  Even though each host sees the IP for the SmartConnect Zone differently, they all see the mounted NFS export as a single entity.

Which Connection Policy is best? That really depends on the environment.  Out of the box, Round Robin is the default method.  The only intelligence there is basically “Which IP was handed out last? Ok, here is the next.”  Again, depending on the environment, that may be sufficient.

I personally see much more efficiency using one of the other options, which include Connection Count (which I have demonstrated here), CPU Utilization (gives out IPs based on the CPU load/per node in the cluster), or Network Throughput (based on how much traffic/per node in the cluster).  Each connection policy could be relevant, depending workloads.

Another thing to keep in mind, when using a tiered approach, and SmartConnect Advanced, multiple zones can be created, with independent Connection Policies.

Hopefully this demonstrates how multiple nodes, with different IP addresses, can be presented to vSphere 5 as a single datastore.

  1. dynamox
    January 24th, 2013 at 16:03 | #1

    Have best practices changes in terms of I/O optimization Settings for directories that are being used as VM datastores ?

    Thanks

    @dynamoxxx

    • jase
      January 24th, 2013 at 17:18 | #2

      That I couldn’t tell you. But I can ask. ;)

  2. dynamox
    January 24th, 2013 at 21:22 | #3

    Thank you

  3. January 25th, 2013 at 02:53 | #4

    I used smartconnect for round robin and mount my NFS datastores through FDQN. From esxi side, how I can check that the round robin is working ? I understand that each datastore I mount will resolve the FDQN by a different ip?

    • jase
      January 25th, 2013 at 07:45 | #5

      holala,

      From the ESXi perspective, there is really no way to see the Round Robin NFS load balancing taking effect.
      From the OneFS Web Administration Interface, as detailed above in the post, you can see which hosts are connected to which nodes.
      Also, with Round Robin, each host could possibly mount the FQDN/Folder with a different IP, or possibly even the same IP… It all depends on how many DNS requests are resolved for the FQDN.

      From a load balancing aspect, the other options have more intelligence.
      Depending on your workload, number of hosts, number of VMs, etc, one of these other options could provide more effective load balancing for you.

      Again, depending on your configuration, your mileage may vary.

      I hope that helps!

  4. January 25th, 2013 at 06:29 | #6

    This is very helpful info. Thank you.

  5. Stephen Mann
    January 25th, 2013 at 09:13 | #7

    Jase, I’m new to Isilon storage and your blog has proven extremely helpful to me, thank you very much.

    With your help I think I now understand that by using the SmartConnect Zone I can present a single Datastore to multiple vSphere hosts, and utilise load balancing at the Isilon end of the connection.

    At the vSphere host we use route based on IP hash for the NFS connection, I assume that connecting to the SmartConnect Zone FQDN will result in a different IP hash (depending on which Isilon node actually responds from the SmartConnect pool range), therefore vSphere will probably balance the load accross physical NICs at the host end too?

  6. Stephen Mann
    January 28th, 2013 at 03:58 | #9

    @jase

    Thanks Jase, for whatever reason the slides are blocked from the office so either check them out from home or try get the access policies amended!

    The reason for my asking is that currently the set up here is to have the same NFS based Datastore mounted 3 times to the hosts (connecting to the IP addresses of 3 nodes directly). This ‘load balances’ from ESX in that data written to the ‘different’ Datastores will possibly be routed through different physical NICs from the host (due to the IP hash), and go to different Isilon nodes.

    But, it is very confusing seeing effectively the same Datastore 3 times, and the relies on staff building VMs across the Datastores. To me, utilisation of a SmartConnect Zone would be a neater solution.

    We already use one SmartConnect Zone for CIFS shares, is there a limitation on how many you can set up? I’m using vSphere 5.0i, OneFS V6.5.

    Thanks again.

    • jase
      January 28th, 2013 at 07:18 | #10

      Stephen,

      If you have a SmartConnect Advanced license, then you can create multiple SmartConnect Zones. But remember, they will need different names, and separate DNS Delegations for each.

      If your NFS network is isolated (assuming so), you can still have SmartConnect answer on your “public” for the private.

      Another post (http://www.jasemccarty.com/blog/?p=2357) will show you how to configure SmartConnect properly to work with such a configuration. Then mount your datastores with the FQDN, and each host will only require a single name/mount point. Keep in mind this only works for vSphere 5.0 and higher.

      Additionally, this will work with OneFS 6.5 or 7.0.

      Good luck!

  7. Stephen Mann
    January 28th, 2013 at 10:07 | #11

    @jase
    OK, thanks again for your help :)

  8. James Walkenhorst
    February 5th, 2013 at 09:55 | #12

    For Isilon clusters running OneFS 6.5 and earlier, the best practice is still to use a mirrored (2x) protection setting for VMDK files. For Isilon clusters running OneFS 7.0 or later, the recommended setting for VM data has been changed to +2:1. @dynamox

    • jase
      February 5th, 2013 at 10:23 | #13

      Absolutely… I forgot to update my post…
      Thanks James!

  9. dynamox
    February 5th, 2013 at 10:33 | #14

    James,

    thank you very much for your reply. My current cluster (6.5.5.12) protection is set to +2:1 so when we upgrade to 7.x i will not have to make any changes to directories used by VMware, default is good enought?

    Second question: let’s say my cluster gets much bigger and i need to go to higher protection, will i need to mess with protection of VMware directories to make sure they stay at +2:1?

    Thank you for your time

  10. James Walkenhorst
    February 6th, 2013 at 11:45 | #15

    @dynamox
    First question: if you’re already running +2:1 protection on your existing VMs, then you won’t have to change anything to take advantage of the new write optimization settings after upgrading to OneFS 7.0; default is good enough :)

    Second question: The +2:1 protection setting is the default, no matter how many nodes are in your cluster, so as long as you leave the entire cluster at the default protection setting, you shouldn’t need to change anything with respect to your VM datastore directories. If for some reason you need to increase the protection level for all your non-VM directories, I’d suggest creating a SmartPools protection policy for your VM data that keeps the +2:1 setting intact.

    Make sense?

  11. dynamox
    February 6th, 2013 at 14:22 | #16

    Second question: The +2:1 protection setting is the default, no matter how many nodes are in your cluster <<- does this apply to to OneFS 6.5.5 or 7.x only ?

    Thanks

  12. James Walkenhorst
    February 8th, 2013 at 11:25 | #17

    It should be the default setting for both OneFS flavors.

    The recommendation for VM data on earlier OneFS versions is to change the protection setting to 2x, but that requires explicit administrative action to make it happen: either by creating a SmartPools policy that sets *.vmdk files to 2x, or through the OneFS File Explorer.

    If you haven’t explicitly done either of those things, then your VM data should already be at +2:1.

  13. Anurag Mittal
    April 8th, 2013 at 01:28 | #18

    Previously when I was using the datastore localy on a VM, I was able to keep the old one while I’m validating the new one . Is this possible when I migrate from VM to NFS export. I mean, if I am using NFS instead of local to the VM, will this change something for the migration?

    • jase
      April 9th, 2013 at 08:05 | #19

      Anurag,

      If I’m following your question… Is it okay to relocate a VM from a local datastore (VMFS) to an Isilon presented datastore (NFS)? Absolutely!

      You can cold migrate (VM powered off), or live migrate (VM powered on) if you have appropriate vSphere licensing.

      Cheers,
      Jase

  1. No trackbacks yet.


5 + = ten