Skip to content

Latest commit

 

History

7,906 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The Artemis Cluster

... where YAML is law, Renovate never sleeps, and 2am
is just debugging hours.

Talos   Kubernetes   Flux   Renovate

Home-Internet   Status-Page   Alertmanager

Age   Uptime   Nodes   Pods   CPU   Memory   Alerts


📖 Overview

Artemis is my homelab Kubernetes cluster, built on Talos Linux and managed entirely through Git. Three bare-metal control planes, three VM workers (one with a GPU), all reconciled automatically by Flux CD — push to main, it shows up in the cluster.


🗂️ Layout

📁 kubernetes
├── 📁 apps        # Flux-managed applications, one directory per namespace
├── 📁 components  # Reusable Kustomize components (kopiur, zeroscaler, postgres, tinyauth)
└── 📁 flux        # Flux sync entrypoint -> kubernetes/apps

📁 talos
├── 📁 nodes       # Per-node machine config as Jinja2 templates
└── 📁 schematics  # Image schematics — extensions and kernel args per node type

📁 ansible         # Host config for what is not in Kubernetes — atlas, pantheon, the Forgejo LXC
📁 terraform       # OpenTofu — proxmox and unifi stacks

Only kubernetes/ is reconciled by Flux. talos/, ansible/ and terraform/ are run by hand through just.


🔩 Hardware

Device Disk RAM Purpose
3× Lenovo M710q (talos-cp-01/02/03) 256GB NVMe MZVLW256HEHP (miroir nvme pool) + boot SATA SSD (cp-02/03 860 EVO 500GB, cp-01 860 QVO 1TB) 16GB Kubernetes control plane
2× Proxmox VM on pantheon (talos-w-01/02) Virtualized 32GB Kubernetes worker
1× Proxmox VM on pantheon (talos-gpu-01) Virtualized 32GB Kubernetes GPU worker (ASRock Arc A380 6GB passthrough)
1× Gigabyte C246N-WU2 (ymir) 128GB SATA M.2 SSD 16GB Kubernetes worker (Xeon E-2124G, UHD P630 iGPU)
1× HPE ML150 G9 (pantheon) T-FORCE 1TB SSD 192GB Proxmox virtualization host
1× Supermicro (atlas) 3× RAIDZ2 6-wide (~41TB usable) 94.3GB ECC TrueNAS SCALE — NAS / media storage

Every Kubernetes node runs Talos Linux.


🌐 Networking

Device Role
UniFi Cloud Gateway Max WAN/NAT, L3 gateway, DHCP, BGP (FRR), DNS, UniFi controller
Mikrotik CRS309-1G-8S+ L2 switch only — downstream of UCG-Max on VLAN 1099 (LAB)
UniFi US-48 PoE 500W L2 switch (upstream: UCG-Max)
UniFi US-16 PoE 150W L2 switch (upstream: US-48)

🙏 Acknowledgments

Thanks to the following for their work and shared knowledge:


📄 License

This repository is available under the WTFPL License. See LICENSE for details.

Releases

Packages

Used by

Contributors

Languages