I Need a Reboot

Problem I was running Kubernetes upgrades with my script (kubify) but they were hanging on random machines. Not always the same one. Running 2023-06-22 00:37:07,984 kubify.py:628 DEBUG running ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -t -t ubuntu@10.10.2.140 sudo apt-mark unhold kubeadm && sudo apt update && sudo apt install -y kubeadm=1.25.11-00 && sudo apt-mark hold kubeadm Always to a hang. Never on the same machine. Looking the machine in question, I found this output in ps ...

June 22, 2023 · 3 min · map[email:jforman@gmail.com name:Jeffrey Forman]

I Wrote My Own Theme

With none of the free time I have, but with the desire to write more and keep that side of my brain fresh, I tried my hand at making my own Hugo theme. Why? I have drifted between themes over the years, never quite liking anything enough to keep it. Sometimes the content area was too narrow, or the fonts didn’t seem easy enough on my eyes. With things like Bootstrap making the CSS side of things supposedly easy and lots of examples on Github, I set off. ...

February 18, 2023 · 1 min · map[email:jforman@gmail.com name:Jeffrey Forman]

Backing up Home Assistant Configs to Git

Objective As the title of this post says, I want to back up my Home Assistant (HA) configs to Git, so that in case of a disaster (if I I mistakenly delete the config folder), I can recover. Note: Disaster recovery is my 2023 personal tech resolution. But that’s besides the point. Howto Create an SSH key to be used for commiting your cofigs inside the HA VM. I did this by using the ‘Terminal’ plugin within HA and running the command ...

December 31, 2022 · 2 min · map[email:jforman@gmail.com name:Jeffrey Forman]

Which Ubuntu Release Apt Repo

Problem Statement Ubuntu and Linux Mint use different values for their release codenames, even though they both use Ubuntu apt repositories. When trying to install docker using Docker’s instructions, the Linux Mint invocation failed because there is no jammy codename of Docker binaries. Goal Make an Ansible playbook like the following that works for both Ubuntu and Linux Mint that handles the release codename correctly. - name: add docker repository sources entry apt_repository: repo: deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu {{ RELEASE_CODENAME }} stable filename: docker How to get it done. First, I needed a way to get the release codename from Linux Mint that matches Ubuntu. ...

December 24, 2022 · 2 min · map[email:jforman@gmail.com name:Jeffrey Forman]

Pihole: A Postmortem

I made the mistake of upgrading my home Kubernetes cluster, expecting that all the move-pods-around goodness would just work and there would be no downtime of anything. Well hope is not a strategy. Here is my postmortem of the event following the Google SRE book post mortem template. Status Mitigated, but not resolved. Summary A Kubernetes upgrade across a set of worker hosts downed the only instance of pi-hole which runs on my network. The upgrade for the worker node runniong pi-hole was stuck in between pods being down, and them being brought back up. The upgrade could not continue until the worker node was rebooted, and the upgrade restarted and successfully completed. ...

October 6, 2022 · 3 min · map[email:jforman@gmail.com name:Jeffrey Forman]