Jump to content

The ultimate community for Ruby on Rails developers.


Photo

CentOS vs Ubuntu Server


  • Please log in to reply
20 replies to this topic

#1 MrPepper

MrPepper

    Dispatcher

  • Members
  • 31 posts
  • LocationEast Coast

Posted 14 August 2013 - 08:29 PM

I've used CentOS for every server I've setup. But have been noticing a bunch of people in the rails area use Ubuntu Server..

 

Any beneficial gain or just more of a personal preference?

Stack will also have NGINX and PostgreSQL.



#2 Tom

Tom

    Signalman

  • Members
  • 25 posts

Posted 14 August 2013 - 08:53 PM

There isn't anything you can do with one that you can't do with the other and considering that most every production enviornment uses a source-compiled version of Ruby (whether directly compiled or through rbenv/RVM), there isn't that much needed from the server OS other than stability. Perhaps you want to install Nginx or Postgres from a repo and need a version that one of the distros doesn't have but that's hardly a reason to choose a distro.

 

In general, the only correct answer to this question is use what you know best.

 

On a personal note, I prefer Debian over Ubuntu because it's more stable (by definition, not necessarily so practically speaking). Ubuntu is more akin to Fedora.


  • MrPepper likes this

#3 AstonJ

AstonJ

    Dispatcher

  • Members
  • 35 posts

Posted 14 August 2013 - 08:58 PM

I use CentOS because of stability. My second choice would be Debian for the same reason... however, that is based on talking to people who run hosting companies - they seem to think those two are the most stable platforms for web hosting.

 

However quite a few companies in the Rails world, such as 37 Signals, use Ubuntu - so maybe it's good enough too.


  • MrPepper likes this

:)


#4 Tom

Tom

    Signalman

  • Members
  • 25 posts

Posted 14 August 2013 - 08:59 PM

BTW this question is why it's good to have a RailsForum. This question wouldn't survive 60 seconds without being closed on StackOverflow.


  • AstonJ, MrPepper and burmjohn like this

#5 MrPepper

MrPepper

    Dispatcher

  • Members
  • 31 posts
  • LocationEast Coast

Posted 14 August 2013 - 09:12 PM

Believe me.. I've been waiting to ask. I want to keep using CentOS.. but I want others opinions on the subject.



#6 Funnyvibe

Funnyvibe

    Signalman

  • Members
  • 17 posts

Posted 14 August 2013 - 09:25 PM

I've used both in production environments and I tend to prefer CentOS in most cases, but that is strictly my opinion.  I think it really comes down to personal preference with what types of package tools and update intervals you expect out of your platform.  They are both capable and stable, however I feel like CentOS offers a more predictable environment because of the nature of the product being designed for enterprise computing.  Ubuntu on the other hand tends to implement new features quicker.  If you're happy with one or the other though, I don't think there are any compelling reasons for you to up and switch on a whim.


  • MrPepper and zachad like this

#7 MrPepper

MrPepper

    Dispatcher

  • Members
  • 31 posts
  • LocationEast Coast

Posted 14 August 2013 - 10:19 PM

I only see hype for Ubnutu for the GUI.. but 99% of the time I'm using SSH. Never saw Ubuntu really as a enterprise grade product to be using as a server but others see a difference. I just like stability and CentOS has always been there. Guess I shall stay with what I know best.



#8 katafrakt

katafrakt

    Signalman

  • Members
  • 16 posts
  • LocationKraków, PL

Posted 14 August 2013 - 10:25 PM

Actually Ubuntu Server turned out to be pretty neat and stable and everything when I was forced to use it. I will (probably) always prefer Gentoo/Arch though ;)



#9 james

james

    Guard

  • Moderators
  • 221 posts
  • LocationLeeds, U.K.

Posted 14 August 2013 - 10:29 PM

ALWAYS ALWAYS ALWAYS go with what you know

 

My own system was ubuntu, now Linux Mint, I'm familiar Ubuntu and totally comfortable using Ubuntu on linode for hosting and had no issues whatsoever.

 

I'm also familiar with CentOs which has also been very kind to me.

 

Find time to play with new OS's for hosting, maybe launch a non mission crtitical (fun) site on Ubuntu to learn the differences but for a full production site? Like I said, go with what you know.

 

At the end of the day there is tons of support available for all linux distros so it's no big deal to get your feet wet with a new environment, just don;t do it for stuff that matters too much.


Programming is just about problem solving!


#10 Adam

Adam

    Inspector

  • Administrators
  • 71 posts

Posted 14 August 2013 - 10:32 PM

We use Ubuntu for all our production systems. The key motivator for us is that we have a lot of experience and knowledge of it and resolving issues & provisioning new equipment is a far easier & quicker process when you know what you're doing. Of course, that doesn't preclude us from learning something new should the need arise but right now we're in a good place with Ubuntu.


Adam Cooke

from aTech Media - UK-based Ruby on Rails developers. 

 

Follow me on Twitter  •  Check out my code on GitHub  •  Take a look at my designs


#11 MrPepper

MrPepper

    Dispatcher

  • Members
  • 31 posts
  • LocationEast Coast

Posted 14 August 2013 - 10:42 PM

So.

Moral of this story is.


Go with what you know

 



#12 Tom

Tom

    Signalman

  • Members
  • 25 posts

Posted 15 August 2013 - 01:13 AM

If you ever really want to learn Linux, there's and amazing project called Linux From Scratch. It it basicaly a series of tutorials that take you from zero to a your own custom, complete Linux operating system. As an analogy, it's like getting all the parts you need to build a car and building the car until it's complete. Of course the system you build would be very difficult to use in production because you wouldn't have the conveiance of apt/yum to update software but the things you'll learn are amazing and will make you very good at whatever production-grade distribution you're using.


  • MrPepper likes this

#13 MrPepper

MrPepper

    Dispatcher

  • Members
  • 31 posts
  • LocationEast Coast

Posted 15 August 2013 - 01:52 AM

I attempted something close to it.. well i felt that way at least with Arch as I had to add what I wanted.



#14 Stuart Hannig

Stuart Hannig

    Signalman

  • Members
  • 15 posts

Posted 15 August 2013 - 07:34 PM

I've been using CentOS for years, but I'm no sysadmin by any means.

 

Recently been using Ubuntu thanks to Nitrous.io. And I'm considering installing Ubuntu on my desktop just to get more experience with how the GUI OS handles with desktop development. I normally just SSH in from my Windows machine otherwise. But the GUI desktop is tempting for development purposes as Windows doesn't always play nice.

 

I haven't seen any real differences between the two though.



#15 james

james

    Guard

  • Moderators
  • 221 posts
  • LocationLeeds, U.K.

Posted 15 August 2013 - 10:55 PM

And I'm considering installing Ubuntu on my desktop

 

 

I switched from using Windows to using Linux (Ubuntu 10.04) about 3 years ago. I've followed all the upgrades to 13.04 but I really hate the controversial Unity Desktop so much that I switched to using Linux Mint with the Cinnamon desktop http://www.linuxmint.com/ last week and can highly recommend it. Not sure that I feel I could recommend Ubuntu any more but like I say it's controversial and a personal thing and everyone will have their own opinion on this.

 

Just as simple to install as Ubuntu but I do feel the Mint Software manager is not a patch on the Ubuntu Software Centre but I can install the Ubuntu software centre into Mint if I really really want to.

 

Whatever distro you choose just install and play. See how you get on. I don't miss Windows at all but then I'm not a gamer and that is really the only reason to use Windows but even that is changing. Steam is porting all their games over to Linux and other majopr games manufacturers are starting to do the same. Most of the latest games that I am interested in do seem to run quite happily under Wine but not all.

 

My daughter keeps a windows HDD lying around that she just plugs in whenever she wants to play Sims and uses Linux for everything else. My Son really struggles with his games under Linux, want's to switch but sticks with Windows.

 

I could bang on about Linux forever so I'll stop now.


Programming is just about problem solving!


#16 artiyousharma

artiyousharma

    Passenger

  • Members
  • 7 posts

Posted 16 August 2013 - 12:01 PM

i think ubantu is safe provide more secure



#17 iMatt

iMatt

    Passenger

  • Members
  • 2 posts

Posted 16 August 2013 - 03:56 PM

IMHO, I think Debian and Ubuntu are both great, Ubuntu got distribution updates more often which is not always cool for sysadmin. Debian have more outdated packages, but most major services (nginx, postgresql, etc) provides they own repository with the last versions.

 

I tried both and I'm now using debian 7.1 (without GUI, it's useless :)



#18 Tom

Tom

    Signalman

  • Members
  • 25 posts

Posted 17 August 2013 - 03:37 PM

I've followed all the upgrades to 13.04 but I really hate the controversial Unity Desktop so much that I switched to using Linux Mint with the Cinnamon desktop http://www.linuxmint.com/ last week and can highly recommend it.


I could not agree more. Unity is a disaster. Mint is based on Ubuntu but done right. It's the way to go if you want a Debian/Ubuntu system on the desktop.

#19 Tom

Tom

    Signalman

  • Members
  • 25 posts

Posted 17 August 2013 - 04:17 PM

IMHO, I think Debian and Ubuntu are both great, Ubuntu got distribution updates more often which is not always cool for sysadmin. Debian have more outdated packages, but most major services (nginx, postgresql, etc) provides they own repository with the last versions.
 
I tried both and I'm now using debian 7.1 (without GUI, it's useless :)


A few clarifications:

Ubuntu has two tracks of releases: the regular releases and the Long-Term Support (LTS) ones. The regular releases are every 6 months and the LTS are every 2 years. Regular releases are supported for 9 months while LTS releases are supported for 5 years. If you are concerned about long term stability (like you might be with Rails) the LTS version is the way to go for a production environment. Of course you can upgrade the regular versions when they come out but you are risking introducing incompatabilities if you have a stable Rails app running.

Debian has three tracks: stable, testing, and unstable. "Debian" generally refers to stable. Every package goes from unstable to stable as it matures and receives updates. This may make stable packages seem "outdated" but in reality they are just much better tested. That's what makes Debian Stable so rock-solid (and along with RHEL/CentOS) one of the two defacto major Linux server distributions. (Ubuntu LTS comes in a distant third in terms of market share.) Unlike Ubuntu, Debian does not have strict release and support time-frames which some people like and some don't.

Ubuntu *is* a snapshot of Debian testing with some modifications and rebranding. This makes Ubuntu less stable than Debian but it allows the packages to be based on newer versions of software. The Ubuntu view is that Debian testing (with some minor mods) is good enough in exchange for getting slightly newer versions of software. Like time-frames, this is an area where people have to make their own judgements.

Even though the two are very similar, one should never assume he or she should use the same track on their desktop and server. The server should be stable and well supported. It usually only needs to run a small set of software very well for long periods of time. A desktop on the other hand has to run many types of software for short periods of time. A desktop does not have to be as stable and it's very common to use Ubuntu's regular releases or Debian testing (or even unstable) for a desktop.

Finally, GUIs are meant for desktop use or for very inexperienced server admins (I say "admins" with hesitation because you cannot administer many required things without the command line.). Everything can and should be done on the command line as GUIs add a lot of unnecessary overhead to a server. Also, GUIs seldom cover every intricate feature that can only be accessed on the command line. It may take some time to get comfortable on the command line but it is essential if you are running production servers.
  • james and iMatt like this

#20 MrPepper

MrPepper

    Dispatcher

  • Members
  • 31 posts
  • LocationEast Coast

Posted 18 August 2013 - 01:42 AM

I really couldn't imagine running any kind of server with a GUI.. maybe if you manage a small datacenter.. nevermind. The GUI just uses more resources than needed.






1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users