Slashdot Mirror


Ask Slashdot: Best File System For Web Hosting?

An anonymous reader writes "I'm hoping for a discussion about the best file system for a web hosting server. The server would serve as mail, database, and web hosting. Running CPanel. Likely CentOS. I was thinking that most hosts use ext3 but with of the reading/writing to log files, a constant flow of email in and out, not to mention all of the DB reads/writes, I'm wondering if there is a more effective FS. What do you fine folks think?"

132 of 210 comments (clear)

  1. ZFS by Anonymous Coward · · Score: 5, Informative

    Or maybe XFS.

    1. Re:ZFS by Anonymous Coward · · Score: 2, Funny

      FAT

    2. Re:ZFS by Anonymous Coward · · Score: 3, Informative

      "Maybe" XFS? XFS.

      ZFS if funky and all but you don't need the extra features and the additional CPU overhead is just wastful. The only real thing to care about is lake of fsck on unclean reboot, and fast reads. XFS+LVM2+mdraid (although a proper RAID controller is preferable) is perfect.

    3. Re:ZFS by sjames · · Score: 5, Funny

      Depending on the type of web content, XXXFS might be appropriate.

    4. Re:ZFS by corychristison · · Score: 2

      Agreed. XFS is solid and fast, with relatively low CPU overhead.

      EXT4 from what I have read is very good, as well. Some debate its stability though.

    5. Re:ZFS by Anonymous Coward · · Score: 1

      Bugs happen. Don't care about that as much. Also don't think minor differences in filesystems really matter; get more RAM. If you're seeing stress on a server, eeking out a few percent improvement on capacity here in there isn't where you should be spending your time.

      My issue with ext* is that I have rarely had an experience on a loaded system where I come back from a power failure without having to be at the console with a tissue and a box of chocolates. I suspect this is because most distros defaulting to ext are using bad settings for the journalling.

      I understand the complains people have with reiser, but at least she comes back without needing me to hold her hand.

      I'm using XFS on my most recent machine. It seems OK. Only had one power failure to date, though, so...

    6. Re:ZFS by clarkn0va · · Score: 1

      As I recall, XFS is particularly good with large files. I use it for a media volume on my NAS. It's major down side from my point of view is lack of TRIM support, which only matters if it's on an SSD of course. The other thing to consider would be the occasional defrag.

      --
      I am literally 3000 tokens away from the chaotic crossbow --Stephen
    7. Re:ZFS by WuphonsReach · · Score: 1

      Ext4 is also a lot better then ext3 was for very large files, and has the larger market share / acceptance / eyeballs. So not sure I'd bother to use XFS just for large file support.

      In ext3, when you would delete a multi-gigabyte file, it would take up to a few minutes for it to happen. In ext4, that process is measured in fractions of a comparison.

      --
      Wolde you bothe eate your cake, and have your cake?
    8. Re:ZFS by ThePhilips · · Score: 1

      I have seen as much data corruptions on HP-UX/ia64, AIX/POWER and Solaris/SPARC boxes as on cheaper Linux/x86 and Linux/x64 boxes with SUSE or RHEL. I'm pretty sure in long term Solaris/x64 would show the same results.

      Cause of most corruptions were faulty power supply or faulty memory module (and dumb admins who had ignored the ECC errors).

      The only memorable software-induced corruption I can recall right now was on HP-UX/ia64. Some weird admins have exported all local files systems via NFS. And then, to "unify" configuration across all servers, they have imported them locally too and ran everything on the imported NFS. Yes: local disk <- NFS server <- NFS client. That didn't work well and caused piles of corruptions which have stopped as soon as the NFS->NFS layers was bypassed with few symlinks. So you see, even the exhaustively tested HP-UX 11 v2 - which still lacks VFS and the quoted reasons for that that HP tests in depth the file systems and thus they have to be integrated into the kernel - can fail.

      --
      All hope abandon ye who enter here.
    9. Re:ZFS by joaommp · · Score: 3, Informative

      Why hasn't anybody mentioned JFS?

      Since the demise of ReiserFS, that's what I've been using everywhere. It's fast, really stable and has the lowest CPU usage of all. So, why not JFS?

    10. Re:ZFS by monkeyhybrid · · Score: 1

      at the console with a tissue and a box of chocolates

      Cheap date!

  2. XFS by Anonymous Coward · · Score: 1

    Check it out here http://en.wikipedia.org/wiki/XFS

    1. Re:XFS by Anonymous Coward · · Score: 1

      Check it out here http://en.wikipedia.org/wiki/XFS

      I have to agree. I've been using XFS for years on several of my busiest systems with no data loss and terrific performance on massive amounts of data. It performs significantly better than ext3 and makes better use of I/O bandwidth.

    2. Re:XFS by steveg · · Score: 2

      Has XFS gotten over it's corruption problems when shut down dirty?

      Back when I used it, I was always very careful to have *good* UPS support.

      --
      Ignorance killed the cat. Curiosity was framed.
    3. Re:XFS by 0123456 · · Score: 1

      My MythTV box gets shut down a few times a year when we lose power at our house and so far there haven't been any problems. I'm not sure I'd trust it for valuable data, though.

    4. Re:XFS by greg1104 · · Score: 5, Informative

      The biggest source for early XFS corruption issues was that at the time the filesystem was introduced, most drives on the market lied about write caching. XFS was the first Linux filesystem that depended on write barriers working properly. If something was declared written but not really on disk, filesystem corruption could easily result after a crash. But when XFS was released in 2001, all the cheap ATA disks in PC hardware lied about writes being complete, Linux didn't know how to work around that, and as such barriers were not reliable on them. SGI didn't realize how big of a problem this was because their own hardware, the IRIX systems XFS was developed for, used better quality drivers where this didn't happen. But take that same filesystem and run it on random PC hardware of the era, and it usually doesn't work.

      ext4 will fail in the same way XFS used to, if you run it on old hardware. That bug was only fixed in kernel 2.6.32, with an associated performance loss on software like PostgreSQL that depends on write barriers for its own reliable operation too. Nowadays write barriers on Linux are handled by flushing the drive's cache out, all SATA drives support that cache flushing call, and the filesystems built on barriers work fine.

      Many of the other obscure XFS bugs were flushed out when RedHat did QA for RHEL6. In fact, XFS is the only good way to support volumes over 16TB in size, as part of their Scalable File System package, a fairly expensive add-on the RHEL6. All of the largest Linux installs I deal with are on XFS, period.

      I wouldn't use XFS on a kernel before RHEL6 / Debian Squeeze though. I know the software side of the write barrier implementation, the cache flushing code, works in the 2.6.32 derived kernels they run. The bug I pointed to as fixed in 2.6.32 was specific to ext4, but there were lots of other fixes to that kernel in this area. I don't trust any of the earlier kernels for ext4 or xfs.

    5. Re:XFS by segedunum · · Score: 3, Informative

      Red Hat spent a lot of time effectively saying to everyone that they didn't support XFS. Eventually they had to throw in the towel because it's the only Linux filesystem that genuinely works well once you start dealing in terabytes of data. It's also recently got better at handling lots of smaller files and metadata. It's an incredibly useful filesystem and unfortunate that it still gets a lot of FUD thrown at it because of many peoples' misunderstanding about data loss issues several years ago.

    6. Re:XFS by steveg · · Score: 1

      Good to know. The last time I dealt with it was Red Hat 9, so that should give you an idea how long ago that was. It was for database servers, and we *did* have good UPSs.

      Trying it on my workstation wasn't nearly so protected, and I paid the price on that.

      --
      Ignorance killed the cat. Curiosity was framed.
    7. Re:XFS by segedunum · · Score: 1

      I hate to reply to this but this is the usual anonymous crap you get regarding XFS that I was referring to. Someone's cousin twice removed always has a 'crash' which results in lots of data loss apparently, the reasons for which aren't obvious.

  3. ext3 by Anonymous Coward · · Score: 5, Insightful

    if you have to ask you should stick with ext3

    1. Re:ext3 by SuperQ · · Score: 2

      +1 to this.

      Unless you have a business case where you know you need something different, stick to what's simple and what works.

      ext4 is also a nice option over ext3. It uses extent instead of bitmap block allocaiton which improves metadata efficiency with no downside.

    2. Re:ext3 by antdude · · Score: 1

      Why not ext4?

      --
      Ant(Dude) @ Quality Foraged Links (AQFL.net) & The Ant Farm (antfarm.ma.cx / antfarm.home.dhs.org).
    3. Re:ext3 by Admiral+Llama · · Score: 3, Funny

      I don't quite trust ext4 for writes.

      app: Hey, can you write this data out to
      ext4: DONE!
      app: Uhh, that wasn't long enough to actually write the data.
      ext4: Sure it was, I'm super faGRRRRRRRRRRRRRst at writing too.
      app: wait, did you just cache that write and report it written but then not actually write it to disk until 30 seconds later?
      ext4: Yeah, what about it?

      That being said, ext3 and mount it with the noatime flag. If you're on a web server you don't want to be hammering it with writes to update the last access time. That's just silly.

    4. Re:ext3 by WuphonsReach · · Score: 1

      At this point, you can change that to "If you have to ask, use ext4". It's been around long enough at this point that it's ready for production use (and has been for a year or two). Especially if you have situations of multi-gigabyte files that take a long time to delete under ext3, or you want the faster fsck of ext4.

      I plan on waiting until at least late next year before I'd test btrfs for production. Let others be the pioneers in that, because ext4 handles our workload just fine.

      --
      Wolde you bothe eate your cake, and have your cake?
    5. Re:ext3 by Per+Wigren · · Score: 2

      ext4 and almost all other filesystems, in chorus: You want a guarantee that the data you just wrote is permanently stored even in case of a power failure? Use fsync() you lazy bastard.

      --
      My other account has a 3-digit UID.
    6. Re:ext3 by Per+Wigren · · Score: 2

      The main point for me to use ext4 over ext3 is that ext3 has broken fsync() behaviour. If you fsync() a single file descriptor on ext3 it will flush the whole filsystem buffer instead of just the dirty blocks of that file descriptor. Terrible for write concurrency, especially with databases.

      --
      My other account has a 3-digit UID.
    7. Re:ext3 by ThePhilips · · Score: 1

      fsync() is waaaay too slow. You could have at least recommended the fdatasync(), which is less slow. Or even better: opening files with O_SYNC/O_DSYNC flag.

      The experimental nature of Linux IO subsystem, its unpredictability, is one of the reasons why some actually pick *BSD instead. OK, disk IO is slower than that of Linux, but at least one has sensible IO guarantees: data are written probably not right away, but without any great delay. (The only major problem of *BSD is the lack of drivers for the storage devices.)

      P.S. In the past I had run a server with ext3/journaling (with slightly problematic experimental H/W) where this script was running in the background:

      while sleep 1; sync; done

      I found it to be a good compromise. The often sync of whole FS wasn't causing as much interactivity problems as I have expected (first sync might be slow, but consequent ones have much less work to do). On the other side, that was magnitude faster than fsync()ing every write() in the application.

      --
      All hope abandon ye who enter here.
    8. Re:ext3 by helix2301 · · Score: 1

      I am running a cent 6.3 box with ext4 and works well for me I have no issues with he file system. Starting from Linux Kernel 2.6.19 ext4 was available. Supports huge individual file size and overall file system size. Maximum individual file size can be from 16 GB to 16 TB Overall maximum ext4 file system size is 1 EB (exabyte). 1 EB = 1024 PB (petabyte). 1 PB = 1024 TB (terabyte). Directory can contain a maximum of 64,000 subdirectories (as opposed to 32,000 in ext3) You can also mount an existing ext3 fs as ext4 fs (without having to upgrade it). Several other new features are introduced in ext4: multiblock allocation, delayed allocation, journal checksum. fast fsck, etc. All you need to know is that these new features have improved the performance and reliability of the filesystem when compared to ext3. In ext4, you also have the option of turning the journaling feature “off”.

    9. Re:ext3 by SuperQ · · Score: 1

      Why not zoidberg?

    10. Re:ext3 by antdude · · Score: 1

      Because my name is not Zoidberg and I am not on Futurama. :P

      --
      Ant(Dude) @ Quality Foraged Links (AQFL.net) & The Ant Farm (antfarm.ma.cx / antfarm.home.dhs.org).
  4. The best server? by Anonymous Coward · · Score: 3, Insightful

    The best file system would be one not running: mail, database, web hosting, and CPanel.

  5. ext4 unless there's a good reason not to. by MarcAuslander · · Score: 3, Insightful

    The obvious argument for ext4, the current ext version, is that it's been around a long time and is very solid. I'd only use something else if I knew the performance of ext4 would be an issue.

    1. Re:ext4 unless there's a good reason not to. by Desler · · Score: 1

      4 years is a "long time" now? Something like XFS must be considered ancient by your standards since it's 18 years old.

    2. Re:ext4 unless there's a good reason not to. by Anonymous Coward · · Score: 1

      2nd this. Ext4 is the default, and it's a good default.

      For your average site it's not going to make a shred of difference either way. If your workload is so special that you need to tune the file system, you probably already know approximately what you need.

      One potential pitfall: I would avoid putting a database on a copy-on-write filesystem like Btrfs or ZFS. Besides that, the database will just allocate some disk space and then ignore the file system completely - in fact, it would be even happier if you just gave it a raw partition to play with. (But then it's a pain to move or expand, so again, don't do that unless you know you need to.)

      When Btrfs is five years more mature, maybe I will recommend Btrfs, with COW disabled on the database files for busy sites.
      Not for any performance advantage over Ext4, but because of the snapshot and checksum features.

    3. Re:ext4 unless there's a good reason not to. by Vekseid · · Score: 4, Informative

      By my benchmarks ext4 was about 25% faster than ext3 for my typical database loads, largely due to extents. This is on my twin RAID 1 10krpm drives.

      I still use ext3 for my /boot partitions, but other than that there doesn't seem to be much reason to stick to ext3 at all.

    4. Re:ext4 unless there's a good reason not to. by cheater512 · · Score: 2

      ext2 which is what ext4 is based on beats xfs by a year. 19 years old. :)

    5. Re:ext4 unless there's a good reason not to. by Vanders · · Score: 3, Interesting

      The good reason not too is that I don't need to log in at 3am to type the root password and watch it fsck should it need an unclean reboot. Use XFS.

    6. Re:ext4 unless there's a good reason not to. by Carewolf · · Score: 1

      I use ext2 for /boot and /tmp. On boot for compat and because it is rarely written to, on /tmp because it is faster and /tmp doesn't need to be able to recover after a crash.

    7. Re:ext4 unless there's a good reason not to. by MightyMartian · · Score: 1

      I store all my most important files in /tmp, you insensitive clod!

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    8. Re:ext4 unless there's a good reason not to. by Vekseid · · Score: 1

      I use tmpfs for /tmp, but then it is a webserver with a rather large amount of database throughput.

    9. Re:ext4 unless there's a good reason not to. by mister_playboy · · Score: 1

      Recommending ext3 over ext4 at this point is silly. It's like recommending Vista over Win7.

      --
      Do what thou wilt shall be the whole of the Law ::: Love is the law, love under will
  6. ReiserFS Sure by Anonymous Coward · · Score: 4, Funny

    It will kill your innocent files to save some space....

    1. Re:ReiserFS Sure by Anonymous Coward · · Score: 3, Funny

      I heard it can murder your server's performance.....

    2. Re:ReiserFS Sure by Anonymous Coward · · Score: 4, Funny

      I heard it only kills the wifi. And then makes it disappear completely.

    3. Re:ReiserFS Sure by afgam28 · · Score: 1

      But it also has a feature that will tell you where the wifi is...

    4. Re:ReiserFS Sure by nanospook · · Score: 1

      In Russia, Reiser stores YOU!

      --
      Have you fscked your local propeller head today?
  7. CPanel will be your problem by MindCheese · · Score: 5, Insightful

    The inefficiencies and handicaps introduced by that bloated turd of a platform will far outwiegh the sub-percentage point gains you might see from using ReiserFS or any other alternative filesystem.

    1. Re:CPanel will be your problem by DNS-and-BIND · · Score: 1

      Huh, I was thinking about putting it on the crappy Windows 2003 Server server that was just dumped on me. What else should I use for management of ordinary tasks over the web? No budget, of course.

      --
      Shutting down free speech with violence isn't fighting fascism. It IS fascism!
    2. Re:CPanel will be your problem by Zero__Kelvin · · Score: 1

      ", I was thinking about putting it on the crappy Windows 2003 Server server that was just dumped on me.. What else should I use for management of ordinary tasks over the web"

      Meditation is your best bet, since it involves not thinking.

      --
      Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
  8. Whatever is the best with the given OS by mikeken · · Score: 4, Interesting

    Typically, that is the default file system. That is how you will get the best support when there is an issue. It will also be the most stable with your OS because the developers focus on that FS. So personally, I would use whatever is the default FS for whatever OS you decide to use. To get off topic a bit, IMHO that OS should be Debian because it is just too awesome and Debian based OS's have the largest community. Also, it should be running on Linode.com ;)

  9. separate your data by Dan9999 · · Score: 1

    Put the data on the best type of filesystem required for it whether it be ext3, ext4, some NAS box with tons of memory, Ramdisks. If you have a complex web site, have multiple filesystem types. If you decide that you want a one size fits all then you obviously aren't that serious about the question.

  10. WinFS by jfdavis668 · · Score: 2, Funny

    It will be released someday

  11. Turn off the last accessed time stamp by Anonymous Coward · · Score: 2, Interesting

    Especially if you decide to use a SSD. Even if there's not alot of data writing going on the constant rewriting of the directory entries to update the last accessed time stamp would wear an SSD and slow a regular hard drive.

    1. Re:Turn off the last accessed time stamp by Lehk228 · · Score: 1

      it won't significantly wear any modern SSD, but shutting it off will save you wasted I/O for a function that is not terribly important for a web server, especially a web server that keeps logs storing far more complete information than most recent

      --
      Snowden and Manning are heroes.
  12. NFS + ZFS by Anonymous Coward · · Score: 1

    NFS export hosted on ZFS but what do I know.

    1. Re:NFS + ZFS by clarkn0va · · Score: 1

      I read the bug report at your link and I don't see any indication that a) this has any relation to the size of the directory, or b) that this one bug makes NFS a flaky POS. I have a 1TB+ NFS volume to/from which I write/read several GB per day. Never in years has it given me one problem, but hey, that's just me.

      --
      I am literally 3000 tokens away from the chaotic crossbow --Stephen
    2. Re:NFS + ZFS by TopSpin · · Score: 1

      I don't see any indication that a) this has any relation to the size of the directory

      The cited bug points out a problem with readdir(). This manifests itself as failures with other software, including dovecot (where maildir is used) and bonnie++. Some of those other bugs were reported and marked as duplicates, some weren't.

      Ultimately it boiled down to a flaw in Linux NFS that was fixed by Trond Myklebust and was still perculating through distributions over a year later.

      Never in years has it given me one problem, but hey, that's just me.

      Yeah, that's just you. Me? I've been watching hapless administrators discover NFS flaws since the 90's and I have long since abandoned NFS as a serious tool for production operations. It's fine in most cases as a file share for interactive use (/home and ad hoc shares) and not much else. Under certain conditions with extremely good NFS implementations (netapp, for example) you can pull it off. The other 99% of the time it's just a mistake.

      --
      Lurking at the bottom of the gravity well, getting old
  13. XFS for huge mailqueues, otherwise EXT3 or EXT4 by ZG-Rules · · Score: 2

    From memory (I've been out of that business for 6 months) CPanel stores mail as maildirs. If you have gazillions of small files (that's a lot of email) then XFS handles it a lot better than ext3 - I've never benchmarked XFS against ext4. Back in the day, it also dealt with quotas more efficiently than ext2/3, but I really doubt that is a problem nowadays.

    If you aren't handling gazillions of files, I'd be tempted to stick to ext3 or ext4 - just because it's more common and well known, not because it is necessarily the most efficient. When your server goes down, you'll quickly find advice on how to restore ext3 filesystems because gazillions of people have done it before. You will find less info about xfs (although it may be higher quality), just because it isn't as common.

    1. Re:XFS for huge mailqueues, otherwise EXT3 or EXT4 by spacey · · Score: 3, Interesting

      From memory (I've been out of that business for 6 months) CPanel stores mail as maildirs. If you have gazillions of small files (that's a lot of email) then XFS handles it a lot better than ext3 - I've never benchmarked XFS against ext4. Back in the day, it also dealt with quotas more efficiently than ext2/3, but I really doubt that is a problem nowadays.

      If you aren't handling gazillions of files, I'd be tempted to stick to ext3 or ext4 - just because it's more common and well known, not because it is necessarily the most efficient. When your server goes down, you'll quickly find advice on how to restore ext3 filesystems because gazillions of people have done it before. You will find less info about xfs (although it may be higher quality), just because it isn't as common.

      XFS is probably better for large maildirs, but ext3 in recent kernels has much better performance on large directories starting in the late 2.6 kernels. It doesn't provide for infinite # of files per directory, but it doesn't take a huge hit listing e.g. 4k files in a directory anymore.

      --
      == Just my opinion(s)
    2. Re:XFS for huge mailqueues, otherwise EXT3 or EXT4 by ivoras · · Score: 1

      it doesn't take a huge hit listing e.g. 4k files in a directory anymore.

      Umm, maildirs store each message in its own file. I clean up (archive) emails from each past year in a separate folder and still easily have 8k files in each... and that is not my busiest mailbox.

      After a few thousand items of anything, the proper tool for the job is a database, not a file system. Though file system can be described as a kind of database, any in case there are problems common to both, such as fragmentation, a specialized data storage always beats generic ones. Personally, I like what Dovecot does - maintains a mbox-like structure ("old-fashined", all messages from a single mail folder in a single file) which is also padded appropriately so fields can be updated without rewriting the file) and builds an index file on top of it to enable efficient random message access. In this way you get efficient, big, append-only data files, and small, easily cacheable index files: win-win.

      --
      -- Sig down
  14. Is it for work? Don't roll a custom solution by 93+Escort+Wagon · · Score: 5, Insightful

    You're not going to be there forever, and all using a non-standard filesystem is going to accomplish is to cause headaches down the road for whoever is unfortunate enough to follow you. Use whatever comes with the OS you've decided to run - that'll make it a lot more likely the server will be kept patched and up to date.

    Trust me - I've been the person who's had to follow a guy that decided he was going to do the sort of thing you're considering. Not just with filesystems - kernels too. It was quite annoying to run across grsec kernels that were two years out of date on some of our servers, because apparently he got bored with having to constantly do manual updates on the servers and so just stopped doing it...

    --
    #DeleteChrome
  15. Re:Just by Anonymous Coward · · Score: 3, Insightful

    Even with an SSD you still need a file system format for it to be usable.

    I'm all for ZFS, very reliable over long periods of time.

  16. XFS by axehind · · Score: 1

    If you need a large filesystems then go with XFS. RHEL only supports up to 16TB filesystems with ext4 and up to 100TB with XFS. I'm not sure at this point where the limitation comes from as it is limited even with X86-64.

  17. Re:Just by gbjbaanb · · Score: 5, Insightful

    yeah - its especially good for your log files, after all, SSD is just like a big RAM drive.....

    you're going to be better off forgetting SSDs and going with lots more RAM in most cases, if you have enough RAM to cache all your static files, then you have the best solution. If you're running a dynamic site that generates stuff from a DB and that DB is continually written to, then generally putting your DB on a SSD is going to kill its performance just as quickly as if you had put /var/log on it.

    RAID drives are the fastest, stripe data across 2 drives basically doubles your access speed, so stripe across an array of 4! The disadvantage is 1 drive failure kills all data - so mirror the lot. 8 drives in a stripe+mirror (mirror each pair, then put the stripe across the pairs - not the other way round) will give you fabulous performance without worry that your SSD will start garbage collecting all the time when it starts to fill up.

  18. Stick with the default by dokebi · · Score: 2

    Unless you want the special features of other file systems (say ZFS), the default (ext3 or ext4) should be fine. They are capable of handling high I/O loads.

    If you want even more I/O performance, then use SSDs.

    --
    In Soviet Russia, articles before post read *you*!
  19. Re:Just by Synerg1y · · Score: 2, Insightful

    Due to the amount of read writes & the life span of SSD's they are some of the worst drives you can get for a high availability web server. ext3 should work fine for you, especially if you're not too familiar with the different types of file systems. Two things I might recommend is if you're looking at really high traffic, you need to separate out your database, email, & web server into 3 different entities. If not... again the file system is not really a concern for you. Last, but not least, redundancy is what will save you a lot of time and headache, make sure you have some sort of mirroring going on, or if your server is at a datacenter, they probably take care of it for you.

  20. What is wrong with you? by glassware · · Score: 5, Insightful

    This isn't 1999. You have no reason to host your web server, email server, and database server on the same operating system.

    You would be well advised to run your web server on one machine, your email server on another machine, and your database server on a third machine. In fact, this is pretty much mandatory. Many standards, such as PCI compliance, require that you separate all of your units.

    Take advantage of the technology that has been created over the past 15 years and use a virtualized server environment. Run CentOS with Apache on one instance - and nothing else. Keep it completely pure, clean, and separate from all other features. Do not EVER be tempted to install any software on any server that is not directly required by its primary function.

    Keep the database server similarly clean. Keep the email server similarly clean. Six months from now, when the email server dies, and you have to take the server offline to recover things, or when you decide to test an upgrade, you will suddenly be glad that you can tinker with your email server as much as you want without harming your web server.

    1. Re:What is wrong with you? by Anonymous Coward · · Score: 2, Insightful

      After having worked for companies that do both, I honestly disagree. If you host your dbs and web servers on different machines, you wind up with a really heavy latency bottleneck which makes lamps applications load even slower. It doesn't really make a difference in the "how many users can I fit into a machine" catagory. CPanel in particular is a very one-machine centric piece of software, while you could link it to a remote database its really a better idea to put everything on one machine.

    2. Re:What is wrong with you? by leandrod · · Score: 2

      use a virtualized server environment

      And ðere goes I/O thru ðe drain.

      --
      Leandro Guimarães Faria Corcete DUTRA
      DA, DBA, SysAdmin, Data Modeller
      GNU Project, Debian GNU/Lin
    3. Re:What is wrong with you? by Hatta · · Score: 2

      Run CentOS with Apache on one instance - and nothing else. Keep it completely pure, clean, and separate from all other features. Do not EVER be tempted to install any software on any server that is not directly required by its primary function.

      Why is this required? Shouldn't we expect our operating systems to multitask?

      --
      Give me Classic Slashdot or give me death!
    4. Re:What is wrong with you? by timeOday · · Score: 4, Insightful

      It's a shame, isn't it? We have all these layers and layers of security (such as user separation, private memory address space for processes, java virtual machine...) which we do not trust and are therefore essentially nothing but configuration and performance cruft. If we're really just running one application on each (virtual) machine, that machine might as well be running DOS.

    5. Re:What is wrong with you? by bill_mcgonigle · · Score: 1

      Why is this required? Shouldn't we expect our operating systems to multitask?

      We should expect our servers to be secure. But they're buggy.
      We should expect defense in depth to be unnecessary. But people screw up.
      We should expect OS tunables to be variable on a per-process basis, but they're not (with Linux anyhow).

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
    6. Re:What is wrong with you? by Gothmolly · · Score: 1

      You fail at technology. There's no reason to maintain multiple instances of the operating system, even virtually, when the components can be hosted on the same machine. Come patch time, would you rather patch N amchines or 1? Maybe with Microsoft machines you need 1 per function because everything tramples everything else or requires reboots when making changes.

      Testing is a red herring - you have to do that anyway.

      --
      I want to delete my account but Slashdot doesn't allow it.
    7. Re:What is wrong with you? by glassware · · Score: 1

      Thank you for the polite response. I did get a bit carried away in my post, so allow me to clarify.

      The basic principle I'm approaching here is that you should design your environment for simplicity of maintenance. Keeping your machines separate makes maintenance easier, it makes disaster recovery easier, it makes documentation easier, it makes upgrades easier, and it makes downgrades easier. The gains just keep on going.

      When I managed hundreds of separate machines - or even when I manage only three or four machines - it became very advantageous to have each one isolated from the others. If I have to update a shared component to gain a feature, I know only my one application is going to be affected. If there's a security vulnerability in one of them, and I designed their security correctly, only that one machine is exposed.

      It's quite true that, in some cases, you sacrifice some performance. In my experience, from doing this repeatedly over the past few decades, this performance hit is generally negligible. On the other hand, there are surprising gains you can get from keeping your applications separate.

      Of course, if you're just a home user or doing this as a hobby, none of the benefits I'm describing make much of a difference.

    8. Re:What is wrong with you? by Anonymous Coward · · Score: 1

      N machines. There's no reason for all services to be down, when each can be taken down one at a time, while the others continue to function. All the more so if the something goes horribly, horribly wrong when you reboot.

    9. Re:What is wrong with you? by kjs3 · · Score: 1
      > Many standards, such as PCI compliance, require that you separate all of your units.

      Not that I disagree with your sentiment,but there is nothing in the PCI requirements (or any other compliance regime that I have audited against) that require you separate all of your "units" into individual VMs or physical servers. You can use it as one way of satisfying a couple of the requirements (e.g. securing cardholder data), but you can just as easily satisfy them other ways.

  21. You are asking wrong question by JoeSchmoe007 · · Score: 2

    If you are concerned about performance and expect constant email stream you should host mail, database and web-servers on separate computers. There is a reason any reputable host does it this way. Plus increased load on one component doesn't affect others.

    I think file picking system should be the least of your worries.

    1. Re:You are asking wrong question by JoeSchmoe007 · · Score: 2

      * I think picking file system should be the least of your worries.

    2. Re:You are asking wrong question by gagol · · Score: 1

      I use an old netbook for movie watching while trying to sleep (not a pervert, only insomniac). I let the computer die by itself many times a week and so far XFS never gave up on me. Never had to fscking at boot, never complained, so far no FS corruption I can see. I would recommend XFS based on its reliability and I trust it's stability being almost 2 decades old. Bonus point, it performs beautifully and do not require gigabytes of memory just to run. I mostly pick FS based on reliability, and disks based on speed.

      --
      Tomorrow is another day...
  22. Whatever is standard for your hosting provider by Anonymous Coward · · Score: 1

    If you're going with rackspace, it'll be EXT3. If you're going with Amazon, well, there are more choices. But unless you have a really good reason to deviate from the standard (and it sounds like you don't), why would you make yourself a bunch of unnecessary trouble?

  23. performance concerns? by bertomatic · · Score: 2

    based on your topology you have described, the last thing you need to worry about is what file system to choose, since you have decided to host ALL tasks on a single server. if performance was an issue, you would separate them all to dedicated "farms" and if security is a factor (which it should be), none of them would be in the DMZ, only your proxy(s) would live there.

  24. Use the standard and focus on what matters by e065c8515d206cb0e190 · · Score: 3, Insightful

    Whether your focus is on performance, reliability or both, you have other areas that require much more attention than the FS.

  25. Why ext3 in the first place? by atari2600a · · Score: 1

    Everyone switched to ext4 years ago. Before that, I used ReiserFS, but then, you know....

  26. Go old school by RedLeg · · Score: 3, Informative

    What do you fine folks think?"

    I think you're not a very well trained sysadmin.

    There is no reason to not have various parts of the filesystem mounted from different disks or partitions on the same disk. If you do this, you can run part of the system on one filesystem, other parts on others as appropriate for their intended usage. This is commonly done on large servers for performance reasons, quite like the one you are asking about. It's also why SCSI ruled in the server world for so long since it made it easy to have multiple discs in a system.

    So run most of your system on something stable, reliable and with good read performance, and the portions that are going to take a read/write beating on a separate partition/disc with the filesystem which has better read or write, whichever is needed, performance. If you segregate your filesystem like this correctly, an added benefit is that you can mount security critical portions of the filesystem readonly, making it more difficult for an attacker.

    Red

    1. Re:Go old school by Salamander · · Score: 1

      Actually, there is a reason not to have different apps using different filesystems in partitions on one disk. If those apps just use subdirectories within one filesystem, that filesystem can do a pretty good job of linearizing I/O across them all, minimizing head motion (XFS is especially good at this). If those apps use separate partitions, you'll thrash the disk head mercilessly between them if more than one is busy. Your advice is good in the multiple-disk case, but terrible in the single-disk case, and any well trained sysadmin would know not to lump them together. Perhaps next time you shouldn't be so quick to attack others for asking reasonable questions.

      --
      Slashdot - News for Herds. Stuff that Splatters.
  27. You should use XFS ... avoid ext3 at all costs by Anonymous Coward · · Score: 5, Informative

    Contrary to the majority of the people replying to this post, I emphatically DO NOT recommend ext3. ext3 by default wants to fsck every 60 or 90 days; you can disable this, but if you forget to, in a hosting environment it can be pure hell if one of your servers reboots. Usually shared hosting web servers are not redundant, for cost reasons; if one of your shared hosting boxes reboots you thus get to enjoy up to an hour of customers on the phone screaming at you while the fsck completes

    XFS is a very good filesystem for hosting operations. It has superior performance to ext3, which really helps, as it means your XFS-running server can host more websites and respond to higher volumes of requests than an ext3-running equivalent. It also has a feature called Project Quotas, which allows you to define quotas not linked to a specific user or group account; this can be extremely useful for hosting environments, both for single-homed customers and for multi-homed systems where individual customer websites are not tied to UNIX user accounts. The oft-circulated myth that XFS is prone to data loss is just that; there was a bug in its very early Linux releases that was fixed ages ago, and now its no worse than ext4 in this respect.

    Ext4 is also a good option, and a better option than ext3; it is faster and more modern than ext3 and is being more actively developed. Ext4 is also more widely used than XFS, and is less likely to get you into trouble in the unlikely event that you get bit by an unusual bug with either filesystem.

    Btrfs will be a great option when it is officially declared stable, but that hasn't happened yet. The main advantages for btrfs will be for hosting virtual machines and VPSes, as Btrfs's excellent copy on write capabilities will facilitate rapid cloning of VMs.

    This is already a reality in the world of FreeBSD, Solaris and the various Illumos/OpenSolaris clones, thanks to ZFS. ZFS is stable and reliable, and if you are on a platform that features it, you should avail yourself of it. I would advise you steer clear of ZFS on Linux.

    Finally, for clustered applications, i.e. if you want to buck the trend and implement a high availability system with multiple redundant webservers, the only Linux clustering filesystem I've found to be worth the trouble is Oracle's open source OCFS2 filesystem (avoid OCFS1; its deprecated and non-POSIX compliant). OCFS2 lets you have multiple Linux boxes share the same filesystem; if one of them goes offline, the others still have access to it. You can easily implement a redundant iSCSI backend for it using mpio. Its somewhat easier to do this then to setup a high availability NFS cluster, without buying a proprietary filer such as a NetApp.

    Reiserfs was at one time popular for mail servers, in particular for maildirs, due to its competence at handling large numbers of small files and small I/O transactions, but in the wake of Hans Reiser's murder conviction, it is no longer being actively developed and should be avoided. JFS likewise is a very good filesystem, on a par with ext4 in terms of featureset, but for various reasons the Linux version of it has failed to become popular, and you should avoid it on a hosting box for that reason (unless your box is running AIX).

    Speaking of older proprietary UNIX systems; on these you should have no qualms about using the standard UFS, which is a tried and true filesystem analogous to ext2 in terms of functionality. This is the standard on OpenBSD. NetBSD features a variant with journaling called WAPBL, developed by the now defunct Wasabi Systems. DragonFlyBSD features an innovative clustering FS called HammerFS, which has received some favorable reviews, but I haven't seen anyone using that platform in hosting yet. The main headache with hosting is the extreme cruelty you will experience in response to downtime, even when that downtime is short, scheduled or inevitable. Thus, it pays to avoid using unconventional systems that customers will use as a vector for claiming incomp

    1. Re:You should use XFS ... avoid ext3 at all costs by Anonymous Coward · · Score: 1

      Since OP is using CentOS, there's really no competition - ext3 or ext4. You could use ext2 on /tmp if you really feel the need. Beware of the path less travelled when it comes to filesystems - it might sound pedestrian, there might be flashier filesystems out there that promise to give you all sorts of interesting features, but what you want from a filesystem is the ability to hold files without crapping out. All of the ext* filesystems have reasonable performance compared to the alternatives, certainly not enough difference to make a compelling argument to change.

      XFS, for example, is all fine and dandy unless you experience filesystem corruption; where (backups aside) you'll be cursing yourself and wishing you had the same kind of recovery tools available for ext*. An oft-quoted myth? I guess I must be one of those unlucky mythical people who has experienced terminal non-recoverable data loss nearly every XFS formatted system they've come across.

      I've not had any experience of OCFS, but if it's anything like GFS (Redhat, not Google) then I'd steer well clear - even if you know what you're doing you'll find them incredibly fragile and liable to collapse with unexpected modes of failure.

    2. Re:You should use XFS ... avoid ext3 at all costs by CAIMLAS · · Score: 1

      While I agree with what you say, mostly, I've got contention with a couple key points.

      Btrfs will be a great option when it is officially declared stable, but that hasn't happened yet.

      On the contrary, btrfs will not be a good option 'when it's officially declared stable'. It'll be a good option when it's vetted as stable without too much regressive or destructive behavior, in the wild. Until then, it's still immature and best suited for closed environments.

      The main advantages for btrfs will be for hosting virtual machines and VPSes, as Btrfs's excellent copy on write capabilities will facilitate rapid cloning of VMs.

      This is already a reality in the world of FreeBSD, Solaris and the various Illumos/OpenSolaris clones, thanks to ZFS. ZFS is stable and reliable, and if you are on a platform that features it, you should avail yourself of it.

      I agree, but a word of caution... FreeBSD lacks the necessary stable storage controller support to make ZFS fully stable on FreeBSD on all but a handful of configurations. Anyone who's used it for a while with any significant amount of data has probably witnessed a number of stability issues arrising.

      I would advise you steer clear of ZFS on Linux.

      Why? What's wrong with ZFS on Linux, aside from offering superior performance to FreeBSD ZFS on a better kernel than Solaris, with fewer craptastic application and support limitations than either?

      I've currently got a machine with nearly 100 days uptime running Ubuntu, of all things, running ZoL without a hickup.

      Mind you, this is running on very white box hardware, running 7 VMs currently, one of which is a network-wide backup target for rsync, another being the VM I'm typing this from. It's very disk active (for the 5 disks that're in it).

      I've been using native ZoL now for over 2 years and, aside from some initial performance issues and dbus related problems, it's been pretty smooth sailing - flawless on multiple hosts for most of a year, now. I know of multiple large volume systems serving up data using ZoL publicly now, too.

      ZoL is more ready than btrfs for mainstream use by a long shot, sadly, because btrfs had such a head start: it's more stable, less cryptic, more complete, generally faster, and with far fewer corner case issues.

      --
      ~/ssh slashdot.org ssh: connect to host slashdot.org port 22: too many beers
  28. Re:Just by Guspaz · · Score: 4, Insightful

    Due to the amount of read writes & the life span of SSD's they are some of the worst drives you can get for a high availability web server.

    Only if you're completely ignorant about the difference between consumer and enterprise SSDs. The official rated endurance of a 200GB Intel 710 with random 4K writes (the worst case scenario) with no over-provisioning is 1.0 TB. In order to wear this drive out in a high-load scenario, you could write 100GB of data in 4k chunks to this drive every day for nearly 30 years before you approached even the official endurance.

    If you use a consumer SSD in a high-load enterprise scenario, you're going to get bit. If you use an enterprise SSD in a high-load enterprise scenario, you'll have no problems whatsoever with endurance, regardless of what people spreading FUD like you would have you believe.

  29. Re:Just by M0j0_j0j0 · · Score: 4, Informative

    don't know the budget, but 250gb of "RAM" for 500$ looks like a good deal. and you just suggested an array of 4 drives to someone that wants the classic webserver with CPanel, all stuffed in one system, that would be like 3-4k$ just for the disks. SSD is the way to go on this cases mainly because of the money you save; and the lifespan? i replaced way more HDD than SSD in the last 3 years since using them, and they are in the same ratio right now and the SSD get way more I/O.

  30. It cracks me up when... by dnaumov · · Score: 1

    ... in the year 2012, people are seriously suggesting others use filesystems that can (and eventually will) lose data on an unclean shutdown. C'mon people, this isn't stone age anymore.

  31. Re:Just by mcrbids · · Score: 2

    Came here to say this. Unfortunately I have no mod points. Enterprise drives are more expensive, but if you need the performance, are an excellent option.

    --
    I have no problem with your religion until you decide it's reason to deprive others of the truth.
  32. Re:Just by rs79 · · Score: 1

    2? 4? fuq dat, use 12. use another 12 if you need redundancy. and scsi is still a better performer than sata...

    --
    Need Mercedes parts ?
  33. PostgreSQL by leandrod · · Score: 1

    Go for PostgreSQL-backed services whenever feasible. For example, ðere is a quite competent IMAP server called Archiveopteryx, you can run Mediawiki on PostgreSQL, as well as Zope and whatnot.

    --
    Leandro Guimarães Faria Corcete DUTRA
    DA, DBA, SysAdmin, Data Modeller
    GNU Project, Debian GNU/Lin
    1. Re:PostgreSQL by WuphonsReach · · Score: 1

      Dovecot works fine with pgsql as well.

      --
      Wolde you bothe eate your cake, and have your cake?
  34. Re:Just by Zero__Kelvin · · Score: 3, Insightful

    "Due to the amount of read writes & the life span of SSD's they are some of the worst drives you can get for a high availability web server"

    If only they had some kind of way of allowing drives to fail while still retaining data integrity. It's probably because I just dropped Acid, but I'd call the system RAID.

    --
    Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
  35. Re:AWS all the way by ZG-Rules · · Score: 1

    I have a few websites solely in S3 and CloudFront. It works. Similarly RDS - it's a pretty uncomplicated MySQL service. Not sure about hosting mail on AWS - You can certainly send mail (SES) but I don't know about receiving it. But in general your presumed point is valid - if you can get away with cloudsourcing some of your infrastructure needs, it can be cost-effective and useful.

  36. Take a look at BetterLinux by hendersj · · Score: 2

    I spent some time late last year and earlier this year working very closely with the developers of BetterLinux, and in the work I did, I did stress testing (on a limited scale) to see how the product performed. It has some OSS components and some closed-source components, but the I/O leveling they do is pretty amazing.

    http://www.betterlinux.com/

    --
    Insanity is a gradual process; don't rush it.
  37. Re:Just by corychristison · · Score: 2

    You're still going to want redundancy. At the very least 2 identical drives mirrored with software RAID.

    If redundancy is important, 500GB/1TB "Enterprise" drives are cheap. 4 drives in RAID10 would give the best cost:redundancy:performance ratio. You can probably get 4 HDD's for the cost of the one $500 240GB SSD you mentioned.

  38. Definitely FAT, but which one? by jonadab · · Score: 3, Funny

    There are arguments to be made in favor of FAT16 or even FAT32, but I think I'd go with FAT12, just because it's simpler. You don't need LFNs for web hosting, do you?

    --
    Cut that out, or I will ship you to Norilsk in a box.
    1. Re:Definitely FAT, but which one? by ultrasawblade · · Score: 2

      404ERR~1.HTM

    2. Re:Definitely FAT, but which one? by Dwedit · · Score: 1

      FAT12 does support long file names, you know...

    3. Re:Definitely FAT, but which one? by mwvdlee · · Score: 1

      Because "OR" uses more characters than "~1".

      --
      Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
    4. Re:Definitely FAT, but which one? by jonadab · · Score: 1

      > FAT12 does support long file names, you know...

      Oh, huh.

      No, for some reason I was not aware of that, or perhaps I knew at one time but had forgotten.

      --
      Cut that out, or I will ship you to Norilsk in a box.
    5. Re:Definitely FAT, but which one? by jonadab · · Score: 1

      > Because "OR" uses more characters than "~1".

      Never used Windows 95 much, didja?

      (8-character filenames regularly got mangled like that, for a variety of reasons. The precise details are a little fuzzy in my mind, since it has been a few years, but IIRC one possible cause was if the user gave the name in mixed case when saving the file. I think long extensions, such as .HTML, were another possible cause, although most Windows users didn't know the four-letter versions of .HTM and .JPG, so that was less common. Also, I believe some 8-bit and maybe even 16-bit software used old API calls or "interrupts" that sometimes resulted in LFNs being created for no really obvious reason. Oh, and I think copying or renaming a file in Windows Explorer sometimes caused it as well, though I'm not certain about that last one.)

      --
      Cut that out, or I will ship you to Norilsk in a box.
  39. Re:Not quite ready for prime time but.... BTRFS by WhitePanther5000 · · Score: 1

    BTRFS has not fully stabalized yet, making it a poor choice for a production system. And ZFS is only a viable option if you're running Solaris (Sure, you can use the 2009 OpenSolaris version of ZFS in BSD or FUSE... but again, not good production choices).

    Ext3/4 and XFS are good choices depending on your needs and distribution. But for a small standalone sever, you will probably never notice the difference - use the default.

  40. Re:Just by yamum · · Score: 2

    You forget the reason why adding RAM makes things faster. Linux caches a tonne of stuff in RAM so constantly reading from disks won't occur.

  41. in that case.. by aliquis · · Score: 2

    Why not btrfs and backups?

    1. Re:in that case.. by Dante · · Score: 2

      Why not btrfs and backups?

      BTRFS is not stable! I just lost my /home and all it's snapshots, two days ago.

      "You should keep and test backups of your data, and be prepared to use them."

      Yes I know about the latest tools. In the end I had to do a btrfs-restore.

      https://btrfs.wiki.kernel.org/index.php/Restore

      --
      "think of it as evolution in action"
    2. Re:in that case.. by jbo5112 · · Score: 1

      Why not btrfs and backups?

      BTRFS is not stable! I just lost my /home and all it's snapshots, two days ago.

      "You should keep and test backups of your data, and be prepared to use them."

      Yes I know about the latest tools. In the end I had to do a btrfs-restore.

      https://btrfs.wiki.kernel.org/index.php/Restore

      Stable or not, Oracle Linux has already declared Btrfs "production-ready" https://emeapressoffice.oracle.com/Press-Releases/Oracle-Announces-Production-Release-of-Unbreakable-Enterprise-Kernel-Release-2-for-Oracle-Linux-29ab.aspx

  42. Google Apps by nrozema · · Score: 1, Insightful

    People still run their own email servers?

    1. Re:Google Apps by sdw · · Score: 1

      Yes, I have been running my own mail / web server since 1992. As soon as something is more reliable than that, I might consider switching to it. ;-)

      My email archive is about 30GB last I checked. Fully backed up. Very fast to search.

      Maildirs are dumb. Imap to mbox folders are the way to go. I roll them over at 200MB. With Thunderbird caching and a good Imap server indexing, it is faster than any available email service.

      Of course Thunderbird is great with Gmail, AOL, and Outlook.com too.

      --
      Stephen D. Williams
  43. Re:Just by yamum · · Score: 1

    Oh no! My static images in RAM are no more!!! Let's revert to backups! Must .... rememeber... don't ... feed ... teh trollz

  44. Re:Not quite ready for prime time but.... BTRFS by yamum · · Score: 1

    100% agree. I'm hosting on FreeBSD too with ZFS. Backups are such a breeze! Only one client left to convert over from Linux.

  45. Re:reiserfs by rwa2 · · Score: 3, Funny

    I hear reiserfs is killer.

    (too soon?)

    Whatever... I really did love reiser3 back in the day, if only because rm -rf on large dirs was blazingly swift compared to ext2

  46. RAID10 by rwa2 · · Score: 4, Insightful

    Yep, agreed... agonizing over the FS choice isn't going to provide many gains compared to spending time optimizing the physical disk configuration and partitioning.

    FS performance is only going to really matter if you're going to have directories with thousands of nodes in them. But then hopefully you have better ways to prevent that from happening.

    But you do want to spend a good deal of time benchmarking different RAID and partitioning setups, where you can see some gains in the 100-200% range rather than 5-10%, especially under concurrent loads. Spend some quality time with bonnie++ and making some pretty comparison graphs. Configure jmeter to run some load tests on different parts of your system, and then all together to see how well it deals with concurrent accesses. Figure out which processes you want to dedicate resources to, and which can be well-behaved and share with other processes. Set everything up in a way to make it easier to scale out to other servers when you're ready to grow.

    The FS choice is probably the least interesting aspect of the system (until you start looking at clustered FSs, like OCFS2 or Lustre)

  47. Re:Just by Anonymous Coward · · Score: 1

    > The official rated endurance of a 200GB Intel 710 with random 4K writes (the worst case scenario) with no over-provisioning is 1.0 TB. In order to wear this drive out in a high-load scenario, you could write 100GB of data in 4k chunks to this drive every day for nearly 30 years before you approached even the official endurance.

    I believe you must have meant 1.0 PB, since that's closer to how much data would be generated in 30 years at that rate. 1.0 TB would expire in 10 days.

  48. Different App Profiles - Different Filesystems by Anonymous Coward · · Score: 1

    Each of those application types tend to exercise the Host and therefore the filesystem different ways. It would be better to focus on the type of RAID and partitioning you are using then the base filesystem. But even the base file system probably has different performance profiles for the application types mentioned. In general I'm gonna assume you have several disks in this system for the sake of performance and redundancy (and if you don't then you prob should not be running your own server). Now, if this server is just for you you should have mirrored disks at min, or a higher level RAID depending on how much storage you need.

    Mail: for SMTP type traffic its more straight writes and reads (queing mail and receiving it). For the POP/IMAP part there would be more seeks and lookups. In this latter part what you'd really want to do is try and spread the various users read's and writes across multiple disks (RAID). But, you could prob research the best layout for this kind of thing.

    For database it depends on the database type MySQL type DB's tend to "enjoy" striped RAID etc (depending on table size and usage patterns). Often NoSQL type databases like RAID 10 or some other mirrored setup (because of the way the do data redundancy). You can also use caching on DBs to avoid going to disk. It depends a lot on your usage pattern and table layouts etc.

    For a web server really you should be focused on caching repeatedly used content in memory and worry less about the file system.

    SSDs area mixed bag although the enterprise ones are getting more reliable. But in memory caching is much cheaper and more effective if your usage patterns cooperate.

    1. Re:Different App Profiles - Different Filesystems by jbo5112 · · Score: 1

      HBase wants JBOD, not RAID. It's a NoSQL system built on top of Hadoop, where the whole machine is redundant. I just assumed that was the design of most NoSQL systems, but I might have to actually look into it.

  49. Re:Just by Guspaz · · Score: 1

    Shoot, sorry, yes. I meant 1.0 PB.

  50. Re:Just by Jamu · · Score: 1

    You'll want a RAID controller that supports TRIM.

    --
    Who ordered that?
  51. Re:turn off the log files by gagol · · Score: 1

    I review my web log files on a regular basis and look for exploit attemps to update my firewall and make sure I am not exposed. I use log files to prevent a SHTF scenario as much as possible. Now get off my lawn kid.

    --
    Tomorrow is another day...
  52. If you have to ask.. by Strykar · · Score: 1

    Create a Solaris ZFS NAS. Use individual VMs for each application. Do I need to say backups?

  53. I also have a question by mwvdlee · · Score: 1

    I'm planning to race a Yugo kitted out with cast iron spoilers and wooden tires.
    Which type of decals will make me go fastest?

    Ontopic; the choice of filesystem will have far less impact than the choice of programming language, database, webserver application and how you use those. The choice to go with CPanel (or any *Panel) means the impact of the filesystem will be unnoticable. Nothing wrong with those panels; they drive down human cost, but if you need the absolute best performance, panels won't let you get there if only because it depends on so many case-specific factors.

    --
    Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
  54. ext4 is good enough, but I always liked JFS by csirac · · Score: 1

    I used JFS on all my machines from around 2007-2011, including laptops. I had many unclean shutdowns (especially on laptops) and JFS rarely had any problems, except that one time briefly in 2009 where I did actually lose a bunch of data, but then so did my ext4 reinstall a few weeks later (bad hardware).

    JFS was much, much better than ext3. Especially in low-CPU situations/hardware.

    I can't remember why I went back to ext4, I guess I wanted to see if it still sucked compared to JFS. With noatime I decided I couldn't tell the difference except perhaps for some really big git checkouts, but I didn't do any proper timing.

  55. tmpfs by jpvlsmv · · Score: 1

    Go with tmpfs. It has the highest performance of any of the "standard kernel" filesystems, and if you use it for your personal webserver/blogserver/mailserver/etc, it will never lose any valuable data if the server reboots unexpectedly.

    --Joe

  56. Stick with the defaults by Anonymous Coward · · Score: 1

    As I mentioned in another reply CentOS or another RHEL based distro are your only choices if you want to run cPanel. ext4 is the default file system and that is what you should stick with. I've been in the hosting business for 10 years now and I can say from experience that you will only run into headaches if you try to be clever and run different file systems.

  57. Perhaps the wrong question is being asked? by leptechie · · Score: 1
    I think the OP's question is valid with one small alteration:
    Best Storage System for Web Hosting?

    Here, I'm using Storage System to refer to a design rather than a product.
    While filesystems are a good point to look at, I'd be much more interested in the one thing almost all concurrent systems contend over: spindles (or more correctly, drive heads). Partitioning workloads onto separate spindles or SSDs makes a lot more sense than twiddling over the finer points of a filesystem. Serial read/write is well-suited to even slow SATA drives though YMMV, while high-concurrency OLTP DBs benefit from SSD. I can't think of a benchmark that shows any significant performance difference between the headline filesystems when you're not talking about SSD, and if you have the cash to go SSD for all your storage perhaps you should get a professional to advise you better?

  58. Re:Just by syleishere · · Score: 1

    You make no case how a consumer grade SSD would not last at least 10 years before normal replacement and upgrades compared to enterprise SSD. Sounds like your advertising for the enterprise guys to take money out of people's pockets. I have not had any issues running raided consumer SSD's.

  59. Re:Just by Guspaz · · Score: 4, Insightful

    Intel rates the endurance of the 710 at 1.0 PB and the 330 at 60 TB, so yeah, there's a pretty big difference there.

    In Intel's case, specifically, the difference is between using MLC flash and MLC-HET flash. The difference is largely from binning, but it's the difference between 3k to 5k p/e cycles on typical MLC, and 90k p/e cycles on MLC-HET. SLC produces similar improvements. I could explain how they achieve this, but Anandtech and Tom's Hardware have both done pretty good write-ups explaining the difference.

    It depends entirely on your workload. If you've got an enterprise workload where you don't do many writes, then a consumer drive will work just fine. And since most drives report their current wear levels, it's actually pretty safe to use a consumer drive if you monitor that.

    Anandtech gave one example, when they were short on capacity and were facing a delay in getting some new enterprise SSDs; they walked out to the store, bought a bunch of consumer Intel SSDs, and slapped those into their servers. They were facing a write-heavy workload, so they wouldn't have lasted long, but they only needed them for a few months and kept an eye on the media wear indicator values, so they were fine.

    My point overall is that you can't look at SSDs the same way if you're a consumer versus an enterprise user, and if you're an enterprise user, you need to pick an SSD appropriate for your workload.

    One thing people don't consider is upgrade cycles. Hanging on to an SSD for ten years doesn't really make sense, because it only takes a few years for them to be replaced by drives enormously cheaper, larger, and faster. They're improving by Moore's Law, unlike HDDs. I paid $700 for a 160GB Intel G1, and three years later, I paid $135 for a much faster 180GB Intel 330. If you're going to replace an SSD in three to five years, does it matter if the lifespan is 10 or 30?

  60. BtrFS by jbo5112 · · Score: 1

    I would keep a close eye on BtrFS, which is currently supported by SUSE and Oracle Linux (based on RHEL), and stick with whatever you have until it's ready (if you have nothing, go with the default). I don't know about SUSE, but Oracle is already calling BtrFS "production-ready" (if their DB is any indication, keep lots and lots of backups). I suspect a lot of the harder to track bugs revolve around things like power loss, that aren't common with production servers, so Oracle's claim might not be too far off.

    It has a lot of nice features (lvm type features, data mirroring, subvolumes, compression -- zlib and LZO, dynamic inodes, data and metadata crc32c checksums, SSD support, snapshots, seed devices, efficient incremental backup, automatic background repair of mirrored files), and growing (background defragmentation, RAID 5/6 on files or objects, more checksum options, more compression options -- zippy and lzo, probably fewer compression penalties, automatically move hot data to faster devices, online file system check). The lzo compression can be quite fast depending on usage patterns, and with a little work, can be turned on or off for each folder (e.g. /var or /home). You can hop over to phoronix.com to find some benchmarks on file systems under different loads.

  61. Doesn't matter by Vrtigo1 · · Score: 1

    If you're running mail, db and web on a single box it doesn't sound like performance is a huge concern anyway. I think there are lots of other things you can concentrate on (like server s/w and configuration, or storage h/w) before the FS even starts to make a difference.