VPS.NET cloud hosting review

This post is a first hand review of the VPS hosting services offered by VPS.NET, known as VPS Cloud Server. I'll keep it brief and focus on the benefits and disadvantages of their service.

My background as a web consultant and developer means that I've had experience with a wide range of web servers and hosting plans: shared, virtual server, dedicated, and internally managed corporate servers. I currently have accounts with four other hosting providers for various purposes.

The timing of this review is funny in a way. I've had an account with VPS.NET since November 2009, and until recently have had hardly any technical issues.

What's good about VPS.NET:
  • The node concept - you buy nodes and arrange them into VPS's. A node = 376MB RAM, 600 MHz CPU, 10GB SAN storage. They get cheaper as you buy more (currently they are $8 each!)
  • Control - they use a custom control panel (which is based on OnApp) which is breath of fresh air from CPanel. It's easy to scale your VPS, add another VPS, manage backups, get your invoices, submit support requests, and so on. This panel is great. It may even be better than Dreamhost's custom panel, of which I am also a fan.
  • DNS management - easy and simple. You can use softlayer.com or vps.net servers.
  • Large amount of operating systems to deploy - including Windows 2008, Debian, Ubuntu, CloudLinux, JumpBox and more. They also include a LOT of preconfigured templates for common applications, such as Asterisk, Magento, Wordpress, Bugzilla, Nagios, etc. This saves a lot of time.
  • Flexible offerings - I like how they have somewhat commoditised hosting and created a system by which you can add various add-ons to your account. I outline some of the add-ons below. In short, the modularisation of the service is a very good thing, and something they've done really well.
  • Lots of locations: 3 cities in the USA, 2 in Europe, 1 in Asia (Japan) - and some have multiple zones (which I think means data centres)
  • Support: I've found them to be quick to respond any time of the day, and straight to the point. This includes Tech and Billing. I only have good things to say about vps.net Support. They also just added phone support, which is a plus.
Some of the add-ons that I make use of:
  • Server Density monitoring - quick to set up and allows you to monitor load and other things of your system, Apache, MySQL, and much more. VPS.NET have brokered a cheaper licence from SD. Integration and setup is quite easy. The only problem with this type of licence is that it does not allow you to use the community contributed plugins from SD. This is a shame because I really wanted to add php-fpm monitoring, among other things. To use this, you need to sign up directly with SD, which voids the need for the VPS.NET add-on.
  • Rsync backups - basically they provide offsite storage to the same capacity of your VPS and simple instructions to set up secure rsync over ssh. You then set up your own rsync (ask me in the comments if you want help setting up rsync backups.) script and stick it on cron.
  • Snapshot backups - for $5/mth per VPS this gives you a daily, weekly, and monthly snapshot backup, as well as one manual backup you can use to create templates for future VPS deployments.
  • Managed support - for $99/mth/VPS you can have pro support to help you with upgrades, security hardening, and a lot of other stuff.

So all of the above is a winning recipe, but unfortunately there's one major issue that erodes a lot of the benefit. That is hardware stability.

Originally I signed up with a VPS on the Chicago-C cloud. For over a year I found this to be great. Fast performance and very little downtime. All hosts experience downtime, and I have come to expect a few hours here and there. 

In September VPS.NET asked everyone on CHI-C to move their VPS's to CHI-A, with their help. I ended up moving to CHI-D so I could use a Debian 6 template for the new VPS. The whole point of this move was to retire CHI-C, which apparently had been victim to ongoing problems and power outages. To be honest, I had been really happy with the stability of CHI-C!

As I said above, I recently began to experience system instability. This is related to the fact that all VPS storage resides on SAN storage. This is all good in theory, but based on my personal experience with SANs - they are great when they work but they seem to provide a single point of failure. And one which affects a lot of stuff.

I am not an expert but this seems to be because the failover mechanism of a SAN is to synchronise everything to the failover partner. This takes a very long time when you are syncing the data for hundreds of VPS's. I have seen similar SAN failures in large enterprises, with similar delayed restoration scenarios.

Just look at the running totals here for the data centre my VPS is on: http://status.vps.net/2011/10/chi-d-cloud/ You can see the synchronisation takes a LONG time to complete.

In fact if you search status.vps.net for SAN you will see many errors, affecting every zone.

SAN vs local is a big discussion, which I could not possibly cover here, but in general I believe:

SAN's provide an elastic storage solution, fault tolerance, and other benefits, but in my opinion they are not the ideal solution for a web server. The average web site does not require that much storage space, and the files stored generally need to be accessed often, and quickly. A local RAID storage solution makes more sense to me, in most cases. This provides better isolation both in terms of performance and faults. Yes, if a drive fails in with local storage, this may require downtime. But often, with hot-swap RAID solutions, it will not. And if there is downtime, it will be less, simply because there is less data to copy/rebuild.

Enough about storage...

This post is about VPS.NET but I think it'll help to compare to another VPS provider I've got a lot of history with: Dreamhost.

I've had a Dreamhost VPS for well over 2 years and have never had hardware-related downtime. With Dreamhost, I have only experienced downtime due to network connectivity and from overloading the box with too much traffic! Dreamhost told me that their VPS's run with local storage. While there are obvious benefits to SANs, from a stability point of view, just based on what I've personally seen, I'd rather have local storage for a web server.

As an aside, you may be wondering, why I have VPS with two companies? 

Well, I had the Dreamhost one for quite a while, and added many sites over time. Mostly Wordpress sites, which routinely use a tonne of RAM! I kept hitting the limit of the VPS, and had to increase the resources. My choice was to keep spending more with Dreamhost or move a few sites to another host. Dreamhost VPS's give you a kind sudo root access, which means you can install pretty much whatever you want, but it's not as straight forward as having actual root access. They also do not give a choice of Linux distro. At the time I was keen to play with alternate web servers like lighttpd, and PHP extensions like apc and php-fpm. This was not easily possible with Dreamhost, so I chose to try vps.net, who provide full root access.

Before I forget, a few other things that VPS.NET could improve on IMHO:
  • Central SMTP server for customers would be a big help. I understand why they don't do it though (I'm looking at you spammers.)
  • Add-on pro-rating (is that a word?) - their billing system does a good job of pro-rating services when you add them, e.g. if I add backups 75% through the month, they will debit $1.25 from my account. However, if I then remove it two days later - no refund. I don't care about a few bucks, but I've heard that Linode actually do this. It'd be nice from a completeness point of view. Please correct me if I'm wrong. For larger amounts, where I have dropped nodes, I've asked billing to credit me and they have quickly and graciously done so.
  • Scaling - some VPS providers allow you to almost instantly increase your RAM and CPU share, without a reboot. To do so with VPS.NET means adding 1 or more nodes, and then rebooting your VPS. This also provisions additional storage to your VPS. I think I saw somewhere that they were working on instant scaling. This would be a great benefit.
  • CPUs - for some reason on my VPS I have access to 3 Xen vCPUs. Most other providers I've seen offer 4.
So at the moment I'm shopping around for a new host for my, and my client's websites because I need maximum stability. It's a shame because moving a whole heap of sites is time consuming. But explaining downtime is not something I want to spend time on, and losing advertising revenue from other sites I run is also clearly a bad outcome!

My final thoughts on VPS.NET: they have most of the ingredients in place for a winning service. They are relatively communicative, and seem to genuinely want to create a service that is a cut above the rest. They have implemented some very creative features, and innovate regularly. They just really need to spend some time on their infrastructure and consider some ways to remove the dependence from the SANs, or improve their reliability. I have heard rumblings from management that they are in the process of improving the VPS infrastructure. This review is based on the current state of affairs, which, of course, I hope improves.

Their redundant geo-hosting service looks like a step in the right direction, but it's still in beta, so we'll see how it pans out.

Once I find alternate hosting for the clients I have on vps.net, I'll probably reduce my nodes with them and continue to use the VPS for less important sites. But even if I leave completely, I'm sure I'll be back when the dust settles.

Based on their affordability, flexibility and creativity, I absolutely recommend them for non-mission critical purposes. However, if you set up redundancy with another provider (e.g. with MySQL replication, rsync, etc) then VPS.net could be a fantastically affordable part of that solution. I am certainly considering this as an alternative option to finding yet another host: if I am going to set things up all over again, I may as well leave a redundant copy on vps.net, perhaps with a reduced set of nodes.

As a general comment I'll say that VPS is an excellent solution if you have unusual requirements. The powerful control panel and modular nature of features allows you to mix and match different technologies, and quickly add VPS's for testing. In that respect I feel they are a great component as part of your whole web infrastructure - just not [yet] necessarily the primary component.

Check out all the VPS.NET plans here

Note to future readers: Remember this review was written in November 2011, so if you are reading this in 2012, I am pretty sure that the VPS.NET storage issues have improved.

If you'd like to try Dreamhost VPS - sign up here for a two week free trial, and use the promo code RANDOMVPS to save $50 if you decide to stay!

3 comments:

Bluemontoya said...

I was looking into cloud vps server before. Thanks for the post.

itmg said...

Great breakdown of VPS.net cloud hosting

Unknown said...

I value the blog.Really looking forward to read more. Keep writing.

Tags

windows (10) microsoft (9) .net (6) google chrome (5) windows 7 (5) asp.net (4) google (4) google browser (4) development (3) javascript (3) mssql (3) rss (3) sql server (3) wordpress (3) automation (2) blogging (2) css (2) database (2) firefox (2) get all wordpress images (2) gmail (2) google docs (2) intel (2) internet explorer (2) linux (2) linux commands (2) microsoft word (2) mysql (2) netsh (2) network issue (2) proxy (2) seo tips (2) shell (2) sun (2) tfs (2) videos (2) wget (2) windows networking (2) windows vista (2) winhttp (2) .net 3.5 (1) .net 4.5 (1) .net async ctp3 (1) .net framework 4.0 (1) 404 (1) JungleDisk (1) access (1) active directory (1) addons (1) adobe acrobat (1) adobe dlm (1) adobe reader (1) adp (1) adsense (1) adtoll (1) adwords (1) amazon (1) antivirus (1) asp.net 4.0 (1) authentication (1) back links (1) backlinks (1) bacula (1) bash (1) batch files (1) blogger (1) box (1) browser exploits (1) category rss (1) cell phone (1) cell phone comparison (1) charting (1) cheap cell phones (1) cheap laptop upgrades (1) checkout (1) chrome (1) chrome.manifest (1) cloud (1) cloud hosting (1) cloud vps (1) code (1) color chart (1) colour chart (1) conditional formatting (1) config (1) configuration (1) context menu (1) copy (1) corrupt (1) credentials (1) cross-reference (1) database scripts (1) dba scripts (1) debian (1) decrypt (1) delete file windows vista (1) delete files (1) dell (1) dell laptop (1) dell studio (1) dell studio 1537 (1) dhcp (1) directory size (1) div (1) dns (1) document properties (1) dotnet (1) download (1) dreamhost (1) dreamhost coupon (1) dreamhost promo (1) dreamhost promo code (1) drive letter (1) drivers (1) duplicate content (1) editpad pro (1) encrypt (1) encryption (1) error (1) error code (1) excel (1) exception (1) external hard drive (1) facebook (1) faviconize (1) feeds (1) firefox 3 rc1 (1) firefox 3.1 (1) firefox addons (1) firefox tabs (1) firewall (1) firewall script (1) fix (1) fix .net framework (1) foreign keys (1) gmail 2.0 (1) gmail error (1) google chrome 2.0 (1) google chrome dev (1) google chrome exploit (1) google reader (1) google reader tags (1) gtdinbox (1) hard drive (1) hex color (1) hex colour (1) htaccess (1) html (1) html 5 (1) iis6 (1) installation (1) ipod touch (1) ipod touch 2g (1) ipod touch freeze (1) ipod touch magnet case (1) ipod touch magnet case problem (1) ipod touch problem (1) iterator pattern (1) itunes (1) java (1) joomla (1) jquery (1) laptop (1) laptop upgrade (1) laptops (1) latex (1) leeching (1) like button (1) link checker (1) linkbacks (1) linq (1) linqdatasource (1) lost password (1) making money online (1) map drive (1) mega cheap phones (1) microsoft excel (1) microsoft signature (1) microsoft store (1) microsoft web deploy (1) microsoft windows (1) microsoft word 2007 (1) minimize firefox tabs (1) mozy (1) ms word (1) msdeploy (1) msdtc (1) nant (1) netstumbler (1) network path not found (1) network path was not found (1) network problem (1) networking (1) new movies (1) nintendo (1) nirsoft (1) nocheckbrowser (1) number (1) odf (1) odt (1) online backups (1) open source browser (1) openoffice (1) oracle (1) oracle client (1) photoshop (1) phpmyadmin (1) podcast (1) powershell (1) pr checker (1) productivity (1) proxy server (1) proxycfg (1) putty (1) recover (1) registry (1) reinstall windows 7 (1) remote desktop (1) remove (1) repair (1) reset joomla admin password (1) rewrite (1) rsa (1) sandy bridge laptop (1) seagate momentus xt (1) seo tools (1) sequence (1) server monitoring (1) sftp (1) social networks (1) softlayer (1) soulseek (1) spreadsheet (1) spreadsheet formula (1) sql (1) sql scripts (1) sql server management studio (1) sqlclient (1) ssh (1) ssis (1) ssl (1) ssms (1) subst (1) tabmixplus (1) telstra (1) text editor (1) trust (1) unlock cell phone (1) unlock mobile phone (1) upgrade laptop hard drive (1) user management (1) vb.net (1) video download (1) virtual server (1) visual studio (1) vodafone (1) vodafone australia (1) vps (1) vps.net (1) wd external drive (1) web deploy (1) web dev (1) web development (1) web hosting (1) web security (1) webdev (1) webmail (1) webmaster tips (1) western digital (1) wifi networks (1) wii (1) win7 (1) windows 7 backup (1) windows 7 gadgets (1) windows 8 (1) windows 8 antivirus (1) windows error (1) windows live (1) windows live essentials (1) windows live toolbar (1) windows tips (1) windows web development (1) windows xp (1) winxp (1) wireless networks (1) word tips (1) wordpress 2.7 (1) wordpress plugin (1) wp super cache (1) yield (1) youtube download (1) youtube playlist download (1)