Five Reasons You Need a VPS

Tweet

Like many people in tech, I run my own online server. I’m a bit old fashioned though – instead of paying a provider for my own Virtual Private Server (or VPS), I run a Xen server off my home Internet connection.

Although upgraded over time, my server is nearing three years old. It houses five HDDs, and a bunch of fans to keep it cool. The noise isn’t too bad, however it drives up my apartment temperature noticeably in summer.

At the time of purchase, VPS was simply too expensive for personal use. Plus the management tools just weren’t what they are today. I don’t need scalability (multi-server) for my purposes, and in many ways having a VPS (especially the cheaper options) would have provided less flexibility over what my own server could offer.

Of course, that was then, and things have changed. Amazon now offers a micro instance with 613MB of RAM at no cost for a year (for new customers only), and $0.02 per hour (~$14.60/month) thereafter. If you’re not eligible for Amazon’s free VPS, RackSpace has an even lower barrier to entry at $0.015 per hour (~$10.95/month), albeit with only 256Mb of RAM.

A downside of the VPS options mentioned, is that the amount of RAM cannot easily be increased without increasing the price of these instances considerably. 256Mb of RAM for the RackSpace option is enough for a few basic tasks, but is a limitation if you aren’t careful. To put this figure into perspective, many newer phones these days have 1Gb of RAM. Increasing the RackSpace VPS instance size to one that uses 512Mb of RAM, also doubling the storage, doubles the price too. For the money ($262.80), you could easily get a Netbook with 1Gb of RAM and more storage – and presumably a similar level of CPU power.

Having said this, both Amazon and RackSpace continue to drop prices at an astonishing rate. It won’t be long before VPS solutions are the cheapest barrier to entry for personal consumer servers. Factor in electricity costs and the cheap non-redundant not-super-reliable Internet connection my apartment has, slow uplink included, and my crystal ball says jumping to a VPS solution may well be in my near future – and perhaps yours as well.

Now we have established just how affordable running your own online server is, the question is what you would want one for? Here I present five suggestions that almost everyone can appreciate:

Information Access and Collaboration On the Go

If you’re like me, you might have found yourself in this situation; you go out, end up unexpectedly doing a bit of shopping, and finally realize you left your shopping list at home.

You could have written your shopping list on your phone initially, but let’s face it – that’s not always practical. Sometimes your spouse or flatmate might want to update the list. You might also want to type/update your list on a real keyboard for efficiency, but not have synced your phone. In either case, you’ll find yourself all out of luck.

However, by running your own personal, private wiki, you can access it any time – on a spare computer at a store, on your phone, or anything else. You can even cross off purchases as you go, so your spouse won’t purchase the same things again if they happens to go out at the same time.

You could use Google Docs or similar for this purpose, but not everyone wants to trust Google with their documents. Not everyone cares to have a Google Account. If you run your own wiki server, you control your data.

On that note, the same could be said for syncing browser bookmarks and other information. Firefox Sync for example allows you to sync bookmarks with your own server.

File Storage

Heard of Google Music? Simply, it is a service that uploads your music collection to Google’s servers for streaming it back to your computers and devices later. Put even more simply? Storage exclusively for your personal music collection.

I can understand the need for such a service. I often find myself out and about wanting to listen to a particular album only to discover I don’t have it with me. If only I could access my music collection remotely somehow?

Google’s service is only available to US residents at present (which excludes myself), but that doesn’t matter. If running a personal server (VPS or otherwise), you can already grant yourself this functionality.

It doesn’t have to stop with music either – potentially you could use it to stream your own videos (as opposed to relying on YouTube), run your own Gitorious server to share code (or to host a SparkleShare folder to mimic Dropbox functionality), or even provide instant access to your photos and ebook collection. Again, there are plenty of Software as a Service (SaaS) solutions that can do the same thing with varying degrees of success, but running your own VPS puts you in control of your data – not somebody else – and provides you maximum flexibility.

Communication & Social networking

I have a confession to make. I don’t have a MySpace or Facebook account. If I want to blog, I blog on my own server – on my terms, and without fear of being banned, blocked or having my blog deleted. Unless my personal blog suddenly becomes far more successful than ever anticipated or expected, my home Internet connection or a VPS instance is more than enough to host my content on a basic WordPress install.

When I inevitably start using a VPS, with a far more reliable Internet connection, I would also use it to host my e-mail too – probably with Dovecot for IMAP access and SquirrelMail for web access – or possibly investigate ScalableOGo if calendar and address-book syncing/sharing is desirable.

There’s no reason to stop at blogging and e-mail; you could run your own XMPP server for instant messaging, your own StatusNet server for micro-blogging should you grow tired of the Twitter Fail Whale, or host your own Flicker-style photo/image collections. The possibilities are endless.

Game Hosting

When I get a bit of spare time (which is not that often), I’m known for enjoying a game of Killing Floor. It’s a team-based FPS zombie-shooter, similar to Left 4 Dead, though it’s been around for a lot longer as a UT2004 mod.

This game supports dedicated servers and there’s nothing worse than connecting to a server someone is hosting, and running into connection problems. Unfortunately, this is not a rare occurrence and can be extremely frustrating – it’s generally caused by people hosting their own server on their unreliable home Internet connection.

While I love the ability to host dedicated servers, it can make for a frustrating experience when not managed properly. There have been times when I haven’t been able to find a close server, so just host a server myself. One unfortunate effect of doing this is that lots of people join, and by the time I finish a few games and want to leave, I have to kick everybody off – which makes me feel bad.

It would be nicer if I could just leave the server running until it was no longer in use and then have it terminate. At the same time I don’t want to leave my gaming computer running when I’m not using it. It’s very noisy, and uses a lot of electricity.

Here’s a thought – what if I used a VPS to host my game? If I already use a VPS for my low-traffic blog, it wouldn’t matter if it gets left running. The only downside with a VPS, is that I would get some latency (whereas if hosted locally, it would be non-existent), though ideally I would run a VPS nearby geographically to minimize this.

As I am in Melbourne, that may rule out AWS for me – Singapore is the closest region Amazon has, but new regions are being added all the time and AWS isn’t the only VPS provider available. However, I imagine running a VPS for game server hosting will be a practical option for many soon, if people aren’t already regularly doing this in other parts of the world.

FreeNX Desktop

Here’s a wild idea – how about running an entire desktop on a VPS via FreeNX? I already have a Xen DomU instance dedicated for this purpose which I fire up as needed, and have had one for almost as long as I’ve had my Xen server. It may sound crazy, but it’s extremely useful!

One of the best uses I have found for this is website and web-browser testing. Sometimes, people in our office will complain that a certain server isn’t working. Is it our local infrastructure, such as an office proxy server or firewall? Is it our ISP? It’s extremely convenient to remotely connect to a FreeNX instance running outside of our office via a different ISP and have a look.

Another practical use might be for people who run Windows on a netbook (or OS X on a MacBook Air), but want instant access to a GNU/Linux desktop without running a local virtual machine. FreeNX fits the bill. It’s also handy when working on a computer you don’t own which doesn’t have the software you want installed – just keep an NX client installer on a USB key along with your keys, which you can plug in and run. In this way, you always have your up-do-date desktop with all your software, customizations and settings at your fingertips without leaving a trace of them on the machine you are physically sitting in front of.

There are also occasions when you might want to run graphical applications for extended periods of time, and having a FreeNX session you can just run in detached mode is extremely helpful. For example, my wife isn’t a fan of the command-line, but loves to download things on BitTorrent. Instead of SSHing into a Xen DomU on our server on the CLI, it is far easier for her to connect via FreeNX and run a graphical BitTorrent client. When she wakes up the next morning, she logs in from her desktop with her graphical NX client, and can usually see the downloads have completed.

Of course this last usage example works better when running a VM instance on local hardware as opposed to in AWS or RackSpace Cloud Hosting if the file needs to later be copied locally, however it could still be useful in situations where there the file size of the download is considerable but there are not many seeders/peers to download from.

To The Future

The suggestions I have listed here are a mix of practical and fun ideas, which could appeal to anyone with an interest in technology, privacy or control of their data. You do not need to have a job as a web developer or a mathematician with a need to crunch lots of data to find VPS offerings interesting or appealing – you just need a little imagination.

Looking long term, I personally like the idea of the Internet returning to its roots – becoming decentralized again. I like the idea that technology can now more easily be used to empower the individual – and not just the mega-corporation. Technologies like Diaspora, Bitcoin, StatusNet, Tor and BitTorrent are a great step forward to reaching such a goal, but everyone will need to have their own server to do their own computing on for this idea to be completely successful.

I don’t think a large physical server like I currently run in my apartment is the future. Possibly the Freedombox Foundation will play a part in paving the way to simplify running personal server software for the masses, but a lot of people don’t want to or can’t run dedicated hardware 24×7. As such, I predict VPS will be the future for a great many people – perhaps even yours.

Image via BL / Shutterstock

Free book: Jump Start HTML5 Basics

Grab a free copy of one our latest ebooks! Packed with hints and tips on HTML5's most powerful new features.

  • robreed

    Good blog post – I like the spirit of it. Sites like Facebook, Twitter and others (including WordPress and other hosted and turnkey apps) satisfy the basic desire to communicate, but their ease of use comes at the expense of creative and expressive freedom. In a lot of ways we’ve taken a leap backward over the past decade.

    I’m hoping to see the reemergence of internet hobbyist as larger cultural and creative influence. I’d like to see SitePoint take an active role in fostering that community. If that’s the idea behind CloudSpring, then I’m happy to see it and excited about the potential.

    > Looking long term, I personally like the idea of the Internet returning to its roots – becoming decentralized again. I like the idea that technology can now more easily be used to empower the individual – and not just the mega-corporation.

    I couldn’t agree more. It’s a great time for it.

    As for the web, HTML5 and an emphasis on standards compliance offer the opportunity for better projects with fewer clunky addons and workarounds. And there are a lot of great 3rd party APIs to experiment with that provide the sort of interconnected but distributed platform the Web was intended to be.

  • Michael

    Meh, I’ll just let Google take care of all that for me, who could be bothered with all the configuration and cost involved in doing it yourself. Also why does it need to be a VPS? What about a dedicated machine (which I assumed you were talking about anyway). By the title of the post I thought I was going to be reading about how bad shared web hosting is, or how a scalable cloud based VPS can beat a dedicated web server.

    • Adam

      > who could be bothered with all the configuration and cost involved in doing it yourself.

      I’ll stick my hand up obviously, but I have a few friends who also run servers at home. I personally find this kind of thing fun, but part of the enjoyment comes from getting things working the way I want them to.

      As mentioned, I’m currently running a dedicated machine. However as I was trying to point out, if you can get by with 256Mb of RAM and don’t already have a physical machine to use, the VPS solution should work out cheaper (over a period of 1 year at least). ~$10.95/month * 12 = $131.4/year You can’t get dedicated hardware at that price as easily as you can sign up for a VPS solution – especially x86 hardware. In the future, the same will be true for VPS solutions with even more RAM.

      • Jen

        Servers run at home are nice for a hobby, but they are no way comparable to the real thing.

        • Shivaprakasha

          thanks for the tuto but I get stuck at:iptables -A FORWARD -m state ?state RELATED,ESTABLISHED -j ACCEPTI get bad angmuert -state As I’m not a linux pro could you help?

  • Anonymous

    Don’t most ISPs have TOS/AUP that expressly forbid running your own server?

  • Michael Andersen

    Funny example with the shoppinglist. That you actually needs a VPN to do your shopping, because a shoppinglist can’t be done on a phone and certainly not without a real keyboard or the possibility to log on to another computer for updating the list.

    Well, we use paper for the shoppinglist. Color, size, new or used doesn’t matter – and hey, you know what? It works! And if I have a problem with an unupdated shoppinglist I am just going to call me wife and let her update me… in real time, and all of this is without a computer or VPN.

    Amazing, isn’t it?

    • faysal

      Nice article to read as tech hobbiest , u can run all u can from home as for own peace of mind i like personal servers from home or like the idea of the usb linux but for shopping list id rather open my fridge an see whats missing and get it on the way back from work if metro trains run on time

  • dlysen

    I like to host my own server but the maintenance is really important. The risk I’ve experience is having no electricity power in my area and no internet connection.

  • BoyFromBriz

    Awesome post, man. I’m off to set up a Xen server…..

  • Pingback: System Saviour » Blog Archive » Five Reasons You Need a VPS - In a world where no machine is safe…