Welcome to the Flatcar Homelab project. This repository contains the configuration and automation for a fully automated, GitOps-driven Kubernetes cluster on bare metal, leveraging Flatcar Container Linux and Kubeadm.
- Immutable Infrastructure: Uses Flatcar Container Linux for secure, auto-updating nodes.
- GitOps: All cluster state is managed via ArgoCD.
- Networking: Cilium for CNI, Gateway API, and WireGuard encryption.
- Storage: Rook-Ceph for distributed block storage.
The full project documentation is hosted at https://docs.k8s.wlkr.ch.
- Quickstart Guide: Instructions for bootstrapping the cluster.
- Platform Architecture: Details on core infrastructure components.
- Workloads: Information about deployed applications.
ansible/: Ansible playbooks for bootstrapping and configuration generation.boot_server/: Python-based PXE boot server.payload/: The "GitOps Payload" containing ArgoCD Applications and Kubernetes manifests.platform/: Core infrastructure (Cilium, Rook, etc.).workloads/: User applications (Home Assistant, Nextcloud, etc.).argocd/: ArgoCD bootstrap configuration.
See the development/ directory in the documentation for contribution guidelines and development workflows.
