Kubernetes has become the standard for managing containerized applications, but setting up a development environment can be complex. However, with K3s and Traefik Proxy, it's possible to create a local Kubernetes cluster quickly and easily.
🧑💻 Setting Up K3s Cluster
To begin, download and install K3s. K3s is a lightweight Kubernetes distribution that's easy to install and configure. After installing, start the K3s server:
sudo k3s server
🌐 Setting Up Traefik Proxy
Traefik is a popular reverse proxy and load balancer that integrates with Kubernetes. It's used to route traffic to the correct service or pod. To install Traefik, use the following command:
sudo kubectl apply -f https://raw.githubusercontent.com/containous/traefik/v2.3/examples/k8s/traefik-deployment.yaml
🔧 Configuring Traefik Proxy
Next, configure Traefik by applying the necessary settings. Traefik can be configured using Kubernetes annotations. For example, to configure SSL, use the following annotation:
🔒 Securing Services with Traefik Proxy
Traefik can also be used to secure services with HTTPS. To do this, create a Kubernetes secret with your SSL certificate and key:
kubectl create secret tls my-secret --key tls.key --cert tls.crt
Then, apply the secret to your service:
apiVersion: v1 kind: Service metadata: name: my-service annotations: traefik.ingress.kubernetes.io/router.tls=true traefik.ingress.kubernetes.io/router.tls.certresolver=my-resolver spec: ports: - name: http port: 80 targetPort: 80 - name: https port: 443 targetPort: 80 selector: app: my-app
You've now set up a local Kubernetes cluster with K3s and Traefik Proxy. This setup is ideal for testing and development, and can easily be scaled up for production use.
Did you find this article valuable?
Support Raphael Carlos Rego by becoming a sponsor. Any amount is appreciated!