
Kubernetes (K8s)ist die Standardplattform für die Ausführung von Containeranwendungen im großen Maßstab im Jahr 2026. Jeder große Cloud-Anbieter bietet verwaltetes Kubernetes an: EKS (AWS), GKE (Google), AKS (Azure). In diesem Leitfaden für Einsteiger werden Kernkonzepte erläutert und Sie erhalten die Möglichkeit, Ihre erste App in einem Cluster auszuführen.
📋 Table of Contents
Kernkonzepte
- Pod:Kleinste einsetzbare Einheit – ein oder mehrere Container, die sich Netzwerk/Speicher teilen
- Bereitstellung:Verwaltet mehrere Pod-Replikate und verarbeitet fortlaufende Updates
- Dienst:Stabiler Netzwerkendpunkt für eine Reihe von Pods
- Namensraum:Virtueller Cluster zur Ressourcenisolation
- ConfigMap/Secret:Konfiguration und Injektion sensibler Daten
Installieren Sie kubectl und Minikube (Lokaler Test)
# Install kubectl
curl -LO https://dl.k8s.io/release/$(curl -Ls https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl
chmod +x kubectl && sudo mv kubectl /usr/local/bin/
# Install Minikube (local cluster)
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube
# Start cluster
minikube start --cpus 2 --memory 4096
kubectl cluster-info
Stellen Sie Ihre erste App bereit
# deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: myapp
namespace: default
spec:
replicas: 3
selector:
matchLabels:
app: myapp
template:
metadata:
labels:
app: myapp
spec:
containers:
- name: myapp
image: myapp:1.0
ports:
- containerPort: 8000
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 500m
memory: 512Mi
# service.yaml
apiVersion: v1
kind: Service
metadata:
name: myapp-service
spec:
selector:
app: myapp
ports:
- port: 80
targetPort: 8000
type: LoadBalancer
kubectl apply -f deployment.yaml
kubectl apply -f service.yaml
# Check status
kubectl get pods
kubectl get services
kubectl describe pod <pod-name>
Wesentliche kubectl-Befehle
# Get resources
kubectl get pods -n default
kubectl get deployments
kubectl get services
# View logs
kubectl logs <pod-name>
kubectl logs -f <pod-name> # follow
# Exec into pod
kubectl exec -it <pod-name> -- /bin/bash
# Scale deployment
kubectl scale deployment myapp --replicas=5
# Rolling update (zero downtime)
kubectl set image deployment/myapp myapp=myapp:2.0
# Rollback
kubectl rollout undo deployment/myapp
ConfigMaps und Geheimnisse
# configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: myapp-config
data:
DATABASE_HOST: postgres-service
APP_ENV: production
---
# secret.yaml
apiVersion: v1
kind: Secret
metadata:
name: myapp-secret
type: Opaque
stringData:
DATABASE_PASSWORD: supersecret
Fazit
Kubernetes ist komplex, aber die Kernkonzepte sind unkompliziert. Master-Pods, Bereitstellungen und Dienste, dann fügen Sie Ingress für das Routing und HorizontalPodAutoscaler für die automatische Skalierung hinzu. Verwenden Sie für die Produktion einen verwalteten Dienst (EKS/GKE/AKS), anstatt die Steuerungsebene selbst zu hosten.
🔗 Share this article
✍️ Leave a Comment