SkillAgentSearch skills...

Home

My homelab baremetal-to-k8s media and "do anything" server. Codified and GitOpsified

Install / Use

/learn @ProfMoo/Home
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<!-- markdownlint-disable MD041 --> <p align="center"> <img src="./docs/repo.png" alt="diagram" width="250" height="250"> </p> <div align="center"> </div> <div align="center">

Moo's Pasture

A onedr0p home-ops inspired project, with some ProfMoo sprinkled in.

</div> <div align="center">

Talos   Kubernetes   Flux   Renovate

</div> <div align="center">

Age-Days   Uptime-Days   Node-Count   Pod-Count   CPU-Usage   Memory-Usage   Power-Usage   Alerts

</div>

Overview

A mono-repository for my homelab Kubernetes cluster. I strictly adhere to Infrastructure as Code (IaC) and GitOps practices using tools like Kubernetes, Terraform, Talos, Flux, Renovate, and GitHub Actions.

<p align="center"> <img src="./docs/diagram.drawio.png" alt="diagram" width="500" height="500"> </p>

Infrastructure

I use Talos, Terraform, and Proxmox to spin up Kubernetes in a GitOps fashion in this directory.

Proxmox, a VM-management technology, is used to spin up VMs on the compute bare-metal rack servers. These raw VMs are bootstrapped via Terraform with Talos configuration(s) that create a functional Kubernetes cluster with the initial cluster components (such as Flux) already deployed.

Kubernetes

I configure Kubernetes with GitOps via Flux. The Flux controllers scans the kubernetes directory for kustomization files to apply to the cluster.

Hardware

<details> <summary>Click here to see my server rack</summary> <img src="./docs/rack.jpeg" align="center" width="550px" alt="rack" /> </details>

From top to bottom...

| Device | Cores | OS Disk Size | Data Disk Size | Ram | OS | Function | |-----------------------------|-----|--------------|---------------------------------|------|---------------|-------------------------| | UniFi UDM Pro | - | - | - | - | - | Router & Gateway | | UniFi USW 24 PoE | - | - | - | - | - | Switch | | UniFi Patch Panel | - | - | - | - | - | Patch Panel | | Dell PowerEdge R540 | 32 | 1x256GB SSD | 2x256GB SSD (local) / 1x256GB SSD (rook-ceph) | 128GB | Proxmox | Compute | | SuperMicro SYS-6028U-TR4T+ | 28 | 1x256GB SSD | 2x256GB SSD (local) / 1x256GB SSD (rook-ceph) | 256GB | Proxmox | Compute | | Dell PowerEdge R530 | 20 | 1x256GB SSD | 2x256GB SSD (local) / 1x256GB SSD (rook-ceph) | 156GB | Proxmox | Compute | | Old Custom Build | 4 | 1x2TB HDD | 1x2TB HDD | 16GB | Proxmox | Compute | | TrueNas Mini R | 8 | Internal SATA DOMs | 6x22TB HDD | 32GB | TrueNAS Scale | Storage | | UniFi USP PDU Pro | - | - | - | - | - | PDU | | Eaton 5PX1500RT - 1500VA | - | - | - | - | - | UPS |


Inspirations

The home-operations Discord group has been a huge inspiration for this repository. In particular, the repos by onedr0p, bjw-s, and buroa.

One major change from the typical home-operations setup is that I configured Kubernetes inside VMs instead of bare-metal. For that modification, I drew great inspiration from the two repos here and here.

Local Dev

Some binaries needed for local development: claude talosctl kubectl flux terraform docker yamlfmt markdownlint-cli2 hadolint shfmt, minijinja-cli, gum

Related Skills

View on GitHub
GitHub Stars22
CategoryDevelopment
Updated12h ago
Forks2

Languages

YAML

Security Score

95/100

Audited on Apr 6, 2026

No findings