Tests needed

From Linux NFS

(Difference between revisions)
Jump to: navigation, search

Revision as of 00:00, 16 July 2005

NFS Parameter Tuning

Create a test script that iterate through various NFS parameters and run test suites on them.

In /etc/fstab, try various values for each of the following parameters, for both NFSv3 and NFSv4:

                 default    advanced test
 rsize=n          1024      performance at 512, 1024, 2048, 4091, 8192, 16384, 32768
 wsize=n          1024      performance at 512, 1024, 2048, 4091, 8192, 16384, 32768
 timeo=n             7      in busy network, performance at 3, 7, 15, 30, 60
 retrans=n           3      in faulty network, robustness at 1, 2, 3, 6, 12, 24
 acregmin=n          3      on highly loaded server, overall performance at 1, 2, 3, 6, 12, 24
 acregmax=n         60      on highly loaded server, robustness and overall performance at 15, 30, 60, 120, 240
 acdirmin=n         30      on highly loaded server, overall performance at 5, 10, 15, 30, 60, 120, 240
 acdirmax=n         60      on highly loaded server, robustness and overall performance at 15, 30, 60, 120, 240
 actimeo=n           -      ??
 retry=n         10000      try with value of 1 to verify it still works correctly
 namlen=n          255      ??  not sure if this is worth testing
 port=n           2049      set server to use port 10000, and verify this options works
 mountport=n                set mountd to use port 10001, and verify this option works
 mounthost=name             ??
 mountprog=n    100005      ??
 mountvers=n         1      ??
 nfsprog=n      100003      ??
 nfsvers=n           2      try with 3 and 4, and verify the right version gets used
 nolock            off      ??
 bg                off      switch this on, and verify mounts occur properly in background
 fg                 on      
 soft              off      switch this on, and verify an I/O error is generated when mounting a nonexistant server
 hard               on      
 intr              off      test how this affects operation when major timeouts occur with hard mounts
 posix             off      turn on and test with filenames > 255 chars
 nocto             off      test how this works when 
 noac              off      test performance with 1-N clients writing to the same filesystem on the server
 tcp               off      verify this option is ignored in nfsv4
 udp                on      verify this option is ignored in nfsv4


Mount Parameter Testing

  • Measure total time when using mount -F vs mount for a lot of mount points
  • Verify that mount -vf does not actually mount the filesystem but just pretends to
  • Make /etc read only, and verify that mount -n allows mounting without writing in /etc/mtab
  • Verify that the -s option allows invalid -o options to be specified to mount, and be ignored properly
  • Verify that mount -r mounts read only
  • Verify that mount -a -O no_nfs4 mounts everything but the nfs4 mounts
  • Verify that mount --bind works to remount a subtree somewhere else
  • Verify that mount --move works to move a subtree someplace else
  • Verify that mount exits with the proper codes on error:
      0      success
      1      incorrect invocation or permissions
      2      system error (out of memory, cannot fork, no more loop devices)
      4      internal mount bug or missing nfs support in mount
      8      user interrupt
      16     problems writing or locking /etc/mtab
      32     mount failure
      64     some mount succeeded

Umount Parameter Testing

  • Verify umount -n does not write to /etc/mtab
  • Verify umount -r remounts read-only when unmounting fails
  • Verify the umount command notifies the server when an NFS filesystem is unmounted. (Bug in NFSv3)
  • Verify that umount -t nfs4 unmounts a mountpoint only if it is an nfs4 mountpoint
  • Verify that umount -t no_nfs4 does not unmount a mountpoint if it is an nfs4 mountpoint
  • Verify that umount -a -t nfs4 unmounts all nfs4 mounts
  • Verify that umount -a -t no_nfs4 unmounts everything except nfs4 mounts
  • Verify that umount -O works to only allow mount points with the given options are unmounted
  • Verify that umount -f works to force unmount of unreachable NFS systems
  • Verify that umount -l detaches the filesystem from the filesystem hierarchy immediately, and cleans up references to the filesystem as the processes using them complete
Personal tools