Like the painter that is behind on his yearly painting maintenance, I have been behind on my home IT. Not that I don’t try new stuff. I just don’t properly get around to do the setups right. It’s a 5pm to 9am job doing home IT. That means it has to compete with all the other stuff. Familylife, bandpractise , seeing friends and couching out some binge watchable streaming content. So interruption is frequent and time and energy to work on it is limited. Resulting into half-finished projects which become harder to pickup over time. You get alienated from your own badly documented code easily. So time to set this up a better way.
Good Practise 1 : Document your work And just becasue I personaly believe that sharing is the new way of proper documenting things I use this blog also as a final version of documentation.
Homelab setup and Hardware
The site your reading runs from my own house on the same infrasturcture as I use to back-up my fotos and stream media. It’s just runs a Synology DS412+ it has 3x 2TB in a “Synology Hybrid Raid” which gives me 3.48TB storage. Preformace has been boosted just a little by adding a 30GB SSD as SSD Cache and the factory only 1GB memory has been replaced by a 2GB memory. The whole systems is pretty solid and doesn’t have a large energy foot print to keep it running 24x7. The Synology is capable of running loads of apps directly on the Synology pacakge center.
I bought this synology secondhand for 175,-. The disks where about 75,- each and the memomory upgrade was 30,-. So the total was 175+(3x75)+30 = 430,-. Within budget for a home solution I say. Just to make sure the external preformance of websites running on it stays good, I put those behind Cloudflare
Good Practise 2: Work within your limits This means knowing your budget and your hardware. But don’t be afraid to use cheap services or sometimes free for promotional reasons like cloudflare.
An example project
As you can also see in my 2nd post here I have choosen to write something about Docker and Ansible. Controlling docker containers is of course a job for an automation framework. Ansible is just my personal jack of all trades in my day-job where I use it for Network automation. I run it from a Virualbox vitual machine that runs Ansible. I run it form a VM is just because I haven’t found out yet where to go with my CI/CD pipelines within the setup of my homelab. Jenkins, GitLab, Ansible, Dockerswarm, webhooks for code changes and of course howto bootstrap if you want to run also Ansible itself in a container for example. More fun stuff to find out some other day. (Probably Part2 or Part3).
Good Practise 3 : Setup a structure todos and ideas like a backlog I have chosen Clubhouse as a storyboard haven’t fully tested it but so far works great