Skip to content

My personal infrastructure and Kubernetes cluster written as code.

License

Notifications You must be signed in to change notification settings

chamburr/homelab

Repository files navigation

Homelab

My personal infrastructure and Kubernetes cluster written as code.

This project utilises Infrastructure as Code and GitOps to automate the provisioning, operating and updating of self-hosted services in my homelab. Furthermore, this repository can also serve as a good framework for you to build your own homelab.

Feel free to open a GitHub issue if you have any questions!

Installation

First, configure a gateway running OPNsense, get a controller running Ubuntu, and install Talos Linux on several servers for Kubernetes nodes. Then, install the prerequisites in Brewfile and update Ansible and environmental variables. Finally, run ./scripts/bootstrap.sh to install everything on the controller and Kubernetes nodes!

Core components

Logo Name Description
Ansible Bare metal provisioning and configuration
Argo CD GitOps operator for managing Kubernetes cluster
Cilium Cloud native internal networking for Kubernetes
Kubernetes Orchestration system for managing containers
OPNsense Operating system for external gateway
Prometheus Monitoring system for metrics and alerting
Proxmox Virtualization platform for virtual machines
Rook Ceph Cloud native storage for Kubernetes
Talos Linux Linux distribution for Kubernetes nodes
Traefik Cloud native ingress controller for Kubernetes
Ubuntu Linux distribution for controller
Vault Secrets and encryption management system
Woodpecker Continuous integration and delivery platform

Hardware

My infrastructure currently consists of multiple nodes with the following specifications.

  • Gateway, Controller, Talos 1: Miniroute R1, Intel N100, 16GB RAM, 512GB SSD
  • Talos 2: ThinkCenter M920x, Intel i5-8600T, 32GB RAM, 256GB + 1TB SSD
  • Talos 3: ThinkCenter M920x, Intel i5-8600T, 32GB RAM, 256GB + 1TB SSD

License

This project is licensed under the MIT License.

About

My personal infrastructure and Kubernetes cluster written as code.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published