While testing a NetApp filer, I found myself having some difficulty getting a simple NFS export to work. I defined a FlexVol, specified a “Storage Type” of NAS, but I didn’t see any obvious means of configuring an NFS export based on the volume. The “Shares” option under the “Storage” node in the left-hand pane of the administration GUI looked promising, but it turned out that it only deals with SMB shares!
Humbled, I decided to see if the answer might be found in NetApp’s official documentation. Per the documentation, I would need to define an export policy for my SVM, and then assign this export policy to my volume by navigating to the “Namespace tab”.
Configuring the export policy was easy enough. I navigated to the “SVM” option under the “Storage” node in the left-hand pane of the administration System Manager GUI.
On the SVMs view, I clicked on the “SVM Settings” button.
On the SVM Settings view, click the “Export Policies” option under “Policies” in the left-hand pane.
In the “Export Policies” view, click the “+ Create” button to create a new export policy. Assign it a name as shown below. You also have the option to copy a rule from an existing “Export Policy”, but I chose not to use that here.
Under the “Export Rules” section of the dialog, click on “+ Add” to create an “Export Rule”. You will see the following dialog. In this example, I specified that this export will be accessible only by hosts that are in one of two subnets. I could also have specified a single host, or a comma-separated list of many individual hosts or applied a netgroup so that the export can be dynamically updated without the intervention of a Storage Administrator. I also selected the NFSv3 protocol, and am permitting Read/Write access across the board.
Once you select “OK”, your new “Export Rule” will be visible in your “Export Policy”.
Now, we are ready to assign our new “Export Policy” to our volume. We already established that there’s no way to do this in the “Volumes” view, so how is it done? The documentation said that I would need to navigate to the “Namespace tab” to apply the export policy to the volume. I’m here to tell you that in OnTap 9.4, THERE IS NO NAMESPACE tab! This has evidently been replaced by the “Junction Path” option under the “Storage” node in the left-hand pane of the administration GUI.
The “Junction Path” view will show you each of your volumes, and which export policy they are associated with.
There are three closely related terms that require some explanation here.
- Junction Point – This is the SVM file system location where otherwise unrelated volumes are joined. In the example above, the junction point is “/”.
- Namespace – This is the logical grouping of all of the volumes that are rallying around that Junction Point! So nfsvol1, nfsvol2 and nfsvol3 are all living in the same Namespace, and are joined together at the same Junction Point.
- Junction Path – Literally, the path to each volume as begun from the Junction Point. So the Junction Paths for our three volumes are /nfsvol1, /nfsvol2 and /nfsvol3.
We need to apply our new “Export Policy” to “Junction Path” /nfsvol3. Simply right-click on /nfsvol3, and select “Change Export Policy”.
In the “Change Export Policy” dialog, select the new “Export Policy” from the drop-down menu, then select “Change”.
We can now see the proper “Export Policy” assigned to our Junction Path. The volume nfsvol3 will now be mountable by any clients in subnets 172.25.76.0 and 172.25.77.0.