This is the public copy of my Kubernetes cluster configuration. I use this repository to manage my home infrastructure and workloads, like Home Assistant.
Tool | Purpose |
---|---|
flux | Operator that manages your k8s cluster based on your Git repository |
Node | Hostname | RAM | Storage | Function | Operating System |
---|---|---|---|---|---|
Dell Optiplex Micro 5050 | APER_NODE_01 | 16GB | 2TB HDD + 500GB SSD (Boot) | Kube Worker | Talos 1.8.0-alpha.1 |
Dell Optiplex Micro 5050 | APER_NODE_01 | 16GB | 2TB HDD + 500GB SSD (Boot) | Kube Worker | Talos 1.8.0-alpha.1 |
No dedicated NAS or storage server. Instead, I use the two 2tb disks in the nodes
Vendor | Model | Function |
---|---|---|
ASUS | RT-AC66U B1 | Running FreshTomoato as the firmware |
TP-LINK | Managed 6 port switch |
While most of my infrastructure and workloads are self-hosted I do rely upon the cloud for certain key parts of my setup. This saves me from having to worry about two things. (1) Dealing with chicken/egg scenarios and (2) services I critically need whether my cluster is online or not.
The alternative solution to these two problems would be to host a Kubernetes cluster in the cloud and deploy applications like HCVault, Vaultwarden, ntfy, and Gatus. However, maintaining another cluster and monitoring another group of workloads is a lot more time and effort than I am willing to put in.
Service | Use | Cost |
---|---|---|
Cloudflare | Domain(s) | Free |
GCP | Voice interactions with Home Assistant over Google Assistant | Free |
GitHub | Hosting this repository and continuous integration/deployments | Free |
1Password | External Secrets and secret management | Free for the moment |