Filip Chabik

DevOps Engineer, Husband & Dad.

Cracks are showing in Enterprise Open Source's foundations →

Jeff Geerling, writes on his blog:

Anyways, there’s more nuance to the entire debacle, but the main thing this points to is the fact that while increasing revenue via licensing might not be the only motive Red Hat had in this move, it was certainly a major factor. And the downfall of Scientific Linux and CentOS makes those who’ve built their careers or companies around Red Hat compatibility without paying the subscription fees nervous.

I was quite surprised when Red Hat “adopted” CentOS – it seemed to me that they were always hostile and against the latter to really succeed as it was, well, not ideal for their business model. But Red Hat did (and still does) so many good things for the open source community in general and GNU/Linux specifically that it was fine to turn a blind eye. Personally I couldn’t care less, Red Hat or its derivatives was never my first choice and my go-to distribution. Regardless of this all, after acquistion by IBM, I lost hope that there will be anything good coming out of it as a result. I worked for IBM and, pretty much, owe to them my entire career. But I also know that the technical and enterprise/business side of this company are two different worlds – quite often opposed to each other.

Well, Elastic dealt with it by switching to a new license, which many in the FOSS, or Free and Open Source Software Community, have decried as not being truly open source.

Didn’t this entire relicensing drama start with MongoDB? Or was it Redis? Or all of these? Does any of this actually matter? The point is that the large-scale cloud providers and AWS especially are breaking their part of the deal. The real problem though is different: there is no deal. There never was one. Either you are open source and free and you allow for a free ride or you are not and you don’t. That’s it. Relicensing and trying to play the open source card is simply dishonest, even if it’s only to help with the business side of things – and believe me, I’m first in line to cheer for open source success.

PPAs Updates →

bpftrace 0.11.4, bpfcc 0.18.0 with libbpf 0.3.0 for bionic, focal & groovy are now available from my PPA. It’s been a while since the last update, so here’s how to add it:

sudo add-apt-repository ppa:hadret/bpftrace
sudo apt-get update
sudo apt-get install bpftrace bpfcc

I finally moved both builds to git-based workflow so updates should be easier and faster on the way forward.

NGINX Extended Mainline →

In the last update I mentioned support for the mainline branch of NGINX. It’s been a rather flawless run till version 1.19.6 came along, touched upstreams configuration and broke a lot of third-party modules available in my Extended edition. At this point it’s hard for me to estimate how much effort it will be to bring it back to working state, so version 1.19.5 will stay in the PPA as the latest available for now. I’ll push an update regarding this topic in the upcoming future so be sure to follow me on Twitter.

Bastille 0.8.20210101 →

I like FreeBSD’s container implementation with jails. It’s one of these clean, solid solutions that simply work for years now and for many more to come. That said, there’s always space for improvement and this case is not any different. I started with iocage as it simplified a lot of headaches with base jails and VNET setup I had in the past. There are other solutions out there though that I keep an eye on – bastille and pot in particular. The latter seems to be relatively new kid on the block, but it already provides unique feature with support for nomad. The former is pushing in the direction I really like.

From the new features I’m mostly excited of is definitely support of the CURRENT jails. Granted, the host must be on the same or newer version but it’s still there – I had to do a lot of juggling with iocage to make it fly, whereas here, it just works. I think it’s safe to say that with the current templates implementation and template arguments (within Bastillefile) are making Bastille the closest thing to Docker in the FreeBSD world.

NUC Temperature Monitoring w/ Prometheus on FreeBSD

18th December 2020

Recently, after I switched to FreeBSD on my server, I decided to pay more attention to the temperatures. As I’m using Prometheus with node_exporter the CPU temperatures are exported as node_cpu_temperature_celsius automatically. They didn’t, however, show any values (only NULL). It turned out that the special device driver has to be loaded first: coretemp. In order to enable it, it has be added to /boot/loader.conf:

echo 'coretemp_load="YES"' >> /boot/loader.conf

dnscontrol 3.5.0 →

dnscontrol has got to be one of my most beloved “DevOps” tools out there. Possibility of describing DNS in a config file (even though, for whatever reason, javascript was chosen for syntax) gives me huge peace of mind. It can integrate with plethora of different providers through their APIs and almost every major release brings even more of them. Ever since I learned about its existence I use it all the time, everywhere I go. Just smash it into git, ensure some review takes place and roll it out, everything fully automated through CI piepelines. If that doesn’t sound beautiful I don’t know what does 🤷🏻‍♂️