XHTML

Slicehost vs Linode

Six months ago I investigated the options for Xen virtual servers [1]. I ended up receiving an offer of free hosting and not needing that, but the research was useful. There is a good range of options for Xen servers with different amounts of CPU power, RAM, bandwidth, and disk space. There are a couple of things that seem to be missing, options to upgrade from virtual servers to physical servers, and information on dedicated disk and database performance – but I’ll explain that later after some history.

About a week ago a client needed a Xen virtual server in a hurry, their main server (a Xen system that I run on hardware that they rent) was getting a bit overloaded and needed to have one of the largest DomUs moved off. I ended up recommending Linode [2] based on my research and comments I received. The Linode server is working quite well and the client is happy, one nice feature of Linode is the choice of server rooms that they offer. I was able to choose a room in the same region as the other servers that the client owns and thus get ping times that are sometimes less than 2ms!

Due to a missing feature in a program that I’m maintaining for the client a large number of MySQL queries are being made. Due to a problem I’m having with MySQL it won’t let me create a slave database server so all the queries go over the VPN and use a large amount of data. This combined with the other traffic that should be going over that link means that about 600G per month is being used, fortunately that is rather cheap. Linode staff handled this very well, after the server had exceeded it’s quota by 120G they asked my client to confirm that the traffic was legitimate and then suggested an upgrade to a plan that could handle the traffic (which went smoothly). Now I have another week to add the feature in question before I meet the quota again.

But now I am looking at getting a Slicehost [4] virtual server for the same client (for a different project) because Slicehost is owned by Rackspace [5], and the new project if successful will need a set of powerful servers and Rackspace seems like a reasonable company to host that.

The problem with Rackspace is that they (and every other ISP I’ve researched so far) seems to offer little in regard to customers who need serious disk IO. I am planning some servers that will have a write bottleneck on a MySQL database (or maybe multiple shards), so serious disk capacity is needed. At least I would like to be able to get disk storage by the tray (12-14 disks) with the controllers having RAID-6 support. Rackspace only offers RAID-5 (according to the “livechat” person), and we didn’t get as far as discussing how to add more trays.

What would be ideal is if there was an ISP that had both virtual servers and physical servers (so I could start with a virtual server and move to a physical server when things are working well), and also serious storage options. They would offer internal disks, external RAID arrays, and NetApp Filers [6] (or some equivalent device). It would be really nice if I could just instruct the ISP to add another NetApp Filer to my back-end network and have it done for me (I’m certainly not going to visit the US to install new hardware). It’s been over a day since I submitted a sales request to NetApp asking whether they partner with any ISPs and I haven’t received a response.

OpenSolaris with ZFS also sounds good for disk IO performance (they have similar features to NetApp). Unfortunately the support for OpenSolaris among ISPs is not that great (while everyone offers Linux and Windows), and I haven’t used any recent version of Solaris. So using OpenSolaris would require finding someone with the skills to manage it who can work for my client – as opposed to a NetApp device that would be just like any other NFS server, SAN, or iSCSI server. But I’m not ruling OpenSolaris out, if someone knows of a good ISP that hosts OpenSolaris machines and supports adding dozens of disks and decent amounts of NVRAM for ZFS then I would be interested to investigate it. Joyent has some interesting OpenSolaris virtual server plans [7], they are a little pricey but offer large amounts of data transfer. They don’t provide any information on disk IO capacity (other than saying that they use ZFS for good performance). I’ve just downloaded Nexenta (Debian with the OpenSolaris kernel) [8] and will test it out over the next few days.

One of the reasons I’m tending towards Rackspace at the moment (with Slicehost as the entry point) is that they seem cooperative to customer requests. My discussions with them (on a web based “livechat” and on the phone) have indicated that they may be able to do something special for me.

9 comments to Slicehost vs Linode

Gandi Hosting uses RAID60 for the disk on all of their virtual servers. Furthermore, all of the disk storage lives on SAN devices, and you can manage disks independently of servers, simply attaching and detaching them. You can detach a disk from one server and attach it to another. They offer 5GB of disk space per share, and you can also purchase additional disk independently of server shares, up to more or less arbitrarily large disks.

Anon: Using RAID-60 is a good thing to do. Using a SAN in that context makes it easy for them to manage, the benefit to me (as a potential customer) is lower prices (Gandi are quite cheap for what they do). The way of managing shares is good too.

However what I want is the option to have my own NetApp filer attached to a dedicated server as an upgrade path from a virtual server.

Among other things it will be a good selling point for customers. If I have a potential customer that says “I’d like to use your service but I’m not sure that you can scale with the load” then I’d like to be able to say “I can add as many NetApp filers as I need to handle the IO load and my database is sharded to take advantage of them all”.

I’m guessing that I’ll need several sharded MySQL instances to provide enough load to keep a single NetApp busy, I haven’t yet found any good research on this topic (I haven’t even had time to look seriously).

etbe: I don’t really see the difference between a dedicated server and a virtual server taking up all the shares available on a single physical machine, other than that the virtual server will prove easier to manage. Similarly, I don’t really see the difference between having “your own” NetApp filer and having an arbitrary amount of disk spread across multiple disk devices and attached to arbitrary servers. Sure, virtualization adds a slight overhead, but Xen and other paravirtualized solutions have near-zero I/O overhead. Why sacrifice the easy manageability of virtualization?

Hey Russel, thanks for mentioning us. I just wanted to point out that we do offer custom Linode plans, all the way up to one Linode on a host. We also have a mass storage product in development. Feel free to get in touch with us if you have any questions.

You might want to consider ServerPronto – $30/month for a non-virtual server is nice. When I researched them two years ago they did seem to have quite a few dissatisfied customers, so do google them first, but I did risk it and haven’t have any problems with them.

Shot: Nice prices, but they omit any details of the hardware. I’m guessing that it’s white-box and I wonder whether it even has ECC RAM.

Personally I consider Dell (which seems to comprise the bulk of Rackspace offerings) as the minimum hardware. I would only be inclined to recommend lesser hardware if it was on a virtual server (which has migration on hardware failure managed by someone else and included in the price).