Building Multi Architecture Docker Images with buildx

I’ve got a mix of architectures in my basement cluster - some Odroid HC2s that are arm7, some Raspberry Pi 4s that are arm64, and am soon going to add an Intel node as well. It’s more hassle than it’s worth to have to specify different images for the different architectures. I already build my own copies of images, so I decided to start building all my images as multiarchitecture images. ...

June 13, 2020 · 2 min · 241 words · Me

Setting up an ODROID N2

I wanted a machine with more memory to be the master node for my ARM k3s cluster. I had an Odroid N2 with 4GB of RAM, sitting around, so here’s the log of getting it installed and running. ...

March 29, 2020 · 2 min · 290 words · Me

Backing Up the Cluster with Duplicacy

Do not use duplicacy! TL;DR: duplicacy is unusable if you’re serious about backing up your data. Use restic instead! I wanted to ensure any data I put into my ARM k3s cluster is backed up to prevent data loss. I no longer recommend duplicacy. Instead, read my article on restic backups on TrueNas instead. 2025 edit: This post is only here for historical reasons. Do NOT use duplicacy. It does not report backup errors in its exit code. You will have to parse its logs yourself and hope your regex didn’t miss an error condition. And every update, you’ll have to check and make sure it hasn’t changed anything that your regex was catching. Backups are supposed to be something you set up once and ignore other than to do periodic restore tests, and duplicacy fails that simple criteria. ...

September 1, 2019 · 11 min · 2190 words · Me

Trying K3s on ARM, Part 1

Why k3s and not stick with k8s? I wanted to experiment with k3s. They package everything you need in a single binary, don’t package in deprecated parts of k8s, and it works on Intel, ARMv7 and ARM64. It seemed like it’d be a less painful way to runn Kubernetes on my ARM cluster. ...

August 9, 2019 · 4 min · 849 words · Me

Adding a Distributed Filesystem to the Cluster

One of the reasons I set up my cluster was that I’m running out of space on my NAS. I don’t want to buy a whole new chassis, and while I could have put individual file shares on each cluster node, that would be both inconvenient and not provide any data redundancy without a lot of brittle home-rolled hacks to rsync data from node to node. And since distributed file systems are a thing, I’d rather not resort to hacks. ...

June 23, 2019 · 5 min · 1025 words · Me

Parts list for the ARM cluster

I realized I forgot to include a parts list for the cluster in my ARM cluster post (all prices are as of March 3rd, 2019), so here we go. ...

March 1, 2019 · 1 min · 160 words · Me

Getting an ARM kubernetes cluster up and running

I recently decided to set up a Kubernetes cluster in my basement, partly because I’d never set a cluster up from scratch by myself, and partly because my existing NAS was beginning to run out of headroom. ...

February 17, 2019 · 7 min · 1419 words · Me