Homelab or cloud? My take after running a cluster at home

Created at 2026-10-29 Updated at 2026-10-29 - 5 min. read Tag Raspberry Pi / Kubernetes / Homelab / k3s / Cloud

I get asked this a lot. Usually by someone at work, usually half-joking: “why are you running servers in your house when AWS exists?”

Fair. I use the cloud every day at my job and I have no beef with it. But I also have a little k3s cluster at home. An old PC called pc1, plus a few Raspberry Pis (rpi4, rpi7, rpi8). There was an rpi0 too until recently. More on that later, because pulling it out ended up teaching me more than adding it ever did.

This isn’t going to be a balanced comparison. I’m biased. I’ll try to be fair about it anyway.

What the cloud gets right

A lot, honestly.

You want 100 cores for two hours? Click, done, and then give them back. You don’t think about cooling or power or a disk dying at 2am, because that’s somebody else’s job. If what you care about is the app and not the box it runs on, that’s a pretty great deal.

Where it goes wrong is mostly money. Everyone has a story about the instance they forgot to shut down. And egress! Putting data in is cheap. Taking it back out costs you, and nobody reads that part of the pricing page until it’s too late.

Lock-in is the slower problem. You don’t decide to get locked in. You just use one managed queue. Then a few Lambdas. Then some IAM setup that only makes sense on that one provider. A year later, moving is a project nobody wants.

The thing that actually bugs me, though, is what you learn. The cloud teaches you the cloud. Which buttons, which services, which flags. Useful stuff! But you can go years without knowing what’s really happening under it.

Why I keep the homelab

At home nobody’s got my back. I’m the network guy, the storage guy, and the one on call when something falls over.

That’s kind of the point though.

Setting up Longhorn across my nodes made me actually understand replicas: where they land, what happens when a node vanishes. Moving Postgres and Mattermost onto the cluster made me take backups seriously, since there’s no magic restore button someone else keeps working. Everything goes through GitOps, so every dumb mistake I’ve made is right there in the git log. Humbling. Also really useful.

Then the rpi0. It just couldn’t keep up with what I was asking it to do, and it was causing more trouble than it was worth, so it had to go. Sounds simple. It wasn’t. Draining a node when you’ve got stateful stuff running on it is where you find out which of your “eh, it’ll just reschedule” assumptions were true. A few weren’t. In the cloud I’d have terminated the instance and moved on, and I’d have learned nothing.

It’s not all great. You pay for hardware before you’ve run anything. Something always needs updating. SD cards die. Power blips happen at the worst time. And it lives in your house, so it’s taking up space and putting out heat and some noise. A few Pis on a shelf are easy to live with. A full rack of old enterprise gear is not, and I’d think hard before going down that road.

But once it’s bought, the bill is mostly electricity. No surprises at the end of the month. I like that more than I expected to.

Quick comparison

Cloud Homelab
Upfront cost ~nothing Hardware first
Scaling Instant Whenever the parts show up
Control What the provider lets you do All of it
Monthly cost Depends on usage, can spike Power + internet
You learn Provider services and tooling Networking, storage, Linux, the whole thing

So, which one?

Depends what you want out of it.

Working on something for your job, with a deadline? Cloud. Need it reachable from anywhere, or need to spin up and tear down a lot? Cloud. Don’t want to spend money on hardware yet? Also cloud.

Want to understand how this stuff actually works, and you’re OK with things breaking? Homelab. Especially if you’ll stick with it for a while.

Me, I use both, and I think most people who are into this end up there. Things that need to be public and reliable can go in the cloud. The stuff I’m learning on, or just want to own myself (cluster, chat, database), stays at home.

If you’re on the fence: start small. One Pi or a cheap used mini PC. Don’t buy a rack. Pick one thing you want to run, get it running, and then fix it when it breaks. It will break. That’s honestly the fun part.

Site by Ashutosh Kumar Singh using Hexo & Random