« 15 tons in an Hour | Main | Tracking FTP Ports »

June 17, 2003

NFS Stinks (initial experience)

Maybe crawls is a better word. I had this great idea which would simplify some things for our servers, but I'm finding that if nfs is a key piece of my plan, sticking with the old method is probably better.

We have a machine that acts as the primary storage device and database server. The webserver machines are currently set to rsync the data from the primary storage machine and host it locally. There is a delay between the time a file is uploaded to the primary storage machine and when it becomes available on the webservers. More than one complaint has been registered about this delay.

So I got this brilliant idea to do NFS mounting so all machines would share common data. Started with some tests to see how quickly stuff could be pulled from the locally mounted drives. 280Mb file copied off the local drive in avg 20 realtime seconds (.10 usr, 3.8 sys).

Setting up NFS wasn't terribly difficult. share a drive by putting it in /etc/dfs/dfstab and starting up the nfs server (sudo /etc/init.d/nfs.server start). The client was even easier, mounting the drive using the usual mount command a little more syntax:

sudo mount -F nfs >server<:/data /data

My initial experience with NFS is that it crawls . . . so slow I can't imagine how it can be useful (the whole time I've been writing this I've been waiting for the file transfer to complete). Maybe I've got something configured wrong, I recently tested the data throughput on the switch between the machines. Maybe after some more review and thoughts I'll give it another shot.

So for now we'll be sticking with to rsync (and more user complaints). Will post the nfs times when the transfer is done.

UPDATE:
write to NFS took 90 realtime minutes (.08 usr, 4.1 sys)

Posted by mike at June 17, 2003 3:30 PM