Terraform and Ansible playbooks to create a local k3s cluster on a proxmox host from scratch. Includes ArgoCD and cilium networking.
  • HCL 62.7%
  • Jinja 37.3%
Find a file
leon 808f922d8e
Some checks failed
Ansible K3s Deployment / Lint (push) Failing after 22s
Ansible K3s Deployment / Deploy K3s Cluster (push) Has been skipped
Ansible K3s Deployment / Deploy K3s Only (push) Has been skipped
Ansible K3s Deployment / Deploy Cilium Only (push) Has been skipped
Terraform / Validate (push) Failing after 14s
Terraform / Apply (push) Has been skipped
Terraform / Destroy (push) Has been skipped
Ansible K3s Deployment / Check (Dry Run) (push) Has been skipped
Terraform / Plan (push) Has been skipped
Publish
2026-04-19 21:01:42 +02:00
.forgejo/workflows Publish 2026-04-19 21:01:42 +02:00
ansible Publish 2026-04-19 21:01:42 +02:00
manifests Publish 2026-04-19 20:50:38 +02:00
terraform Publish 2026-04-19 21:01:42 +02:00
.gitignore Publish 2026-04-19 21:01:42 +02:00
README.md Publish 2026-04-19 21:01:42 +02:00

infra-k3s

My homelab k3s cluster setup. Spins up VMs on Proxmox with Terraform, then configures a k3s cluster with Ansible. Uses Cilium for networking and ArgoCD for GitOps.

Nothing fancy, just a hobby project to learn and tinker with. Works on my machine. :)

What's in here

  • terraform/ — Provisions Ubuntu VMs on Proxmox via cloud-init
  • ansible/ — Installs k3s, Cilium CNI, and ArgoCD
  • manifests/ — ArgoCD app definitions and Cilium network policies

Usage

Copy terraform/terraform.tfvars.example to terraform/terraform.tfvars and fill in your values. The Proxmox credentials and SSH keys are expected as environment variables or CI secrets — nothing sensitive is checked in.

Check the ansible README for cluster deployment details.

Note

This is not production-grade. It's a learning playground. Use at your own risk.