k3s ist vollstaendiges Kubernetes, aber leichtgewichtig (eine einzige Binaerdatei, <512MB RAM) — ideal fuer KMU und Edge. Ein Cluster von Grund auf: Server, Worker, eine App und Ingress. Schritt fuer Schritt.
1. Server-Knoten
# nod server (control-plane) — instalare intr-o comanda
curl -sfL https://get.k3s.io | sh -
# verifica
sudo k3s kubectl get nodes
# tokenul pt workeri:
sudo cat /var/lib/rancher/k3s/server/node-token
2. Worker hinzufuegen
# pe fiecare worker (agent) — pointezi la server + token
curl -sfL https://get.k3s.io | \
K3S_URL=https://SERVER_IP:6443 K3S_TOKEN=<TOKEN> sh -
# pe server: verifica ca s-au alaturat
sudo k3s kubectl get nodes -o wide
3. Lokales kubectl
# kubectl local (copiaza kubeconfig de pe server)
mkdir -p ~/.kube
sudo cp /etc/rancher/k3s/k3s.yaml ~/.kube/config
sed -i 's/127.0.0.1/SERVER_IP/' ~/.kube/config
kubectl get nodes
4. App deployen
# deploy o aplicatie + service
kubectl create deployment web --image=nginx --replicas=3
kubectl expose deployment web --port=80 --type=ClusterIP
kubectl get pods,svc
5. Ingress (Traefik)
# k3s vine cu Traefik ingress inclus — expui aplicatia pe un host
kubectl apply -f - <<'EOF'
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata: { name: web }
spec:
rules:
- host: web.example.com
http:
paths:
- path: /
pathType: Prefix
backend: { service: { name: web, port: { number: 80 } } }
EOF
6. Pruefen
kubectl get nodes
kubectl get pods -A
kubectl get ingress
curl -H 'Host: web.example.com' http://SERVER_IP/
Fazit
Sie haben nun einen funktionierenden Kubernetes-Cluster, einfach zu betreiben, bereit fuer Apps. Wir dimensionieren, sichern und ergaenzen Storage/Monitoring auf Wunsch.