NFS Overview

Prev Next

Network File System (NFS) is a distributed file system protocol that allows users on a client machine to access files over a network in the same way they would access local storage. NFS operates over TCP/IP or RDMA, and supports a client-server architecture, where the server hosts the files and the clients mount them, making it a popular choice for file sharing in UNIX/Linux environments.

VAST Supported NFS Versions

For NFSv4.2, VAST Cluster supports security labels, which allow more granular access control by incorporating security attributes directly into file metadata. These labels are used to enforce Mandatory Access Control (MAC) policies, typically in environments where enhanced security is necessary.

NFS Exports on VAST Cluster

In NFS, directories are shared with network clients as exports that clients can mount.  On VAST Cluster, NFS exports are created as views, a multiprotocol access feature that enables you to provide concurrent access to clients using several storage and file system protocols.

VAST Cluster supports NFSv3 and NFSv4 (4.1 and 4.2).  A view with NFSv4 in the list of protocols can be mounted by clients using NFSv4.1 and NFSv4.2

Access Control

You control client access to the NFS export by configuring the view created on the cluster for it, and the view policy applied to the view. You can set specific access rights, such as read/write, read-only, for IP addresses or hostnames.

Access Control for NFSv3

Views with NFSv3 support these access control features:

  • 'Minimal ACL', meaning POSIX permission mode bits, which set permissions read, write, and execute permissions for file owners, groups, and others.

  • Extended POSIX ACLs, which extend the 'minimal ACL' mode bits, and allow some permissions to be set for specific users and groups (using, for example, setfacl.)

  • VAST view policies, which set host-based access rules for specific client hosts.

Access Control for NFSv4

Views with NFSv4 support these access control features:

  • Native NFSv4 ACLs, allowing a broad range of permissions to be applied to specific users and groups (more so than is implemented in the extended POSIX ACL support in NFSv3), including support for inheritance of permissions set for a directory on new files in the directory.

  • Permission mode bits

  • View policies