Inspired by this call to arms, and especially al3x's sovereign orchestration scripts, I've set out to consolidate all of the "cloud services" I rely on most into a single privately-hosted server.
The first step is to find a suitable Virtual Private Server to rent.
My requirements are:
I checked out three services...
Headquarters: Regina, SK
Servers: Montreal, QC
Package: LFC-512
Memory: 512MB (+512MB Add-on)
Disk: 30GB
Backups: 7 daily & 3 weekly
Transfer: 600GB
CPUs: 4 Cores - Intel Xeon E5-2620 @ 2.00 GHz
IPv4 Addresses: 1
Managed DNS: Yes
Price: $19.37 USD/month, incl GST
I might be biased: I've done business with LFC hosting for over 10 years, and know them personally. I've also hosted many of my websites on their shared hosting service and it has been excellent. I haven't used their shared hosting service as much recently because it is Windows/IIS and I only speak Linux, so I'm glad to see their VPS offering has such an impressive array of Linux distros to choose from. They even have the latest Debian 7, which is exactly what I need for this project.
The website and ordering UI was the best of the bunch, but that's not saying much. All of these websites feel clunky and tacky compared to Linode. But LFC's was the least worst.
Headquarters: Richmond, BC
Servers: Richmond, BC
Package: Elastic Cloud VM Small Instance
Memory: 1024MB
Disk: 20GB
Backups: 5GB of snapshots
Transfer: 250GB
CPUs: 1 Core - Intel Xeon E5620 @ 2.40 GHz
IPv4 Addresses: 2
Managed DNS: Extra cost
Price: $25 CAD/month, plus GST
I originally reached out over Twitter pointing out their relatively high price/specs, and got a quick response by email addressing my concerns and offering various promos. A deal is always nice, but pricing transparency would be even better.
The order form was buggy and cumbersome. There were a few visual glitches in Safari, and a confusing UX experience when required fields were missing. At one point the page reloaded inexplicably, and the price appeared to have gone up to $28 from $25. My guess is that it added the tax.
CACloud was the only one I reviewed that provides a free 30-day trial. This is awesome.
Headquarters: Victoria, BC
Servers: Toronto, ON
Package: VPS 1GB
Memory: 1024MB
Disk: 50GB
Backups: Yes, but requires support to restore
Transfer: 500GB
CPUs: 4 Cores - Intel Xeon E5-2630 @ 2.30 GHz
IPv4 Addresses: 1
Managed DNS: Yes
Price: $33.59CAD Monthly (GST/PST incl)
The website is nice and has lots of information, and the order process was painless. It verified my phone number by sending a code by SMS, a process that was speedy and worked first try. Make sure to check out their frequent promotions.
An aside: I hate Verified By VISA. Online vendors must be pressured by VISA to participate in this because then VISA (or securesuite.com, whoever that is) has control over an additional authentication step during the payment process. However, they're not very good at it. The only additional information I gave them to authenticate me (beyond what I normally give a vendor) was my birthdate. I then got to choose an 8 to 12 characters password. No symbols and no spaces. What is this, written in COBOL?
I signed up for all three services on a Saturday morning. The VM from LFC wasn't provisioned until about 36 hours later on Sunday evening, which I take to mean that it is a manual process and weekend staffing is light. At least this is only a one-time inconvenience — the control panel provides sufficient self-serve automation should I need to reboot or rebuild the VM.
It's a Xen virtual machine, but I wasn't able to find evidence of which orchastration software they use, if any.
root@vps1:~# df -h Filesystem Size Used Avail Use% Mounted on rootfs 30G 996M 28G 4% / udev 10M 0 10M 0% /dev tmpfs 100M 80K 100M 1% /run /dev/xvda1 30G 996M 28G 4% / tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 405M 0 405M 0% /run/shm
root@vps1:~# free -m total used free shrd buf cache Mem: 996 226 770 0 35 152 -/+ buf/cache: 38 958 Swap: 1023 0 1023
root@vps1:~# date Tue Aug 27 05:24:41 UTC 2013
How about that! A sane default timezone.
The VM was provisioned and running within a minute or two of completing the form — by far the fastest of the bunch. I logged in to the IP with ssh using the supplied (auto-generated) root password and had a look around.
It's a Xen virtual machine, and they appear to use OnApp to orchestrate the provisioning.
[root@lukecyca ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda1 19G 1.3G 17G 8% / tmpfs 512M 0 512M 0% /dev/shm
[root@lukecyca ~]# free -m total used free shrd buf cache Mem: 1024 243 780 0 8 121 -/+ buf/cache: 112 911 Swap: 1023 0 1023
[root@lukecyca ~]# date Sat Aug 24 12:56:16 PET 2013
Everything looks good, but what's with the timezone? PET is Peru's timezone.
Debian 7 isn't in their list of images, so I had to go with Debian 6 and then spend a half hour (and a gig of bandwidth) to upgrade it to version 7.
One hour and 45 minutes later, I got an email telling me that my VM was running. They put the root password (that I had set during the sign-up process) in the email. D'oh! Make sure to change it during the first login.
The VM is a OpenVZ container-based virtual machine.
root@vps2:~# df -h Filesystem Size Used Avail Use% Mounted on /dev/simfs 50G 421M 50G 1% / tmpfs 512M 0 512M 0% /lib/init/rw tmpfs 512M 0 512M 0% /dev/shm
root@vps2:~# free -m total used free shrd buf cache Mem: 1024 23 1000 0 0 14 -/+ buf/cache: 9 1014 Swap: 1024 0 1024
root@vps2:~# date Sun Aug 25 00:28:26 MSK 2013
Again with the bogus timezone! This time it's Moscow!
The IP assigned was 208.79.218.109, which is in AS40092. In this facility, it seems to have a single upstream provider: AS10929 assigned to Netelligent Hosting Services Inc., who in turn have four upstream providers: Bell, NLayer, Tinet, and Level3.
luke@mbp:~ ><((°> traceroute 208.79.218.109 1 192.168.1.1 4.160 ms 2 ...teksavvy.com 35.288 ms 3 ...teksavvy.com 35.228 ms 4 ...van.he.net 42.025 ms 5 ...sea.he.net 49.329 ms 6 ...sea.he.net 39.926 ms 7 ...sea.bell.ca 109.763 ms 8 ...van.bell.ca 107.817 ms 9 ...tor.bell.ca 110.769 ms 10 ...mon.bell.ca 109.649 ms 11 ...mon.bell.ca 130.792 ms 12 ...mon.bell.ca 110.954 ms 13 ...mon.bell.ca 99.420 ms 14 ...netelligent.ca 101.715 ms 15 208.79.218.109 99.390 ms
The VPS seems very well-connected through four major providers, and the ping time is acceptable for me. It is unfortunate that my traffic goes to Seattle and back to Vancouver before going over Bell's Canadian network to Montreal.
LFC's server was the only one to support IPv6 by default. Now, I only barely have a functional competency with IPv6, and will probably disable it until I have an urge to tinker, but that's pretty cool. On the otherhand, it caused dmsg
to spew ipv6: Neighbour table overflow
until I raised some limits.
The IP assigned was 67.231.18.86, which is in AS54643 assigned to Idigital Internet Inc. in Richmond, BC. According to CIDR Report, Peer 1 is their single upstream provider.
luke@mbp:~ ><((°> traceroute 67.231.18.86 1 192.168.1.1 1.029 ms 2 ...teksavvy.com 33.928 ms 3 ...teksavvy.com 34.912 ms 4 ...van.peer1.net 35.572 ms 5 ...van.peer1.net 35.725 ms 6 ...van.idig.net 35.439 ms 7 67.231.18.86 36.236 ms
That is an impresively short route for me and a seriously glorious ping time! My SSH session felt like the server was on my private LAN. Even text-editing in vim was fluid.
The IP assigned was 209.15.213.88 which is in AS13768 assigned to Peer 1 in Toronto, ON. According to CIDR Report, Peer 1 has six upstream providers, so they are certainly well connected.
luke@mbp:~ ><((°> traceroute 209.15.213.88 1 192.168.1.1 1.115 ms 2 ...teksavvy.com 35.757 ms 3 ...teksavvy.com 35.440 ms 4 ...van.peer1.net 36.100 ms 5 ...sea.peer1.net 39.590 ms 6 ...sea.peer1.net 38.683 ms 7 ...chi.peer1.net 92.685 ms 8 ...tor.peer1.net 100.954 ms 9 ...tor.peer1.net 101.313 ms 10 ...tor.peer1.net 101.556 ms 11 209.15.212.26 99.805 ms 12 209.15.213.88 99.264 ms
This is a respectable ping time, but it's too bad that Peer1 routes it through two of their US hubs to get to Toronto.
LFC Hosting has the best specs for the lowest cost. They don't quite reach that of Linode, but they're not too far off. The slow provisioning is disappointing, but less of a problem once the service is running.
This is the one I'll continue to use.
CACloud was the fastest for me, both in terms of signing up as well as network connectivity. The server specs aren't great, but probably workable for what I need. I appreciate that they seem to control all aspects of the service including the hardware, datacentre, and even their IP block assignment. They were refreshingly accessible and transparent when contacted.
FullHost has a solid offering. The price point is a bit high compared to the other two, but that might be worth it to someone who needs the slightly higher specs.
I had a difficult time sifting through the zillions of companies offering VPS and hosting services. The vast majority of them are barely legit, reselling someone else's service without adding any value. Precious few actually run a datacenter, servers, and connectivity, and they tend to not cater much to individuals. Many lie somewhere in the middle. To discover where you are really being hosted, you need to get an IP for the actual server you're renting. Only then can you do a traceroute and a whois lookup on the IP to determine who's actually hosting it and where.
In doing this review, I signed up with supervps.ca who claim to be a Canadian company. The VM they provisioned me was indeed hosted at YesUp in Toronto, ON. However, the payment receipt came from Vision Web Hosting LLC from Delaware, USA. I emailed to cancel my account, and got a reply (originating from 178.149.238.27, a Serbian IP) assuring me they were a 100% Canadian company. A bit more digging and I found that the websites for visionwebhosting.net, astrahosting.com, and supervps.ca are all served from the same IP block belonging to WebNX in Los Angeles. Who knows where this company is actually from or how many levels of reseller indirection is going on.