The goal of this repository is to set up a Kubernetes (1.20) cluster in vagrant.
You need to have packer
, virtualbox
and vagrant
installed on your workstation.
Start:
make start
Cleanup:
make clean
Traefik is set up as default Ingress Controller.
It is possible to forward all queries from the host ports 80 and 443 to cluster's Ingress Controller, running the extra/local-lb.sh
script.
In order for this script to work, you need to have docker installed on your host, as it creates a vagrant-kubernetes-haproxy
container.
-
Kubernetes 1.20
-
containerd as container runtime (CRI plugin)
-
Cilium as CNI
-
Traefik as Ingress Controller
-
Longhorn as (optional) volume provisioner To enable longhorn deployment, set
storage_volume_snapshost_controller
andstorage_longhorn
totrue
in Vagrantfile
- VMs are in a shared network in the
10.80.0.0/16
subnet - Kubernetes Services are in the
10.96.0.0/12
subnet - Kubernetes Pods are in the
10.112.0.0/12
subnet
- Kubernetes
- containerd
- Cilium
- Packer
- Vagrant
Philippe Chepy
- Github: @PhilippeChepy
- LinkedIn: @philippe-chepy
- Website EasyAdmin