Archives

Categories

Virtual Hosting Features

I’ve just been setting up new virtual servers at Linode [1] and Slicehost [2]. I have previously written a review of both those services [3], based on that review (and some other discussions) one of my clients now has a policy of setting up pairs of virtual servers for various projects, one server at Linode and one at Slicehost.

Now both virtual hosting providers work very well and I’m generally happy with both of them.

But Linode seems to be a better offering.

Linode has graphs of various types of usage, I can look at graphs of disk IO, CPU use, and network IO for the last 24 hours, 30 days, or for previous months. The three graphs have the same scale of the X axis so I can correlate them. The stats on Slicehost just allow you to get the current raw numbers, which doesn’t help if I want to know what happened last night when performance sucked.

When I build a Linode instance I can have multiple filesystems configured (Slicehost can’t do any of this). I can use less disk space than is available to reserve space for other filesystems. Separating filesystems makes it easier to track IO performance and also allows some bounds to be set on the amount of disk space used for various tasks. Nowadays the use of multiple partitions is not as popular as it once was, but it’s still a real benefit. Of course one of the benefits of this is that I can have two partitions on Linode that are suitable for running as the root filesystem. If an upgrade fails then it would be an option to boot with the other filesystem (I haven’t actually done this but it’s good to have the option).

I believe that this feature of Linode could do with some improvements. Firstly when creating or resizing filesystem it should be possible to specify the number of Inodes when using Ext3. The fsck time for a large Ext3 filesystem that has the default number of Inodes is quite unreasonable. It would also be good if other filesystems such as XFS were supported, for some use cases XFS can significantly outperform Ext3 – and choice is always good. When BTRFS becomes stable I expect that every hosting provider will be compelled to support it (any provider that wants my continued business will do so).

Now Linode and Slicehost both allow sharing bandwidth allowances between virtual servers. So if you run one server that uses little bandwidth you can run a second server that needs a lot of bandwidth and reduce the potential for excess bandwidth use problems. The next logical extension to this is to allow sharing disk allocation between servers on the same physical system. So for example I might want to run a web server for the purpose of sending out large files, 360M of RAM as provided by the Linode 360 offering would be plenty. But the 128G of storage and 1600GB per month of bandwidth usage that is provided with the Linode 2880 plan would be really useful. At the same time a system that does computationally expensive tasks (such as a build and test server) might require a large amount of RAM such as 2880MB while requiring little disk space or bandwidth. Currently Linode allows sharing bandwidth arbitrarily between the various servers but not disk space or RAM. I don’t think that this would be a really difficult feature to implement.

Finally Linode has a “Pending Jobs Queue” that shows the last few requests to the management system and their status. It’s not really necessary, but it is handy to see what has been done and it gives the sysadmin a feeling of control over the process.

These management features provide enough value to me that if I was going to use a single virtual hosting provider then I would choose Linode. For certain reliability requirements it simply wouldn’t be a responsible decision to trust any single hosting company. In that case I’m happy to recommend both Linode and Slicehost as providers.

5 comments to Virtual Hosting Features

  • (Sorry if this gets posted twice. WordPress was acting funny. And then ate my comment when I hit Back.)

    FWIW…

    If you have a Linode 360 and a Linode 2880, they *won’t* be on the same physical server, since Linode only puts one plan type on each host.

    For $800/month, you can get a host to yourself and divide it up however you want, but…

  • etbe

    Matt: That’s just a matter of policy. Linode could change that policy at any time.

    As an aside, another thing that would be rather handy would be the ability to migrate virtual servers to systems that conflict less. I had a problem with a Linode instance that used a moderate amount of disk capacity, the Linode people offered to move it to a different host but made no guarantees that it would be better.

    It would be good if they could automatically analyse the historical performance of all systems, then if they noticed that my DomU was often disk bottlenecked and it was on a host with other disk-intensive DomUs they could offer to transfer me to a system that was shared with customers who were CPU bottlenecked. That would mean more CPU time for the CPU intensive customers and more disk IO capacity for me.

  • Hi Russell, I also use both Slicehost and Linode and based on my experience with both I also find Linode to be a better value. Thanks for sharing your opinions on the matter.

  • Anonymous

    Hi,

    Thanks for this followup post. I remember reading your first review of Linode and Slicehost a long time ago and actually tried out a Linode myself after reading about your experiences with their services, as well as other reviews I found on the net regarding Xen providers.

    Currently, I don’t have a server with them anymore, but when I did host with them I thought the Linode Manager and their Lish console were truly amazing. Nobody else could compare to the kind of features those guys could offer for a mere $20 per month. However, I was also starting to run into some IO bottlenecks, and rather than wait for my sites to screech to a halt, I eventually decided to move back to cheap CPanel hosting for now. Yeah, I don’t get to play around with the server as much as I’d like to… but then again I’m only paying $10 per month as opposed to $20 =D

    Anyway, I’m wondering if you’ve also tried VPS.net and/or Gandi.net as well. Gandi has been around for a while and would be a great alternative if you’re based in Europe. Likewise, I’ve recently been following the developments over at VPS.net, and one of the things I’m personally excited about (cause I’m in Asia) is their possible expansion into Japan soon (or perhaps Brazil as there’s still an ongoing poll asking users on their forum where their servers should go next, although Japan is in the lead).

    Interestingly, after shopping around for CPanel VPS hosting, I also found out that Namecheap (the domain registrar) hosts their VPS on Xen servers as well. Most other managed CPanel hosts use Virtuozzo/OpenVZ. Any experience/thoughts on these 3 other providers? Would be interesting to know how each system performs under heavy database load compared to Linode/Slicehost.

    Finally, I’d like to ask, based on your current experience with the sites that you manage on Linode/Slicehost, do you think now is a good time to even be switching to a Xen VPS server again, or should I just wait until systems with SSD drives are available in the, hopefully, near future?

    (FYI, I don’t have heavy traffic on my sites, but I do a lot of application development, so it would be nice if I can try out applications on a semi-dedicated server as opposed to a shared hosting environment like what I currently have… hence the reason why I’m thinking of getting a Xen VPS again.)

  • Anonymous

    Haha… that was a little longer than I thought. I guess I should also just add Amazon into the mix, since they also use Xen! =D