Cloud onder mijn vloer: Een klein datacenter bouwen in mijn kelder

31 aug. 2017

Thuis heb ik deze waanzinnig snelle optische internetverbinding. Het is een 600MB up en down glasvezelverbinding die rechtstreeks mijn huis binnenkomt (geen koperkabels aan te pas). Het is als een privé internet snelweg. Reden genoeg om uit te zoeken of ik er iets mee kon doen om al deze snelle glasvezelpracht beter te benutten...

Hardware

Ik had nog wat reserveonderdelen over van het slopen van mijn kantoor LAN vorige maand. Je kunt er hier over lezen. Het leverde me wat afgeschermde netwerkkabels, wat voedingen en een energiezuinige server op. Alle ingrediënten voor wat doe-het-zelf-datacenter-engineering.

De server begon zijn leven oorspronkelijk als een energiezuinige (en stille) desktopcomputer. Ik heb hem uit elkaar gehaald om de optische drive te verwijderen om ruimte te maken voor extra geheugen en harde schijven. Hij heeft nu twee schijven van elk 8TB, wat neerkomt op een flinke 16TB aan opslag.

Software

De computer draait op Debian GNU/Linux - dezelfde software die mijn bedrijfsservers draaien in het (echte) datacenter. Dit is geweldig omdat het betekent dat ik dezelfde software kan gebruiken als een normale server zou kunnen draaien. (Zoals wat goede native HTTP, SFTP, SSH en RSYNC actie!)

Onder de vloer

Idealiter wilde ik de hardware uit het zicht hebben, dus ging ik in huis op zoek naar een geschikte plek. Computerhardware werkt het beste in droge en koele omgevingen. Ik bedacht me dat de ruimte onder mijn huis aan deze voorwaarden voldeed.

Via een luik bij mijn voordeur heb ik toegang tot de ruimte onder de vloer.

Het is gemakkelijk toegankelijk via een luik in de vloer bij de voordeur. Deze ruimte is bedoeld als buffer tussen de fundering en het huis. Bij sommige huizen is deze ruimte niet droog, maar afgaande op de hoeveelheden kurkdroog stof concludeerde ik dat deze plek al jaren geen vocht had gezien.

De aangepaste pc staat op een paar betonnen tegels en is verbonden met internet

Voor de zekerheid nam ik toch wat betontegels en maakte een klein torentje om de elektronica van de grond te tillen. Na nog wat inspanningen lukte het me om een stroom- en netwerkkabel in mijn nieuw ingerichte kleine datacenter te krijgen.

Als je van plan bent dit zelf te doen, zorg er dan voor dat de plek droog is. In geval van twijfel kun je voor een paar euro een vochtigheidssensor halen bij de plaatselijke bouwmarkt. Of zoek er een die je via USB op de server zelf kunt aansluiten. Hoe dan ook: elektronica en water gaan meestal niet goed samen...

Testen

De server maakt verbinding met de router via een 1GB afgeschermde CAT6 ethernetkabel. De Apple Airport Extreme router is verbonden met het glasvezelmodem met behulp van een zeer korte CAT6-kabel. Na het inschakelen van de server en wat routerconfiguratie was ik klaar voor een kleine testrit.

Een monitor en toetsenbord aangesloten om de systemen te testen

Gemiddeld 3,4 milliseconden ping naar Google. Dat is snel, datacenter-snel.

Pinging google.com is razendsnel, gemiddeld 3,4 milliseconden. Vervolgens besloot ik te kijken welke snelheden ik kan bereiken bij het versturen van wat data door de kabel. Voor deze test gebruikte ik rsync om een aantal bestanden te kopiëren. De snelheid is verbazingwekkend, met een maximum van meer dan 230 megabit - wat ik aanneem vanwege de fysieke limieten van mijn harde schijven en wat software overhead vanwege de encryptie die ik gebruik.

In slechts één uur kopieerde ik ongeveer 104 gigabytes aan data. Dat is waanzinnig snel, datacenter snel. Als ik het zou laten doorgaan, zou ik 2496 gigabytes per dag en een verbluffende 75TB per maand kunnen overzetten.

Op een gegeven moment heb ik zelfs contact opgenomen met de internetprovider, die het datacenter bewaakt, om hen te laten weten dat de piek in het verkeer geen fout of DDOS-aanval was... het was ik en mijn kleine server. :-) Ze zagen het verkeer en bedankten me voor de uitleg.

Grafieken van het verbindingsmonitoringsysteem (van het echte datacenter) laten duidelijk zien wanneer ik mijn kleine server testte

Werkelijk gebruik

Hoe zit het met het daadwerkelijk gebruiken hiervan? Ik besloot mijn nieuw aangesloten server te gebruiken als een extra back-up: kopieën maken van productie bestanden en databases van de echte servers. Hoewel cloud computing de afgelopen jaren goedkoper is geworden, is het opslaan van big data nog steeds duur (€50 per maand voor slechts 10TB).

Ik zou nooit echte productie-computing doen vanuit een dergelijke setup. Het datacenter is daar veel geschikter voor vanwege de ongeëvenaarde redundantie in stroom en connectiviteit. Maar voor niet-kritische operaties werkt het prima!

En daar heb ik het dan: clouds onder mijn vloer.

Clouds onder mijn vloer: mijn kleine kelder datacenter.