Dell Unity: How to downgrade the max NFS version from 4.2 to 4.1 on Unity running OE 5.5
Summary: How to downgrade the max NFS version from 4.2 to 4.1 on Unity running OE 5.5.
Instructions
Starting with UnityOS 5.5, Dell Unity added support for NFSv4.2. NFSv4.2 protocol support brings additional security and performance and NFS attribute support of spares files and NFS labelling.
During the Unity OE upgrade, as SPs reboot sequentially, NFS clients supporting NFSv4.2 will automatically remount exports using NFSv4.2. This automatic protocol upgrade could cause unexpected issues, and some customers may need to remain on NFSv4.1. The reason for this is that Unity and the client will negotiate the highest NFS version they both support at mount time, but if NFSv4.2 specific settings were not enabled or configured, the mounts will fail or data access will fail.
There are three potential workarounds which can be executed to downgrade NFSv4.2 to NVSv4.1.
- Client side:
Customers can explicitly specify the NFS protocol version during client-side mounting. For example, to enforce NFSv4.1:
[root@rhel8 tmp]# mount -o vers=4.1 5.6.7.196:/test /tmp/test
Note that no SP reboot is required when the client-side mount is altered. Additionally, this setting will persist through new Unity NAS server creation.
- Unity side
From Unity, there is no way to specify the NFSv4 version in Unisphere, but there is a CLI parameter introduced in Unity OE 5.5 that controls the max NFSv4 version Unity can support.
The following command can be used to list the current max NFSv4 version supported on Unity NAS server. Both "default_value = 2" and "current_value = 2" indicates Unity supports NFSv4.2.
06:59:09 service@unity spa:~/user# svc_nas ALL -param -facility nfsv4 -info maxMinorVersion -verbose
SPA :
param nfsv4.maxMinorVersion added into the list of visible params
name = maxMinorVersion
facility_name = nfsv4
default_value = 2
current_value = 2
configured_value =
param_type = global
user_action = reboot SP
change_effective = reboot SP
range = (0,2)
description = NA
test:
name = maxMinorVersion
facility_name = nfsv4
default_value = 2
current_value = 2
configured_value =
param_type = global
user_action = reboot SP
change_effective = reboot SP
range = (0,2)
description = NA
The following command can be used to downgrade the max NFSv4 version from default 4.2 to 4.1.
07:01:30 service@unity spa:~/user# svc_nas ALL -param -facility nfsv4 -modify maxMinorVersion -value 1
SPA : done
Warning 17716815750: SPA : You must reboot the SP for maxMinorVersion changes to take effect.
After the parameter change and SP reboot, the "vers" in client mount output should be 4.1.
[root@rhel8 tmp]# mount -v
5.6.7.196:/test on /mnt type nfs4 (rw,relatime,vers=4.1,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=5.6.7.242,local_lock=none,addr=5.6.7.196)
Additionally, a second option on the Unity side would be to disable security labels on all NAS servers with the following command
18:26:32 service@unity spa:~/user# svc_nas ALL -param -f nfsv4 -m secLabelSupport -v 0
param nfsv4.secLabelSupport added into the list of visible params
SPA : done