Job Title: Sarcastic Architect
Hobbies: Thinking Aloud, Arguing with Managers, Annoying HRs,
Calling a Spade a Spade, Keeping Tongue in Cheek
Preamble
As I wrote a few weeks ago, I am currently developing an open-souce ithare::obf library. And apparently, to make sure it works more or less consistently, a Damn Lot(tm) of randomized testing (and preferably under different compilers) is necessary. As a result, last week I found myself in a search for a cheap Linux box to run my randomized tests on.
Is “server for 8ドル/year” === “too good to be true”?
Of course, I could go to Linode or DigitalOcean, and get a box-with-1G-RAM for 5ドル/month (and box-with-2G-RAM for 10ドル/month). However, before doing so, I Googled for “cheap Linux server”, and got to lowendbox.com; there, I found a “special” (~=”not available from vendor site home page”) deal from WootHosting (NB: this is not a link to the deal, as the special might already be over, but feel free to look for it on lowendbox).
The deal said it is a box-with-1G-RAM for 8ドル/YEAR…
[画像:Wtf hare:]“My first reaction was 'hey, it is too good to be true'.My first reaction was “hey, it is too good to be true”. However, as this is a box which is certainly not mission-critical, and the money-to-risk was rather minor, I decided to give it a try1 – and to share the whatever-experience-I’ll-have on this blog.
So, let’s the comparison between WootHosting’s ultra-cheap special deal, and Linode/DO begin! Note that WootHosting is not the only one out there with such ultra-cheap deals (more can be found on the same lowendbox site) – but it is the one which I stumbled upon, so it is the one I will speak about.
1 though as mentioned below, I went on a shopping spree and upgraded it to 2x vCPUs and 2G of RAM, so the whole thing costed me whopping 17ドル/year
Woot vs Linode/DO: Pricing
First, let’s compare pricing:
| Linode |
Digital Ocean |
WootHosting |
Linode-or-DO / WootHosting |
| 1x vCPU, 1G RAM |
5ドル/month (=60ドル/year) |
5ドル/month (=60ドル/year) |
8ドル/year |
7.5x |
| 1x vCPU, 2G RAM |
10ドル/month (120ドル/year) |
10ドル/month (120ドル/year) |
15ドル/year2 |
8x |
Very obviously, WootHosting has won this round hands down.
2 17ドル/year with 2x vCPU – and this is what I settled for
Setup
Payment and setup with Woot went smoothly. The only issue was that they didn’t add my “addons” (those upgrades to 2x vCPU and 2G RAM) automatically – but they mentioned in their e-mail that I should contact their support to get addons activated, and after I wrote the e-mail – they activated it in 3 minutes.3
Oh, and a funny observation –
RAM and CPU were added without reboot
4
Not that it is really useful – but I indeed found it rather interesting (last time I’ve seen such dynamic expansion, was under Stratus VOS on a unkillable box costing about half a million bucks, so finding it on the opposite side of price spectrum was rather entertaining <wink />).
After the setup, SSH credentials were sent to me by e-mail, which is convenient, though security-wise you should remember to change the password outright.
3 Having had lots of experience with hosters during my career – I have to say that it was Really Good(tm) even by the-best-hoster-standards
4 most likely – via “hotplug” feature of OpenVZ
Experience
Now, to the most interesting part – experience. I don’t have much experience with Linode, but I have LOTS of experience with remote server boxes, and (what’s more important now) quite a bit of experience with DigitalOcean. Here go my observations about Woot so far (and probably, quite a few of them will apply to other OpenVZ-based ultra-cheap hosters):
- OpenVZ ...OpenVZ uses a single patched Linux kernel and therefore can run only Linux. All OpenVZ containers share the same architecture and kernel version.— Wikipedia —Woot uses OpenVZ as their virtualization technology. I won’t go into details, but the most easily-observable thing is that as OpenVZ containers share the same kernel, it means that we CANNOT upgrade kernel of our otherwise-separate install.
- Kernels available on Woot, are rather old, and therefore the newest Debian-like distro I was able to find with there, was Ubuntu 16.04.
- Not that it was a problem per se – but as the whole ithare::obf is about C++17 – it meant that I had to spend some time looking for newer-compiler-packages-for-Ubuntu-16.04 (and, as noted below, compiling from source is not an option at least for Clang <sad-face />).
- This, in turn, required me to install newer glibc – which complained about older-kernel, but apparently works at least for that-very-limited-use-I-need-from-it. <phew />
- The whole thing feels significantly less responsive than normal remote server or DigitalOcean box (~=”there is enough delay to feel ‘it is lagging’, though most of the time it is within 0.3 seconds or so”). Again, not a big deal for running many-hour loads – but can be mildly-irritating if trying to patch your code right there. Still, was good enough for my purposes.
- CPU-wise, Woot’s box performed pretty well (about 20-30% slower than DO’s box).
- However, as soon as the disk becomes involved – DO’s SSD started to dominate (and for compile of large projects with lots of small files, speeds could differ by 3-5x).
- For this package by Woot, I don’t think there is an option to upgrade it beyond 2G RAM. Which rules out things such as compiling-clang-from-source <sad-face />.
- OTOH, I found on a real-world case that OpenVZ’s 2G are indeed larger than KVM’s 2G (KVM is virtualization used by DO).
- It should be so in theory – just because kernel’s memory is not a part of OpenVZ’s memory allocation, but is a part of KVM memory allocation.
- I observed it in practice, when the same test (under the same compiler) was successfully compiled under Woot’s-box-with-OpenVZ-and-2G-RAM, but ran out of memory and failed under DO’s-box-with-KVM-and-2G-RAM.
Summary
[画像:Hare with smiley sign:]“So far, I am satisfied with my experience with Woot's ultra-cheap box; for my purposes (CPU-bound non-time-critical testing) it is good enough - and is darn cheap <smile />.So far, I am satisfied with my experience with Woot’s ultra-cheap box; for my purposes (CPU-bound non-time-critical testing) it is good enough – and is darn cheap <smile />.
Overall, IMO, such ultra-cheap OpenVZ-based deals can be interesting, provided that:
- price difference is big enough
- the whole thing is NOT mission-critical in any way
- there is no need to upgrade kernel
- responsiveness is NOT an issue5
- disk access speeds are not too important
5 not sure whether this issue is specific to Woot, or characteristic for all the OpenVZ-based boxes
Acknowledgement
Cartoons by Sergey GordeevIRL from Gordeev Animation Graphics, Prague.