DEV Community

Alex Spinov
Alex Spinov

Posted on

k3s Has a Free Lightweight Kubernetes Distribution

k3s is a free, lightweight Kubernetes distribution that runs in 512MB of RAM. It is production-ready and certified by the CNCF.

What Is k3s?

k3s is Kubernetes stripped down to the essentials. It packages everything into a single binary under 100MB.

Key features:

  • Single binary (<100MB)
  • 512MB RAM minimum
  • Production-ready and CNCF certified
  • Built-in Traefik ingress
  • Built-in local storage
  • Built-in load balancer
  • Embedded SQLite (no etcd needed)
  • ARM support (Raspberry Pi!)
  • Automatic TLS
  • Easy cluster setup

Install in 30 Seconds

Server (master)

curl -sfL https://get.k3s.io | sh -
Enter fullscreen mode Exit fullscreen mode

Agent (worker)

curl -sfL https://get.k3s.io | K3S_URL=https://server-ip:6443 K3S_TOKEN=YOUR_TOKEN sh -
Enter fullscreen mode Exit fullscreen mode

That is it. Full Kubernetes cluster.

k3s vs Full Kubernetes

Feature k8s (kubeadm) k3s
Install time 30+ minutes 30 seconds
RAM minimum 2GB 512MB
Binary size 1GB+ <100MB
Dependencies Many None
ARM support Limited Full
Default ingress None Traefik
Default storage None Local path
CNCF certified Yes Yes

Deploy an App

kubectl apply -f - <<EOF
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx
        ports:
        - containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
  name: nginx
spec:
  type: LoadBalancer
  selector:
    app: nginx
  ports:
  - port: 80
EOF
Enter fullscreen mode Exit fullscreen mode

With 29K+ GitHub stars. Kubernetes for everyone.


Running scrapers on Kubernetes? Apify tools. Custom solutions: spinov001@gmail.com

Top comments (0)