NFS (Network File System): Still relevant in 2025?
NFS (Network File System) just turned 41 years old. So, is a technology that's been around since 1984 still relevant today, in 2025? Let me save you some scrolling: The answer is a resounding YES!
But wait, you might be thinking, "The world is buzzing with AI, GPUs, machine learning, and crypto, and you're writing about NFS?" Let me explain why.
Thanks for reading Su’s Substack! Subscribe for free to receive new posts and support my work.
Subscribed
Through some twist of fate, I consistently find myself working with NFS in its various avatars. This constant exposure got me wondering: how has a 41-year-old technology maintained its relevance? The secret lies in its constant evolution and a strong, dedicated developer community.
🥁 Time for a quick history lesson.
NFS came into existence in the 1980s when it was developed by Sun Microsystems. Between 1984 and 2016, multiple versions of NFS were released, with the latest being NFS v4.2.
So, while NFS has a long history, the latest major version, NFS v4.2, was released in 2016. Technically, NFS 4.2 is only 9 years old, but its original version is 41!
💡 With that quickest history lesson in the history of all lessons, the block: NFSv4.2!
🔧 Basic NFS Architecture
NFS is a relatively simple protocol conceptually, built around two main components: the NFS Client and the NFS Server.
The NFS Client mounts a remote directory that is exported by the NFS Server using the NFS protocol. Under the hood, it uses RPC (Remote Procedure Call) to send file operation requests (like read, write, open, etc.) and receive responses over the network.
🔍 NFSv4.2 Architecture at a Glance
NFSv4.2 is a modern, secure, and scalable iteration of the protocol. Some highlights:
PNFS (Parallel NFS): Enables clients to access data across multiple servers for better performance.
Server-side Copy: Allows the server to handle file copying, reducing network overhead. [1]
Application I/O Hints: Enable clients to advise the server about their expected I/O pattern. This allows the server to make more informed decisions about caching and I/O operations. [2]
Sparse File Support: Useful for VM disk images and databases, saving disk space.
Labeled NFS: Introduces mandatory access control via security labels, useful for multi-tenant environments.
Flex File Layouts: Especially useful in large-scale data environments.
In essence, NFSv4.2 is built not just for file sharing, but optimized for the cloud-native, container-heavy, security-sensitive, high-performance workloads of today.
📂 NFS Use Cases: Where Does NFS Shine in 2025?
Despite being a decades-old protocol, NFS remains deeply embedded in modern infrastructure. Here’s a look at some common real-world scenarios where NFS plays a critical role:
1. VMware ESXi
VMware ESXi supports NFS datastores, enabling virtual machines to store their virtual disks on shared network storage.
NFS provides a flexible, scalable way to share storage among multiple hosts without the complexity of block-level protocols.
Popular for its ease of setup and integration in enterprise virtualized environments.
2. Kubernetes
NFS is commonly used as a persistent volume (PV) backend for stateful applications running in Kubernetes clusters.
It allows multiple pods to share the same file system concurrently, ideal for shared config, logs, or data storage.
Easily integrated via Kubernetes PersistentVolumeClaims (PVCs) using the NFS provisioner.
3. AWS (Amazon Web Services)
Amazon Elastic File System (EFS) provides a simple, serverless, set-and-forget elastic file system.
With Amazon EFS, one can create a file system, mount the file system on an Amazon EC2 instance, and then read and write data to and from your file system.
Amazon EFS file system can be mounted in your virtual private cloud (VPC), through the Network File System versions 4.0 and 4.1 (NFSv4) protocol.
Source: https://docs.aws.amazon.com/efs/latest/ug/how-it-works.html
💡 Did this post spark your curiosity? Great! Stay tuned for our upcoming series where I will give you exact steps on how to setup your Highly available NFS and how to use it in a containerised environment.