On 14/01/13 16:46, Scott Marlowe wrote:
I have zero experience of setting up Linux as a _PRODUCTION_ server.On Sun, Jan 13, 2013 at 4:06 PM, SUNDAY A. OLUTAYO <olutayo@xxxxxxxxxx> wrote:4 reasons: 1. One place where I worked Ubuntu was standard, I tried it and found that it lacked at least a couple of desktop features in GNOME 2 that I found very useful into Fedora. Fortunately, I was allowed to revert back to Fedora. Prior to that, I was using Fedora mainly by default. 2. Twice I came across features that I liked and Ubuntu seemed to imply they had done them, later I found the projects been initiated and sponsored largely by Red Hat. Especially as Red Hat is in the top ten contributors to the kernel, and the contribution of Ubuntu is not significant. 3. Ubuntu distributions are now starting to be filled with crapware and ant-privacy features features. 4. Ubuntu seems very good at collecting fanbois.Not one of those is a good reason to avoid Ubuntu server for pgsql. There are reasons to not use it, but those are not them. I've run PostgreSQL servers on Redhat (before RHEL existed and there was JUST Redhat) 5.1, RHEL 4, 5 and 6, Debian Lenny and Squeeze, just one on an old version of Suse, and on Ubuntu server 8.04LTS and 10.04LTS and 12.04LTS. My preference personally is for debian based distros since they support the rather more elegant pg wrappers that allow you to run multiple versions and multiple clusters of those versions with very easy commands. RHEL is great for building a stable but not necessarily ultra faster server, and if you can afford their commercial support it IS top notch. Debian and Ubuntu feel much the same to me, from the command line, on a server. The reasons to NOT use ubuntu under PostgreSQL are primarily that 1: they often choose a pretty meh grade kernel with performance regressions for their initial LTS release. I.e. they'll choose a 3.4.0 kernel over a very stable 3.2.latest kernel, and then patch away til the LTS becomes stable. This is especially problematic the first 6 to 12 months after an LTS release. Ubuntu support is a pitiful thing compared to RHEL support. I've reported bugs for RHEL that were fixed within weeks, or at least a workaround came out pretty quick. I've reported LTS bugs that are now YEARS old and Canonical has done NOTHING to fix them. There's a bug in 10.04LTS workstation for instance that meant you couldn't have > 1 profile for a given WAP. Never fixed. Only recommendation was to upgrade. From an LTS. sigh. There are reasons TO use Ubuntu as well. Of if you are running very late model hardware you can't get good support from an older release, and using a more recent, possibly not LTS release is a good way to get best performance. I have often installed a late model release like 11.10, to get support for odd / new / interesting / high performance hardware, and then at a later date could update that platform to an LTS release for stability. Note that I often waited til a good 3 or 4 months after the next release before I even started testing it, let alone upgrading to it. Ubuntu often has fairly late model versions of many packages like pgsql or php or whatever that more RHEL like distros will not get due to their longer release cycles. It's easier to add a ppa: repo to debian or ubuntu than to add an RPM repo to RHEL and I've found they're usually better maintained and / or more up to date. Simple answer of course is that there is no simple answer. Frequently released / updated distros (fedora, ubuntu non-LTS, debian beta and so on) are GREAT for doing initial development on, as once the stable branch based on it comes out you'll be deploying against something with a long stable release branch. So the latest version of Ruby, Perl, PHP, Python and so on are on the server, as are the latest, or nearly so, versions of pgsql and slony and other packages. Long term distros (debian stable, Ubuntu LTS, RHEL) are all good for deploying things on you don't need the latest and greatest hardware support nor the absolute fastest performance but instead stability are paramount. When downtime costs you $10k a minute, using the latest code is not always the best idea. Most importantly, if you've got LOTS of talent for one distro or another, you're probably best off exploiting it. If 95% of all the developers and ops crew run Ubuntu or Debian, stick to one of them. If they favor Fedora / RHEL stick to that. If they work on windows, find a new job if at all possible. If I had to support one myself, I would probably consider RHEL. Anyhow, I would do some serious research before making a final decision. Even if I had made such a decision a year ago, I would still need to reassess the situation if I had to do it again - things keep changing. I would be very reluctant to choose an Apple or Microsoft O/S for a production server. Cheers, Gavin |