Skip to content

A mono repository for my homelab infrastructure and Kubernetes cluster which adheres to Infrastructure as Code (IaC) and GitOps practices where possible

License

Notifications You must be signed in to change notification settings

oscaromeu/home-ops

Repository files navigation

🏡 🧪 Home Lab

📖 Overview

This mono repository houses the infrastructure for my homelab. I try to adhere to Infrastructure as Code (IaC) and GitOps practices using tools like Ansible, Terraform, Kubernetes, Flux, Renovate and GitHub Actions.

⛵ How to get started

There is a template over at onedr0p/flux-cluster-template if you want to try and follow along with some of the practices I use here.

🎨 Cluster components

  • actions-runner-controller: Self-hosted Github runners
  • cert-manager: Creates SSL certificates for services in my k3s cluster.
  • cilium: Internal Kubernetes networking plugin.
  • external-dns: Automatically manages DNS records from my cluster in a cloud DNS provider.
  • external-secrets: Managed Kubernetes secrets using Doppler.
  • ingress-nginx: Ingress controller to expose HTTP traffic to pods over DNS.
  • Rook: Distributed block storage for persistent storage.
  • sops: Managed secrets for Kubernetes, Ansible and Terraform which are commited to Git.
  • volsync and snapscheduler: Backup and recovery of persistent volume claims.

... and more!

🗄️ Hardware

Production Nodes

Device Count Specs OS Purpose
MinisForum um350 1 RAM 32GB
M.2 SSD 500GB
HDD SSD 500GB
Ubuntu 22.04.4 LTS Control Plane
MinisForum um350 1 RAM 32GB
M.2 SSD 500GB
HDD SSD 500GB
Ubuntu 22.04.4 LTS Data Plane
Minisforum um560 1 RAM 32GB
M.2 SSD 1TB
HDD SSD 500GB
Ubuntu 22.04.4 LTS Data Plane

Staging Nodes

Device Count Specs OS Purpose
Turing Pi RK1 3 RAM 16GB
M.2 SSD 500GB
Ubuntu 22.04 LTS Development & Staging

Infrastructure

Device Count Specs OS Purpose
Turing Pi RK1 1 RAM 16GB
M.2 SSD 500GB
HDD 1TB
- DNS Server
Turing Pi Board V2 1 - - -
Unifi UDM Pro 1 - - 10Gb Core Switch + Router + FW
Unifi Lite 8 PoE 1 - - Switch
Mac Mini 1 RAM 8GB
M.2 SSD 256GB
- TBD

📜 Changelog

See my awful commit main history and legacy history

🤝  Gratitude and thanks

Thanks all the people of Home Operations Discord community who put a lot of effort and donate their time to the community.

🔏 License

See LICENSE v.g WTF License