danpop-chainguard / home-cluster

My home Kubernetes (k3s) cluster managed by GitOps (Flux2)

Home Page:https://discord.gg/sTMX7Vh

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

My home Kubernetes cluster β›΅

... managed by Flux

Discord k3s GitHub stars GitHub issues GitHub last commit GitHub Workflow Status pre-commit


πŸ“–  Overview

This repository is my homelab Kubernetes cluster in a declarative state. Flux2 watches my cluster folder and makes the changes to my cluster based on the YAML manifests.

Renovatebot keeps my applications up-to-date by scanning my repo and opening pull requests when it notices a new container image update.

Actions Runner Controller operates a self-hosted Github runner in my cluster which I use to generate and apply Sealed Secrets to my cluster.

Feel free to open a Github issue or join the k8s@home Discord if you have any questions.

πŸ’»  Cluster setup

See my project over at home-operations for how I provisioned my nodes and other work that supports running this cluster.

πŸ”§  Tools

Below are some of the tools I find useful for working with my cluster

Tool Purpose
direnv Set KUBECONFIG environment variable based on present working directory
git-crypt Encrypt certain files in my repository that can only be decrypted with a key on my computers
go-task Replacement for make and makefiles, who honestly likes that?
pre-commit Ensure the YAML and shell script in my repo are consistent
kubetail Tail logs in Kubernetes, also check out stern (which fork? good luck)

πŸ“  IP addresses

This table is a reference to IP addresses in my cluster and may not be fully up-to-date

Deployment Address
nginx-ingress (external) 192.168.69.100
nginx-ingress (internal) 192.168.69.101
home-assistant 192.168.69.105
vernemq 192.168.69.110
blocky 192.168.69.115
qbittorrent 192.168.69.130
plex 192.168.69.140
loki-syslog 192.168.69.155
coredns 192.168.69.180

🀝  Thanks

A lot of inspiration for this repo came from the following people:

About

My home Kubernetes (k3s) cluster managed by GitOps (Flux2)

https://discord.gg/sTMX7Vh

License:Apache License 2.0


Languages

Language:Shell 100.0%