home-ops
home-ops copied to clipboard
Code and configuration used to manage the fleets of k8s and Terraform clusters managing the Waltr.Tech environment
🚧 Please pardon the dust 🚧
The homelab is currently undergoing operation "Honey I Shrunk The Homelab". See Issues for progress
rwaltr/home-ops
📖 Overview
This is a Monorepo to manage my personal environment. A combination of Talos, Terraform, and flux allow this repo to provide most of the configuration required to manage this environment across regions/clouds.
⛵ Kubernetes
My homelab is Kubernetes based, meaning that I have a cluster of nodes running OCI (AKA. Docker) containers. Since my lab is mostly Kubernetes, I can use tools that focus on text manipulation and formatting, then use Flux to actually feed these configs into my cluster.
The result is that the text files here turn into actual running applications.
I use a toolset called Talos Linux to help abstract the hardware management of Kubernetes.
🐦 Talos
Talos is a OS that is configured by a YAML manifest. You can see this in :/infra/talos
I use talhelper to further abstract Talos's config for easy config file expandability
🐧 Gitops
Gitops generally means that your git repo is the state of your environment.
Here it is done with Flux and Terraform
Networking
KYZ
In the site KYZ The cluster communicates with the edge gateway with BGP. Ports 80 and 443 are forwarded to the Ingress manager
🖊️ Finding TODOS
🧰 Tools!
| Tool | Use | Active |
|---|---|---|
| Flux | Gitops Operator | ☑️ |
| Talos | Operating System | ☑️ |
| Traefik | Ingress Management | ☑️ |
| Cert-manager | X509 Secrets manager | ☑️ |
| Age | Secrets Encryption | ☑️ |
| External-dns | Public DNS operator | ☑️ |
| SOPS | inline secrets-manager | ☑️ |
| pre-commit | Commit checking | ☑️ |
| Cilium | CNI | ☑️ |
🤟 Thanks
Thank you to the below for inspiration
- onedr0p
- anthr76
- dirtycajunrice
- danmanners
🌐 Communities
K8s-at-Home
📬 Contact Me
- Github Issues
📜 Changelog
See commit history
🔏 License
See LICENSE
