XFS on a Web Server?
WWYD asks: "I am going to be setting up a fresh web server for the company I work for and am looking for some advise. It will be a Redhat 7.3 / Apache / PHP standard everyday setup that will be hosting 50+ radio station sites. My question is about SGI's XFS file system. I've been running it at home and love the recovery time after the system dies. (I experiment a lot). Would XFS be a good filesystem for a web server?"
On my laptop, after reading the scary warnings on Gentoo install docs, I opted for XFS (not really, it was purely an excuse). I had a buggy intel e100 pro ethernet driver, and on many of the crashes, I lost all the data on some of the open files. Filesystem integrity was ok, after every crash, but I never had the same data-loss behaviour with ReiserFS.
My advice is: benchmark the filesystems you consider stable, against your usage pattern. It's the only real data you need, apart from reliability info. However, if you're going to serve mostly static HTML, I'd say your bottleneck will be bandwidth or RAM, not your disks.
I was not very impressed with XFS, but it's my opinion only. It's credited as a Very Good Filesystem (tm).
If at first you don't succeed, skydiving is not for you
I've been using XFS for all my systems since the beggining of this year and I've personally had zero problems with XFS. I have heard some complaints from other people but when I asked them what they didn't like the complaint was that there were null bytes in files after a crash. Unfortunatly for them this is the intended behavior by XFS in some situations.
I think the most common kernel with XFS is 2.4.18 which is known to have some swapping problems.
So as long as the RedHat 7.3 kernel doesn't have that swapping problem I'd say go for it. Be sure to install the xfsdump package if it isn't already and run the xfs_fsr command weekly from a cron job to keep performance high.
My setup is five dual AMD webservers each with a RAID1 and RAID5 partition, 1GB of RAM, and XFS.
:)
The 1.1 release against 2.4.18 is really stable, and I haven't had any problems myself, or heard too many on the XFS mailing list in the past few months. If you have the means, I'd recommend patching against a vanilla kernel, although the ISO option can be nice too.
XFS is well known for its good performance when handling large files, which in a streaming situation like yours is a good thing. 'Allocation groups' in XFS are also very good at handling parrallel I/O, another good thing in a streaming enviornment. Of course, most of this can be found on the XFS site, http://oss.sgi.com/projects/xfs/
As a happy user of XFS in a production environment for almost two years, I'd highly recommened it for your type of situation. Good luck!
ReiserFS would be my second choice: it isn't compatible with anything, but it brings some nice, new functionality to the table.
XFS is unlikely to be as well tested or tuned as either of these others on Linux.
I use XFS on an intranet web server and samba server with positive results. It's an older kernel (I needed the ACL kernel patches so the NT domain ACLs would work with samba), so I don't have to recover from crashes. But, performance-wise, I have no complaints. Granted, I have a fraction of the traffic that your site would have.
r y/l-fs10.html
I also followed Daniel Robbin's advice on XFS (which you've no doubt read already, but just in case: http://www-106.ibm.com/developerworks/linux/libra
Amateurs discuss tactics. Professionals discuss logistics.
Sun Cobalt is using XFS on their new RaQ550 web servers.
More information.
I've seen the demo and it looks cool. Not sure why they chose XFS, but I'm sure you can ask the developers.