Techgage logo

VPS: What It Is and How It’s Useful

Date: December 3, 2010
Author(s): Rob Williams

We’ve talked a fair bit about home virtualization in the past, but now we’re going to take a different turn and tackle VPSs, or “Virtual Private Servers”. In essence, a VPS is a virtual machine in the cloud, allowing you to log in from anywhere and gain nearly full control over a remote machine with tons of bandwidth to do a variety of cool things.



Introduction

Last summer, I posted an article that took a look at virtualization from a consumer standpoint, as only months prior did I clue into the fact that this is something end-users should care about. The reasons are vast, but simple. Virtualization allows people to run an OS within their OS, and this “guest OS” could act as a testing platform for developers, a sandbox of sorts for others, or be required to run older software.

The thing that drew me to virtualization was the fact that I run Linux as a full-time OS. As much as I love Linux, I’ll be the first to admit that there are a couple of limitations, and in my particular case, having the need to use programs like Adobe’s Photoshop and Microsoft’s Excel required me to find a reliable solution. Rebooting every time I needed to use either was not the one I felt like going with.

Thanks to virtualization, I run Windows XP inside of my Linux install without issue, and aside from things like spreadsheet or photo editing, I can even play some simple games, including my favorite MMO, Asheron’s Call. Although I had a couple of specific reasons for getting into virtualization, there are a billion scenarios where it could come in handy.

Virtual Private Server
Overview of Virtual Private Servers

For developers, virtualization is a boon, because it allows them to test out their application or service inside of what I consider to be a “throwaway OS”. You can test out whatever software you need to, and revert the OS to a previous state at any point in time. It’s pretty brilliant.

For even more information on virtualization in general, I recommend you check out our primer article to fill in any gaps, as we go into fairly deep detail about how it all works. Of course, as the title suggests here, this article is not about virtualization on the desktop, but rather virtualization on a “private server”. What is that, exactly? That’s what we’re here to tackle.

What’s a Virtual Private Server?

One of virtualization’s key benefits is that it allows you to run a second (or third, fourth, etc) operating system in a protected environment, and a virtual private server acts the same. Instead of the OS being located on your local hard drive, however, it’s located on a server as the name suggests. This server could be in your own house, or in a remote data center.

Virtual Private Server
Gentoo Linux Virtual Private Server

VPS services are without question more common in IT environments than anywhere else, and companies such as Amazon have even built a solid business around offering such solutions. For the end-user though, what use is a VPS, and are they limited to those who tend to have greater technical knowledge? The answer is… “it depends”.

Because a VPS is server-based, you log in remotely, and as such, a GUI is almost never used. That means, on a Windows-based OS, you’d likely be connecting to it via the command-line, and not have a full-scale environment as you would on your PC. That’s because for typical VPS usage, a GUI is not often needed, and in addition, it’s never that ideal performance-wise.

On a similar token, it’s not that common to hear about a Windows VPS, and if one is used, it tends to be for a specific purpose. The main reason comes down to licensing fees. More often than not, using a Linux OS on a VPS is free, while Windows is not. Linux is also an OS that is built around having as rich a command-line interface as possible, and because of this, it’s generally easy to get things done, fast.

How it Works; Final Thoughts

As already mentioned, virtualization is the technique of having a “virtual” OS operate inside of a normal one, and with a VPS, the only real difference is that it’s located on a remote server. On the desktop, solutions used most often include VirtualBox and VMware, but for VPS use, the more common backbone is Xen, which happens to be what Amazon uses for its EC2 service. Other solutions do exist, such as OpenVZ and VMware, but their use depends on the VPS’ requirements.

Virtualization works because the hypervisor (tool to operate VMs) gives both real and virtual hardware access to the virtual machine. Often, a virtual machine will have direct access to the CPU and memory, but many other things will be fed through special drivers, such as for the USB and graphics. On a VPS, those two things in particular are not a concern.

To the end-user, though, none of this matters, and none of it is noticeable. If you’re familiar with the Linux command prompt to begin with, logging into a Linux VPS is going to feel completely natural – no different than if you were logging into an actual Linux-based server. The difference is that the VPS you log into might actually be running alongside many other VPSs as well.

Virtual Private Server
Options Overview of Virtual Private Servers

One of the reasons VPSs are so intriguing is that they are completely customizable. It’s common for a VPS provider to offer a wide-range of OSes to install, and these can be installed an unlimited number of times (this assumes Linux, Windows’ licensing fees are different). Gave CentOS 5.3 a try, but didn’t like it? You can quickly and easily click a button to install Debian 5.0 (just an example) instead, and after a couple of minutes of waiting for it to install, you’ll be able to access the new environment.

Because VPSs tend to cater to a wide-range of customer types, there is generally a large selection of Linux distributions to choose from, and you might be surprised to not only see updated versions, but older versions as well. This is because for some people, an older version might be required for testing, or for compatibility reasons. It’s nice to have this kind of flexibility, especially since it’s not always an option for you to install a custom solution (this wouldn’t be the case for large organizations).

Because the OS you’ll be using is a virtual machine, nothing you do to it can spread through to the rest of the machine. The same thing applies to desktop virtualization, where if your guest Windows OS crashes and burns, your real OS install won’t know the difference. This of course assumes that your virtual machine doesn’t have read/write access to all of the sensitive system files on your real install, but that’s never the case unless you specified it.

So, What’s the Point?

There’s no “one” reason that a person might dabble in virtualization, and a couple of scenarios laid out earlier can give proof of that. Most of those applied to desktop virtualization, though, so what about server-based virtualization? Let’s tackle a couple examples.

Being that it’s so affordable to do so, many people today own and operate their own websites. Generally, people will purchase some hosting space from a provider, receive a basic control panel and can upload their website to an FTP for the world to see. It’s simple, and works, but there’s a major limitation.

If you take Web development seriously, a general Web host is not exactly the best solution, because the real control you have is weak. You might be able to create FTP accounts, e-mail addresses, and other things like that, but what you can’t control is the software configuration. Because most Web hosts place many different websites on the same machine, software packages are rarely updated unless they have to be.

Virtual Private Server
Connecting to a VPS through a Web Browser

What if PHP 5.2.14 was installed and you needed 5.3.3? On a shared host, you’ll be out of luck. But on a VPS, because you have full control over the OS, you can install whatever it is you like. It’s YOUR server… one that just happens to be virtual, not native to the machine it’s on.

This scenario is actually one of the more common consumer reasons for getting a VPS. It’s not incredibly easy to get a website up and running on a VPS, but it’s not something that requires a professional, either. And sometimes, your VPS provider might be able to help you out, or at least direct you to tutorials that will get you started.

For those big into torrenting, that’s another popular VPS use. It allows people to upload their own torrents, or download others, straight to and from their VPS. This use might seem a little odd since people could just as easy torrent on their home PC, but there are a couple of reasons for cloud torrenting. One is that a VPS solution is reliable, and second, they are always backed by a far fatter pipe (as in bandwidth) than a home PC.

Standard VPS packages generally offer 1MB/s up and 1MB/s down (megabyte, not megabit), and because of that, some people might choose to upload a file to be torrented to their VPS first, and then seed from there. This allows them to seed at a much faster speed, and retain greater reliability. It’s no secret that some ISPs throttle BitTorrent traffic, even if it’s used for legal means, so this is one way to get around it.

If you care a lot about privacy, especially on the Web, but don’t want to go with a commercial proxy application or even deal with something like Tor (not that there is anything wrong with it), another option is to get a VPS and set up your own personal proxy. A common issue with proxies is performance, but if you set up your own on a VPS, it means you get huge bandwidth in both directions, so theoretically, you should always get the best performance possible.

Final Thoughts

All of the examples mentioned above are just the beginning of things you can do with a VPS, and considering this is just a primer, you can expect more content from us down the road that gets more specific, including the mentioning of a couple of things I didn’t quite want to talk about yet. In the end, we’d like to show you how to do the things we mentioned above, and on multiple versions of Linux, to make sure that if you do go with a VPS, you have no problem getting it up and running.

Some common questions now might be, “Where do I get one?” and “How much are they?”. Depending on your personal needs, the cost of a VPS will vary, but for most, the $7~$10 a month mark is about right. That’d include a couple hundred GBs of bandwidth and between 5GB and 10GB of hard drive space. For those wanting to do things like torrent, however, prices will be a bit higher due to the extra disk space that might be needed.

There are a multitude of VPS providers out there, but I use Neosurge for my personal needs as I’ve been a customer there since 2003 and have never looked back. The service for me has been unparalleled, and it was because of that company that I ever decided to take a dive into VPS. I wouldn’t hesitate to recommend it to anyone. You can feel free to contact the company if none of the default solutions work out to your favor, as anything can be customized.

If you happen to have any suggestions of things you’d like to see done with a VPS, or you already run a VPS and want to let the world know what you do with it, don’t hesitate to post in our related thread linked to below and tell us about it! Stay tuned, as we hope to have VPS-related content published in the very near-future.

Discuss this article in our forums!

Have a comment you wish to make on this article? Recommendations? Criticism? Feel free to head over to our related thread and put your words to our virtual paper! There is no requirement to register in order to respond to these threads, but it sure doesn’t hurt!

Copyright © 2005-2020 Techgage Networks Inc. - All Rights Reserved.