I’ve had entirely too much fun with Ansible this weekend. Looking forward to drastically improving how I manage my servers!
Two weeks ago, the VPS that hosts this site moved to a machine that had been patched for the Spectre vulnerabilities. Immediately, I began receiving warnings about high load, and these alerts continued unabated for over a week. I tried moving services to other hosts, and I reduced the resources allocated to
php-fpm, all to no avail.
As I continued to monitor and debug the situation,
fail2ban regularly appeared among the top resource consumers, but I didn’t think much of it;
fail2ban has always been a voracious resource user, but it’s an indispensable tool, so removing it wasn’t an option.
When using DHCP, most routers allow individual IPv4 addresses to be assigned to specific devices. In my case, I do so for my Raspberry Pis, making Home Assistant accessible at a domain name rather than trying to remember an IP address.Continue reading Why routers don’t support IPv6 reservations
Previously, I used
curl to trigger
dyndnsd updates via my Raspberry Pis. This worked well for many months, but lacked IPv6 support as
dyndnsd was interpreting my IP from the request. Fortunately, the daemon accepts parameters for IPv4 and IPv6 addresses, so I wrote a Go program to handle regular updates. It still relies on cron, but passes explicit IP values and moves all options to a configuration file.
The client is available from https://git.ethitter.com/open-source/dyndnsd-client. I don't provide built binaries yet, but I'd like to soon.
If your ISP doesn't support IPv6, or if you run multiple daemons on the same network, options are available for your situation. Take a look at the readme for more.
Hopefully someone else finds this useful!
Yesterday, after moving my GitLab instance, I noticed that the public clone of my Home Assistant configurations was a bit stale, so I decided that it was time to refresh.
In so doing, I also discovered that I was a few releases behind (three, to be exact), and that those intervening releases included several breaking changes. Fortunately, updating my configurations to support Home Assistant 0.57.3 also resolved several longstanding bugs.Continue reading Another Home Assistant Update
After a few successful months of testing Packet.net, I've once again moved
git.ethitter.com. The decision was purely financial–my GitLab instance doesn't receive enough traffic to warrant Packet.net's pricing. As far as reliability and value were concerned, Packet.net was excellent. I would've appreciated built-in backups, but otherwise, I have no complaints about the service.
It will likely come as little surprise that git.ethitter.com is back on Linode. Compared to Digital Ocean, Linode is slightly more-generous with its resources, and GitLab wants all the resources it can get.
The migration itself was quite easy, with most of the time was spent preparing the server; GitLab's backup/restore process did most of the hard work. Now I just have to finish the ancillary setup, like monitoring.
Friday was my last day at Automattic. Leaving was one of the more-difficult decisions I’ve ever made, but I was ready for a new challenge; regardless, I never thought this day would come. I will dearly miss my former colleagues, and it will take some time to adjust to not being an Automattician.
Since I made my announcement, the question has been, “What’s next?”
Well, I’m beyond excited to announce that I joined Alley Interactive as a Principal Software Developer. Being a VIP Featured Partner, I’ve reviewed and appreciated Alley’s work from Automattic’s side for some time; I’ve also known several of their staff for a few years, and working with them seemed a natural fit.
Not being one to rest, I started at Alley yesterday. 🎉
Almost exactly four years after I first installed GitLab, I’ve migrated my instance to a new host, and in the process, finally switched to their “omnibus” install.
My well-documented impatience extends to my mobile device, an unlocked Nexus 6 on Verizon. While I generally received Google’s updates in short order, this was not always the case. To my relief, Google releases the same updates carriers deliver to their subscribers, allowing me to update my device at my convenience.
Continue reading Impatiently updating my Nexus 6