#!/bin/coding

I'm Cameron — IT Systems Analyst at Redwire Defense & Space on the Central Coast of California. I manage the firewalls, networks, servers, and ZScaler infrastructure that keeps engineers doing their jobs without noticing the stack underneath. On the side I consult for local businesses — helping places like Adelaida Winery keep their networks and servers running.

Outside of work I'm in the homelab. What started as gaming-servers.net has grown into a K3s cluster running a dozen services — the biggest being ipinfo.app, an IP intelligence suite that has handled over three billion requests across ASN lookup, proxy detection, and geo tools. I also build and maintain real estate platforms, music preservation archives, cosmetologist portfolios, and whatever else sounds interesting.

When I'm away from the keyboard I'm out in nature — hiking trails, taking in views, and finding the kind of quiet that only exists outside. I hunt down craft beers and wines across the Central Coast, and burn vacation club points on trips to Hawaii and Bend, Oregon — a purchase I'd describe as equally stupid and awesome.

Recent Posts

All posts →

The Engine Powers Down: Retiring enjen.net

I named it enjen because I wanted an engine — one domain that would run a whole fleet of little apps. Then domains got cheap, the good apps grew up and moved into their own homes, and the engine slowly emptied out. Today I'm switching it off. Here's the story, plus a one-box converter that turns any old enjen.net link into its modern equivalent.

Upgrading My Main Kubernetes Cluster, Top to Bottom

I spent the weekend upgrading phoenix, my main k3s cluster, from the ground up: Debian 12 to 13, k3s 1.30 all the way to 1.34, kube-vip and MetalLB off their original versions, and finally Flux 2.9. One node at a time, apps staying up the whole time. Mostly.

Two Hundred and Fifty

America turns 250 today, and my small town marked it the way it marks everything — a giant flag hung off a crane, a pair of old Navy trainers over Main Street, and a whole town in lawn chairs. A few photos from the Semiquincentennial.

When iowait Lies: A Proxmox 9, QEMU 11, and Pinned-Kernel Postmortem

My hypervisor sat at 40% iowait for days and survived every reboot. The SSDs were healthy, the RAID controller was healthy, memory was idle — and the real cause was a kernel I'd pinned during a major upgrade and never moved off. A walk from iostat through PSI to proxmox-boot-tool, and why a 2026 QEMU on a 2024 kernel manufactures phantom iowait.

Caddy 2.11.4, Rebuilt for Every DNS Provider

Caddy 2.11.4 landed on June 3rd — a security-heavy patch release with four hardening fixes and a pile of TLS and reverse-proxy bugfixes. Here's what changed, the one breaking caveat worth reading before you upgrade, and how I rebuild it as 47 ready-to-pull DNS-provider images for DNS-01 ACME.