I know it eliminatesone possible point of failure and may reduce load as DNS lookups are not needed but are there any other reasons the Netapp VSC creates NFS exports for datastores using IPs and not hostnames?
There are a couple reasons for this, some are VSC independent.
Outside the scope of VSC, as you kinda hint in your question, why do you want infrastructure dependent on other infrastructure? Even worse if DNS servers are virtualized – circular dependency! (Yes, you can architect to avoid the circular dependency by having DNS servers in VMs on ESXi servers that don’t mount datastores using DNS, but how complicated do you want to make this?) Hopefully, this particular issue would be obvious to anybody running a datacenter.
When you want to have datastore traffic use a specific subnet, that is very hard to figure out from DNS, unless you have some kind of pattern or list of FQDN or hostnames to use. ESXi and vCenter won’t know unless they’re already in use. The filer/cluster/SVM often only knows its own primary FQDN which points at the management IP. The default.allow.nfs.mount.networks parameter in kaminoprefs.xml is for subnets, and has no way of doing a subdomain or similar. Even if it did, as I said, discovery of valid hostnames or FQDN would still be tricky.
I can envision ways to figure it out, like VSC queries the storage for IPs on the desired subnet, then do nslookup of the IPs from the ESXi server(s) to get the hostname or FQDN to mount with. The other way is to have the admin provide a list or pattern of host/FQDNs. Both are kinda complicated and need validation and error handling.
Still, I'm not saying we can't do it. Everyone reading, jump in with how badly you want this, and we'll submit an RFE.
Thanks for the prompt response. We have dedicated redundant appliances for DNS and all the managed hosting companies I have worked in have dedicated DNS servers on physical hardware. That's why I didn't think of the DNS servers being on VMware themselves but it makes perfect sense when you mentioned it.
Exactly as you mentioned I thought IPs were used as it removes one point of failure and if your'e adding the datastores or hosts via VSC the host names aren't required in the exports file. Comparing this to block storage if it was iSCSI or FC that doesn't have exactly friendly initiator names.
This wasn't a criticism of the VSC as it's a great tool that makes VMware storage administration a lot easier and less error prone.
The link to the blog didn't work though, would be good to have a read if you have the link.