jesse read


macs. cocoa. world of warcraft. ...these are a few of my favorite things. oh, and Twitter - @jesseread

VPS Showdown

Text

Recently on the macsb mailing list there was some discussion about hosting and which VPS provider was the best for typical needs. The two competitors that rose out of the thread were Linode and Slicehost. I decided to try both out, and write up a comparison.

In essence, the difference between these two companies is their feel.

If you like to tinker, Linode gives you everything you need.
If you rather a defined, slick experience, Slicehost is for you.

Location

While becoming increasingly irrelevant, this still matters to some people. Largely, Linode wins here.

Slicehost Linode
Dallas, TX Dallas, TX
St. Louis, MO
Atlanta, GA
Newark, NJ
Fremont, CA

From what I saw, Slicehost provides no way to choose where your Slice (that is, the VPS) is provisioned. Linode, on the other hand, let’s you choose when first setting up the Node (that’s what Linode calls them). Linode also lists their current availability on their website.

Both companies will move your VPS via a support request.

Addendum: A reader has emailed me details of a request to move with Slicehost. It didn’t go so well…

I just went through this with slicehost yesterday (Tuesday 10th March). The support tech first told me that it was impossible for me to move from STL to DFW, and after I threatened to leave for another service, he apologized and offered to set up a new slice at DFW and let me sync everything from STL to DFW. I accepted this offer. The point is that if they do offer the ability to move slices, their support staff apparently don’t know about it … I plan to follow up with slicehost to try to get to the bottom of this.1

Distributions

Almost all VPS hosts provide a variety of Linux distributions to choose from.2

Distribution Slicehost Linode
Arch Linux 2007.08 Yes Yes
CentOS 5.2 Yes Yes
CentOS 5.0 Yes*
Debian 5.03 Yes Yes
Debian 4.0 Yes*
Fedora 10 Yes
Fedora 9 Yes
Fedora 8 Yes*
Fedora Core 6 Yes*
Mandrake 9.1 Yes*
Gentoo 2008.0 Yes
Gentoo 2007.0 Yes
OpenSUSE 11.0 Yes
OpenSUSE 10.3 Yes*
Slackware 12.0 Yes
Slackware 10 Yes*
Ubuntu 8.10 Yes Yes
Ubuntu 8.04 LTS Yes Yes
Ubuntu 7.10 Yes*
Ubuntu 7.04 Yes*
Ubuntu 6.06 LTS Yes*

* - Denotes a Linode “Old distribution”. Not mainstream, they suggest more current distributions but still provide them for legacy users.

Clearly, Linode wins on pure selection alone here. But when you stop to think that you can (somewhat) easily install any custom system, that is really powerful.

Addendum 3: A reader emailed me to prompt me into discussing an issue that I had overlooked regarding distributions and i386 vs x86_64. Slicehost only supports x86_64 while Linode supports both i386 and x86_64 for at least Debian, Ubuntu, and CentOS (the mainstream distributions). While this might not mean much to the novice Linux Administrator, the rule of thumb is that x86_64 uses significantly more memory. That means you need to be more careful, and may run out of space in your current VPS sooner than you’d like. (Thanks, Gregory!) See Addendum 4 for a more fine-grained comparison.

Bandwidth, IP addresses, High-Availability

Bandwidth obviously varies by pricing plan, which will be looked at later. But generally speaking, when comparing Slicehost and Linode plans side-by-side, Linode offers twice the bandwidth of Slicehost at equivalent pricing tiers.

Both Linode and Slicehost give 1 dedicated IP address for each VPS, with more purchasable. (You must provide proper justification when applicable.)

Both parties offer private IP addresses for unmetered bandwidth (in the same data-center). Linode offers this immediately upon setting up your Node, Slicehost will add upon receiving a support request.

Both companies offer in-depth guides to achieving high-availability / IP-failover.

Want to grow?

Growth typically leads to one of two desires when dealing with a VPS is either A) cloning or B) resizing.

Slicehost offers an easy panel where you just select what you would like to resize your Slice to, you pay, and your server is taken down and brought right back up with the increased size. With Linode, you must open a support ticket and they will create an “upgrade queue” for you, which you can activate when you are ready.

Linode (due to their customization) offers config/disk cloning. This allows you to immediately copy one Node (including configuration setups and disk images) to another Node. To achieve this with Slicehost you must enable the Backup feature (an additional monthly fee) and can then “recreate” or “create new” Slices based on your snapshots.

What is all this “customization”?

Linode has a rather advanced control panel compared to Slicehost’s SliceManager. This really comes down to how much you know, and how much control you want.

With Slicehost, you are given a premade box with a swap, a disk (based on plan), and the OS installed and setup.

Linode takes a more technical approach. While they do provide a wizard that will automate the deployment process, you actually can make multiple boot profiles, and cut up and setup your disk space into however many images you like. This can be quite powerful and even allows you to install a custom OS if you want to get your hands dirty.

Rescue 911!

We’ve all reached that point where we realize we shouldn’t have entered that command, or changed that network configuration, or whatever manner by which you enjoy crashing your server. But the point is, it happens. And being able to recover from a situation like that is key.

Linode has this nice little shutdown “watchdog” named Lassie (Linode Autonomous System Shutdown Intelligent rEbooter) who will automatically reboot your server if it died unexpectedly (that is, you don’t set a proper shutdown via Lish or the control panel). It only do this a few times every fifteen or so minutes, but it is good to have nonetheless.

Both companies offer an Ajax console and recovery modes, but Linode wins here with Lish.

Lish

Lish in and of itself is a very, very nice feature. It is a shell that you can SSH into that gives you complete control over your server. It’s primary tool is to give you console access to your node (rather than an Ajax page)… but you can do much, much more. It can essentially give you all the essential tools that you normally have to go to the web panel for, in one concise tool.

To really realize how handy this is, you should just view the documentation.

Price point

For some people, it really comes down to this… a pricing comparison. I should point out that Linode has many more pricing tiers, but Slicehost has larger options.4

Price (Mo) RAM Disk Space Bandwidth
Linode 360 $19.95 360MB 16GB 200GB
256 Slice $20.00 256MB 10GB 100GB
Linode 540 $29.95 540MB 24GB 300GB
512 Slice $38.00 512MB 20GB 200GB
Linode 720 $39.95 720MB 32GB 400GB
Linode 1080 $59.95 1080MB 48GB 600GB
1GB Slice $70.00 1024MB 40GB 400GB
Linode 1440 $79.95 1440 MB 64GB 800GB
2GB Slice $130.00 2048MB 80GB 800GB
Linode 2880 $159.95 2880MB 128GB 1600GB
4GB Slice $250.00 4096MB 160GB 1600GB
8GB Slice $450.00 8192MB 320GB 2000GB
15.5GB Slice $800.00 15872MB 620GB 2000GB

As you can see, Linode typically gives you more for your money - though I am unable to gain concrete information regarding their private “high-end” dealings.

And finally…

The Community.

Both companies having thriving communities surrounding them, though Linode is generally much more private and therefore, relatively unheard of in comparison.

Slicehost has a nice-sized IRC channel as well as a Campfire chat room. You can hear people discussing Slicehost on twitter fairly commonly and some well-known Mac OS programming sites are run off Slices (MacDevNet for one).

Linode is more tight-knit in my experience. They have an IRC channel hosted on OFTC (yes, it is still alive) which is fairly lively throughout the day. There are a lot of regulars there that will help anyone who has a problem, or just shoot the shit with you.

In Summary

It all comes back down to the feel. Linode can offer you more if you like to pull the levers and push the buttons, but Slicehost will offer you a more controlled experience, which is quite enjoyable. In the end, I’d say it’s mostly a matter of preference.

Published your opinion? Found a mistake? Feel free to email me — jesse (at) this domain

Addendum 2: Via a lead on Twitter (thanks, @tarheelcoxn), I’ve found out that Linode and Slicehost both share a small (but nagging) weakness. They do not support shared logins for multiple accounts (work and personal). You will have to use separate primary email addresses, though you should be able to set up secondary addresses such that all alerts come to your true primary address.

Addendum 4: Twitterite @davidnwelton wrote up a great article comparing Linode and Slicehost on the x86_64 and i386 front, he approaches it from an overall “Performance”/Dollar. In the end, Linode pulls ahead for your buck - but reading the entire write-up is suggested.

Addendum 5: @mnordhoff Noted that Linode does not require justification for their first additional public IP address, but I am unaware of Slicehost’s policies with this.

Addendum 6: Linode has announced that they are expanding all disk space by 33.3% for all existing and future customers, I have updated the disk price point chart to reflect these changes.


  1. The person who emailed me this story requested to remain anonymous. I wish them the best of luck in getting to the bottom of this problem. 

  2. Via Linode’s support for pv-grub, users have been able to run FreeBSD. However, Linode does not officially support this. 

  3. Debian 4.0 is listed on the Slicehost FAQ, however, staff have informed me that it has been replaced by Debian 5.0 (Lenny) - which is still not listed as available on their website. 

  4. While Slicehost offers larger official plans, Linode is more than accommodating for customers with high-end needs, all you have to do is contact them. 



June 18, 2009, 3:32pm

Link

What is Twitter and Why Would I Use It?

Faruk Ateş does a fine job of describing what exactly Twitter for those who don’t know. First of a seven article series he’s working on.



March 13, 2009, 9:42am

urg... git packing...

Text

Auto packing your repository for optimum performance. You may also
run "git gc" manually. See "git help gc" for more information.
Counting objects: 8361, done.
Compressing objects: 100% (8111/8111), done.
Writing objects: 100% (8361/8361), done.
Total 8361 (delta 3510), reused 0 (delta 0)
Removing duplicate objects: 100% (256/256), done.

I cannot help but wonder exactly how much “performance” is gained for throwing an undesired processes into my workflow. Why not just append the message about manually running git gc to the end of a lengthy operation output? My real problem here is that my workflow was broken for some five-odd minutes because git decided to take-over and do it’s own thing.

It was no longer a tool, it was a nuisance.



March 09, 2009, 9:21am