Hot answers tagged

29

NFS is fine, barring some specific other criteria are met, namely: The systems involved are both able to use NFS natively. Windows doesn't count here, it kind of works, but it's got a lot of quirks and is often a pain to work with when dealing with NFS in a cross-platform environment (and if it's just Windows, use SMB3, it eliminates most of the other ...


17

SMB 3.xx has a better tuned performance over "generic" TCP connectivity and has features like RDMA and multichannel support Microsoft didn't implement with "their" (actually - licensed) NFS client.


17

NFS is absolutely OK and is preferred over iSCSI due to the fact NFS is much easier to manage, share and backup.


12

We've been using NFS for years to attach our SAN to our VMware ESXi servers, running hundreds of VMs on it. No trouble at all. The bottleneck is rather the storage system than the network protocol. The network connection should be fast enough of course, meaning 10Gb Ethernet or fibre. We don't even bother with a separate storage network anymore.


8

I would limit the process memory with ulimit or with cgroups. You need to limit RSS and shared memory. Another approach would be to run it in a container or VM. Probably the easiest approach is to use a container: docker, podman, LXC...


6

On the Linux part - make sure your NFS Server Configuration is correct: nfs-utils and nfs-utils-lib should be installed rpcbind, nfs-server, nfs-lock, nfs-idmap should be enabled rpcbind, nfs-server, nfs-lock, nfs-idmap should be started Choose the directories you want to share make sure your user can access everything inside his directory get the UID and ...


6

I have reproduced this scenario in my test environment and I could find my data normally. To reproduce it I've followed these steps. Make sure that you follow every steps. Editing this file needs root access; therefore you will need to use sudo with your command. You can also open the file in any of your personal favorite text editors. 1 - Installed and ...


6

iSCSI might be a bit faster... https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/storage_protocol_comparison-white-paper.pdf https://www.hyper-v.io/whos-got-bigger-balls-testing-nfs-vs-iscsi-performance-part-3-test-results/ ...but NFS like any other network redirector (SMB3, AFS/AFP etc) allows concurrent multi-access which is ...


5

By default when Linux runs out of memory it uses a heuristic to decide which processes to kill to recover enough memory to continue. This often is not desired, though. In many cases (including probably this one) it would be better to kill the process which caused the out of memory condition. You can set the vm.oom_kill_allocating_task sysctl to cause the OOM ...


4

The answer lies in the good old man page of rpc.statd: File locks are not part of persistent file system state. Lock state is thus lost when a host reboots. Network file systems must also detect when lock state is lost because a remote host has rebooted. After an NFS client reboots, an NFS server must release all file locks held by applications that ...


3

The NFS client uses rpcbind service on server to discover the port number used by nfsd. More over, for clients of nfs v2 and v3, an additional rpc-statd service is used to manage locks. As rpc-statd runs on the client, a rpcbind should run on the client to let nfs servers to discover on which port rpc-statd listens. Thus, for client that uses nfs v4, the ...


3

When a named volume is initialized from an empty/new state, docker will copy the contents of the image directory into the named volume. There are several options to deal with this: Initialize the named volume with content before the container starts. As you've seen, this disables the volume initialization step. Update the image to have the desired uid/gid ...


3

Better to mount the individual sub-directories. When using soft links, an extra "lookup" is required every time a file in that structure is referenced. So, there is some performance impact. Plus... there's simply no need for the extra layer. It's just adding more administrative work for you to keep track of it all.


2

I found this searching for a solution to my own input/output error issues with a shared NFS mount. I was mounting a shared NFS drive on several machines, reading and writing with PHP. I was getting sporadic, but frequent, errors like this. I don't know if what I did fixed it, but on the off chance it helps someone else with the same problem ... So, I was ...


2

Sync programs like aws sync or rsync are easy to use, but metadata heavy. Large number of files causes a ridiculous number of metadata I/Os. Your tar command customizes the sync to what you care about. Only checking mtime metadata, or traversing trees with dates in the name, will be more efficient. But yes, custom means you must ensure it is correct. Block ...


2

This is what i tried to reproduce this issue. I have installed kubernetes cluster using kubeadm on redhat 7 and below is the cluster, node details. ENVIRONMENT DETAILS: [root@master tmp]# kubectl cluster-info Kubernetes master is running at https://192.168.56.4:6443 KubeDNS is running at https://192.168.56.4:6443/api/v1/namespaces/kube-system/services/kube-...


2

High latency is killing your performance. SMB isn’t designed to work over WAN, NFS isn’t different. Try using SMB cache with your SMB File Share. https://docs.microsoft.com/en-us/azure/storage/files/storage-sync-files-deployment-guide?tabs=azure-portal


2

NFS is as a distributed filesystem because it uses a network protocol to manage data access between the server and clients. However, it is very basic when compared to modern distributed filesystems like ceph or glusterfs. NFS simply provides a distributed access to a local file system located on the NFS server, while ceph and glusterfs provide the access to ...


2

Of those, only HDFS was designed from the beginning to split data blocks across many nodes, and the on disk format for doing so. Dell's HPC group calls these parallel file systems. Or I suppose you could say scale out. The rest are network protocols that access storage arrays remotely. This was the distributed challenge in the 1980s, how to connect ...


2

There are multiple version on NFS protocol - v2, v3, v4.0, v4.1 and v4.2. In version 4.1 NFS protocol defines parallel nfs, known as pNFS, which defines how distributed data can be access via NFS protocol. A pNFS capable version is available in Linux kernel 3.9 and newer. pNFS describes various ways how client can access distributed data: NFSv4.1 layout: ...


2

You're using NFS version 3, which needs several helper services in addition to the main NFS service in port 2049. One of these is rpc.statd, which has a key role in detecting reboots and recovering/clearing NFS locks after a reboot. These helper services may be located in random ports, and they are discovered by contacting the RPC port mapper (usually a ...


2

what directory do we need to share? This depends completely on your software. Are /usr and /home adequate? This depends completely on your software. or do I need also others like /lib, /lib64, /opt ...? This depends completely on your software. Also, what options for NFS mount to use? This depends completely on your software.


2

You can enable older versions of NFS protocol support using PowerShell Set-NfsServerConfiguration -EnableNfsv2 $False -EnableNfsv4 $True -EnableNfsv3 $True https://docs.microsoft.com/en-us/powershell/module/nfs/set-nfsserverconfiguration?view=win10-ps#examples


2

There is no nfs4 client for windows. You better try to use samba for windows clients, but keep nfs export for unix hosts in parallel.


1

In addition to the excellent answer from @telcoM, I would like to suggest two other possible solutions: mount nfs with the noac option (beware that this will cause a performance loss when issuing ls on large directory or stat on many files) use NFS v4.1 (v4.0 had some bugs leading to "stale file handling", so be sure to select the v4.1 protocol).


1

According to the fine manual, PersistentVolume objects support a mountOptions: ["local_lock=posix"]


1

Mount the NFS share. If desired, read only. Either server side for the export, or locally with the rdonly mount option. Only transferring files on demand is inherent for NFS, you have to open a file to get its contents. Caching, both client and server side, keeps subsequent accesses fast. If for some reason you wish to pre-warm cache, just read the files. ...


1

In the past as distributed filesystem was meant what we today we call a shared file system. Noways, under distributed filesystem we assume a filesystem distributed among multiple servers. NFS is a Network Attached Storage, where a file system exposed to multiple client. Though the under laying filesystem is possible to be distributed over multiple nodes, ...


1

You should tell disk usage tools not to cross file system boundaries. For example with -x option for du. du -shx *


1

It depends of course :) Amazon recommends scaling your workload across multiple EC2 instances for higher aggregate throughput. On the other hand writing heaps of small files has higher a much higher overhead than writing the same amount of data in one big blob. Check out Amazon EFS Performance Tips for more details. Also note that the actual throughput of ...


Only top voted, non community-wiki answers of a minimum length are eligible