SliceHost 3-Way-Handshake Podcast Episode 8 — over 80% of Slice at SliceHost runs on Debian-based distributions (Debian, Ubuntu), verses around 5.5% for Gentoo. RPM-based distributions (CentOS, Fedora, etc) is a bit bigger but simply does not compare with overwhelming domination of Debian-based distributions.

Over the last 3-4 months I have also gradually moved my Gentoo based servers to either Ubuntu or Debian (prefer the latest Ubuntu if available). In fact I have just deleted my 18 month old Gentoo slice at SliceHost, and moved all content to a new slice running Ubuntu 7.10 last month. Now I am happy to say that all of my live servers/VPS are now running either Ubuntu or Debian, and it has changed my Monday morning (my usual mass-update morning) from:

  1. # emerge --sync
  2. # emerge -avD world
  3. Starring at compilation messages scrolling across the screen.
  4. Trying to figure out why some packages are blocking, some packages do not emerge, and why some packages I upgraded last week is now down-grading again.
  5. … 20 minutes later I finally got my root prompt back!
  6. Restart all services that I have emerged, finger crossed hoping that nothing breaks, otherwise revdep-rebuild while reading special upgrading instruction on PAM, MySQL, or OpenSSL at Gentoo.org.

To:

  1. # apt-get update
  2. # apt-get upgrade

Upgrading all the packages in the Gentoo Portage system can be very time consuming, and it gets worse when you have quite a few servers to upgrade!

However, I still love my Gentoo and still use it on my desktop and my home server, continuously updated over the last 3-4 years. We still use it at work because of how configurable it is, and how easy it is to write an ebuild script. Portage, IMHO, is still the best thing since slice bread, but unfortunately it is not the best thing for my VPS at slice host. Building takes too long, it is too CPU and IO intensive that I am afraid I am hurting my neighbours’ performance. Moreover, if something breaks my application due to upgrading (far less than uncommon in the Gentoo world), it will take ages to revert back to the previous version (especially heavy builds like MySQL upgrades) — when my service is down!

Great for development boxes, but not so great for production boxes hosting services that people might want to access 24/7.

Ubuntu is constantly improving since the last time I gave it a try. apt-get is a joy to use comparing to yum on CentOS/Fedora. It has almost all the packages I need, and Debian package control files are not that hard to write either. One thing I have not yet tried is dist-upgrade, which is probably even more scary than emerge world. HardyHeron will (hopefully) be released next month so I guess I’ll be able to find out how easy dist-upgrade on a VPS is.