This post covers the installation of a Nutanix NFS VAAI .vib on some “non-Nutanix” lab hosts.
Why would one do this? Several months ago I stood up a three node lab environment accessing “shared” storage using a Nutanix filesystem whitelist (allows defined external clients to access the Nutanix filesystem via NFS). While the Nutanix VAAI plugin for NFS would normally be installed on the host as part of the Nutanix deployment, it obviously was not there on my vanilla ESXi 6.0 Dell R720 servers accessing the whitelist….which made things like deploying VM’s from template and other tasks normally offloaded to the storage unnecessarily slow.
Since Nutanix just released “Acropolis Block Services / ABS” GA in AOS 4.7 (read more about it at the Nutanix blog) there’s probably less of a reason to use filesystem whitelists for this purpose now, but alas, maybe someone will find it useful (*edit* – it’s worth noting that ABS doesn’t currently support ESXi. I haven’t tried to see if it actually works yet but needless to say, don’t do it from a production environment and expect Nutanix to help you *edit 1/27/17* as of AOS 5.0 released earlier this month, ESXi is supported using ABS) At the time of this blog post, Windows 2008 R2/2012 R2, Microsoft SQL and Exchange, Red Hat Enterprise Linux 6+, and Oracle RAC are supported. NFS whitelists aren’t supported by Nutanix for the purpose of running VM’s, either.
- The first step is to SCP the Nutanix NFS VAAI .vib from one of your existing CVM’s. Point your favorite SCP client to the CVM’s IP, enter the appropriate credentials, and browse to the following directory:/home/nutanix/data/installer/%version_of_software%/pkgCopy the “nfs-vaai-plugin.vib” file to your workstation so that it can be uploaded to storage connected to your ESXi hosts using the vSphere Client.
- Once the .vib is uploaded to storage accessible by all ESXi hosts, SSH to the first host to begin installation. You may need to enable SSH access on the host as it’s disabled by default. This can be done by starting the SSH service in %host% > Configuration > Security Profile > Services “Properties” in the vSphere Client.
- Once logged in to your ESXi host, we can verify that the NFS VAAI .vib is missing by issuing the “esxcli software vib list” command.If the .vib were present, we’d see it at the top of the list.
- Now we need to get the exact path to location you placed the .vib on your storage. This can be done by issuing the “esxcli storage filesystem list” command. You will be presented with a list of all storage accessible to the host, the mount point, the volume name, and UUID.Highlight the “mount point” of the appropriate storage volume so that we can paste it into the next command. Alternatively, you could use the “volume name” in place of the UUID in the mount point path, but this was easier for me.
- Next, we will install the .vib file using the “esxcli software vib install -v “/vmfs/volumes/%UUID_or_volume_name%/%subdir_name%/nfs-vaai-plugin.vib”” command. I created a subdirectory called “VIBs” and placed the nfs-vaai-plugin.vib file in it. Be careful as the path to the file is case sensitive.If the install was successful, you should see a message indicating it completed successfully and a reboot is required for it to take effect. Assuming your host is in maintenance mode and has no running VM’s on it, go ahead and reboot now.
- Once the host has rebooted and is back online, start a new SSH session and issue the “esxcli software vib list” command again and you should see the new .vib at the top of the list.Voila! You can now deploy VM’s from template in seconds.