Clouds below my floor
Building a little datacenter in my basement
At my home I have this crazy fast optical internet connection. It is a 600MB up and down fibre connection which directly arrives in my home (no copper cables involved). It's like a private internet highway. Reason enough to find out if I could do something to make better use of all this speedy fiber galore...
I had some spare parts left from killing my office LAN last month. You can read about it here. It left me some shielded network cables, some power supplies and a power efficient server. All the ingredients for some do-it-yourself-datacenter-engineering.
The server started its life originally as a power efficient (and silent) desktop computer. I took it apart to remove the optical drive to make room for extra memory and harddisks. It now has two drives of 8TB each, totalling a whopping 16TB of storage.
The computer runs Debian GNU/Linux - the same software that my corporate servers run in the (real) datacenter. This is great because it means that I can use the very same software as a normal server could run. (Like some good native HTTP, SFTP, SSH and RSYNC action!)
Under the floor
Ideally I wanted the hardware to be out of sight so I went looking in the house for a suitable place. Computer hardware works best in dry and cool environments. I figured the space under my house matched these conditions.
It is easily accessible by a hatch in the floor near the front door. This space is meant as a buffer between the foundation and the house. At some houses this space is not dry, but judging by the amounts of utterly dry dust I figured that this place hasn't seen any moisture in years.
Just to be sure though, I took some concrete tiles and made a little tower to lift the electronics from the ground. After some more efforts I managed to get a power and network cable into my newly arranged little datacenter.
If you're planning on doing this yourself, make sure the place is dry. If in doubt you can get an humidity sensor for a few euro's at the local department store. Or find one you can connect using USB to the server itself. Whatever the case: electronics and water usually don't go well together...
The server connects to the router using a 1GB shielded CAT6 ethernet cable. The Apple Airport Extreme router is connected to the glass fiber modem using a very short, CAT6 cable. After powering on the server and some router configuration I was ready for a little test drive.
Pinging google.com is lightning fast, averaging at 3.4 milliseconds. Then I decided to see what speeds I can achieve when pushing some data through the wire. For this test I used rsync to copy over a bunch of files. The speed is amazing, maxing out at in excess of 230 megabit - which I assume is because of the physical limits of my harddisks and some software overhead because of the encryption I use.
In just one hour I copied about 104 gigabytes of data. That's insanely fast, datacenter fast. If I would let it steam along, I could transfer 2496 gigabytes per day and an astonishing 75TB per month.
At some point I even contacted the internet provider, monitoring the datacenter, to let them know that the spike in traffic was not an error or DDOS attack... it was me and my little server. :-) They saw the traffic and thanked me for the explanation.
How about actually using this? I decided to use my newly connected server as an additional backup: making copies of production files and databases from the real servers. While cloud computing has become cheaper over the past few years, storing big data is still expensive (€50 per month for just 10TB).
I would never do any actual production computing from a setup like this. The datacenter is much more suitable for this because of it provides an unmatched redundancy in power and connectivity. But for non-critical operations it works great!
Then there I have it: clouds below my floor.