Skip to content

neilmfrench/homelab-prod

Repository files navigation

k3s talos GitHub Last Commit

HomeLab Kubernetes Cluster with Talos and k3s

Welcome to the IaC repository for my personal homelab Kubernetes clusters! I have 3 homelab clusters - 1 "on-prem" (sitting on a side table next to my desk) and 2 in Oracle cloud, taking advantage of their extremely generous free tier offerings. All cluster workloads are managed as code using Flux and deployed using Ansible + Terraform.

📁 Repository structure

The Git repository contains the following directories under kubernetes and are ordered below by how Flux will apply them.

📁 kubernetes             # k8s clusters defined as code
├─📁 bootstrap            # bootstrap config, loaded once for cluster creation
├─📁 flux                 # flux, gitops operator, loaded before everything
├─📁 clusters             # cluster config, loaded before 📁 infrastructure and 📁 apps
├─📁 infrastructure       # crucial apps, namespaced dir tree, loaded before 📁 apps
└─📁 apps                 # regular apps, namespaced dir tree, loaded last

💻 Clusters

Cluster Nodes CPU RAM Disks OS Networking Storage
On-prem 4 (3 controlplane, 1 worker) i3 10100T (4C/8T, 3.8 GHz) 32GB
  • 118Gb Intel Optane (OS)
  • 2TB Samsung Enterprise-grade SSD (Ceph cluster)
Talos Cilium Rook-ceph
Oracle Cloud (Phoenix) 4 (3 controlplane, 1 worker) Single core 3.0Ghz ARM64 6GB 50GB Virtual Disk k3s Calico Longhorn
Oracle Cloud (San Jose) 4 (3 controlplane, 1 worker) Single core 3.0Ghz ARM64 6GB 50GB Virtual Disk Talos Cilium OpenEBS Jiva

🔧  Tools

Tool Purpose
go-task A task runner / simpler Make alternative written in Go
sops Encrypts k8s secrets with GnuPG

📖 Read More

Check out my blog for more in-depth arcticles on my Homelab, as well as DevSecOps in general!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages