- It feels like a huge over-engineering to implement CI at home.
- What would you integrate anyway?
- Just why?
Has science gone too far? It might look so, because:
Well let me explain my reasons.
As I've mentioned before, I'm using HP Microserver Gen8 as a small home NAS. There is a lot of stuff stored there, but the primary reason why I actually started using NAS (back then slow, but hackable D-link DNS-323) was to store my photo collection. With ZFS, mirrored drives and extra backup to off-site location, the data on it should be reasonably safe, right? However that's not all that useful if most of the recent photos reside on the SD card inside the camera on in the case somewhere, just because I didn't have time to copy them to the NAS yet. So what can we do about it if we have 15 minutes to spare? Let's automate it a bit!
It all started with tripped breaker. In fact it tripped multiple times before I got home. Luckilly the spinning rust drives with data survived that without any issues, but the flash drive didn't. So with system FUBAR and some (little) time on my hands, there's only one thing to do - upgrade.
Chances are, you never heard about Xymon (formely Hobbit), so let me give you some idea. It's actually pretty decent monitoring system - if you still live in 90s. :D But hey, let's give credit where it's due, compared to other systems at that time, it was reasonably fast, has quite easy to understand configuration, comes with many standard checks out of the box and comes with a web interface. Probably that's why some people still use it to this day.
In our company it's one of those legacy systems, that we need to replace, so as a first step, let's see if we can get some of the data out while we're still using it.
So I've ended with this ZFS and Docker combination on my home storage some time ago. I use ZFS on Linux to safely store data and I use Docker to run services like samba, plex, owncloud, and others on top of that data.
I've been using devicemapper on top of ZFS and it was mostly good. Every now and then I had this strange issue of layer not being available while starting container, (as if docker tried to spin up the container before having the storage ready for it) just re-running the container solved the issue. I've never seen this at work, where we use Docker in production quite a lot and in my case it was transparently handled by upstart so I've just assumed the combination of devicemapper and ZFS caused these. Besides that I was quite happy with the whole system.
Recently I was wondering if there was some progress on the ZFS storage backend and I was pleasantly surpriset, that this is actually built in sice couple versions ago. (how did I miss that, I have no idea) So let's try it?