You need to have Kubernetes cluster that you can connect to, Helm3 installed and a domain that points to the external IP address of the cluster.
K3D is a lightweight wrapper to run multi-node cluster. It will spin up K3S under in docker. Currently, it comes with Traefik v1, that's why we need to set arguments to disable Traefik while provision cluster for the workshop purposes.
One can use the following command to setup a cluster:
k3d cluster create workshop \
--k3s-server-arg "--disable=traefik" \
-p "80:80@loadbalancer" \
-p "443:443@loadbalancer" \
--agents 2
It will create the cluster with two worker nodes and expose the port 80 and 443. It is enough to go through the exercises below.
Helm is the package manager for Kubernetes. Here is the link to the official Helm docs to guide how to install Helm3+ in your local environment.
Installing Traefik through package manger will run a preconfigured Traefik instance. It is one of the recommended approaches. You can start exploring Traefik and focus on its features. There is still option to deploy it manually on your Kubernets cluster.
- Installing Traefik Proxy
- Traefik Dashboard
- Deploying test application on Kubernetes
- Creating Kubernetes Ingress HTTP
- Adding extra configuration to values.yaml
- Deploying Traefik with the new configuration
- Creating Kubernetes Ingress HTTPS
- Creating Redirectscheme middleware
- Assigning Middleware to the Kubernetes Ingress HTTP
- Scaling up / down the application
- Creating Kubernets CRD (HTTP)
- Creating Kubernetes CRD (HTTPS)
- Creating Basic Auth Middleware with Kubernetes Secrets
- Kubernetes CRD for Dashboard
- Enabling metrics endpoint