Kubernetes Grundlagen: Container-Orchestrierung verstehen | Enjyn Gruppe
Hallo Welt
Hallo Welt
Original Lingva Deutsch
Übersetzung wird vorbereitet...
Dieser Vorgang kann bis zu 60 Sekunden dauern.
Diese Seite wird erstmalig übersetzt und dann für alle Besucher gespeichert.
0%
DE Zurück zu Deutsch
Übersetzung durch Lingva Translate

235 Dokumentationen verfügbar

Wissensdatenbank

Kubernetes Grundlagen Einfuehrung

Zuletzt aktualisiert: 20.01.2026 um 10:05 Uhr

Kubernetes Grundlagen: Container-Orchestrierung verstehen

Kubernetes (K8s) ist der Standard für Container-Orchestrierung. Wenn Docker einzelne Container verwaltet, orchestriert Kubernetes hunderte oder tausende davon. Dieser Guide erklärt die Grundlagen.

Was ist Kubernetes?

Kubernetes ist eine Open-Source-Plattform zur Automatisierung der Bereitstellung, Skalierung und Verwaltung von Container-Anwendungen. Google entwickelte es ursprünglich intern.

Wann braucht man Kubernetes?

  • Viele Container über mehrere Server verteilen
  • Automatische Skalierung bei Last
  • Selbstheilung bei Ausfällen
  • Zero-Downtime Deployments
  • Service Discovery und Load Balancing

Grundbegriffe

Begriff Erklärung
Cluster Gruppe von Nodes, die zusammenarbeiten
Node Einzelner Server im Cluster (Master oder Worker)
Pod Kleinste Einheit – enthält einen oder mehrere Container
Deployment Beschreibt gewünschten Zustand der Pods
Service Stabile Netzwerkadresse für Pods
Namespace Virtuelle Unterteilung des Clusters
ConfigMap Konfigurationsdaten für Pods
Secret Sensible Daten (Passwörter, Tokens)

Kubernetes Architektur

Control Plane (Master)

  • API Server: Zentrale Schnittstelle
  • etcd: Key-Value-Speicher für Cluster-Zustand
  • Scheduler: Weist Pods den Nodes zu
  • Controller Manager: Überwacht Cluster-Zustand

Worker Nodes

  • Kubelet: Agent auf jedem Node
  • Kube-proxy: Netzwerk-Proxy
  • Container Runtime: Docker, containerd, etc.

Lokale Entwicklungsumgebung

Minikube installieren

# macOS
brew install minikube

# Linux
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
sudo install minikube-linux-amd64 /usr/local/bin/minikube

# Cluster starten
minikube start

# Dashboard öffnen
minikube dashboard

kubectl installieren

# macOS
brew install kubectl

# Linux
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
sudo install kubectl /usr/local/bin/kubectl

# Verbindung testen
kubectl cluster-info

Erstes Deployment

Pod erstellen (YAML)

# nginx-pod.yaml
apiVersion: v1
kind: Pod
metadata:
  name: nginx-pod
  labels:
    app: nginx
spec:
  containers:
  - name: nginx
    image: nginx:latest
    ports:
    - containerPort: 80
# Pod erstellen
kubectl apply -f nginx-pod.yaml

# Status prüfen
kubectl get pods

# Logs anzeigen
kubectl logs nginx-pod

# Pod löschen
kubectl delete pod nginx-pod

Deployment erstellen

# nginx-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.25
        ports:
        - containerPort: 80
        resources:
          limits:
            memory: "128Mi"
            cpu: "500m"
kubectl apply -f nginx-deployment.yaml
kubectl get deployments
kubectl get pods

Service erstellen

# nginx-service.yaml
apiVersion: v1
kind: Service
metadata:
  name: nginx-service
spec:
  selector:
    app: nginx
  ports:
  - port: 80
    targetPort: 80
  type: LoadBalancer
kubectl apply -f nginx-service.yaml
kubectl get services

Wichtige kubectl Befehle

Befehl Beschreibung
kubectl get pods Alle Pods anzeigen
kubectl get pods -o wide Pods mit mehr Details
kubectl describe pod NAME Pod-Details anzeigen
kubectl logs POD Pod-Logs anzeigen
kubectl exec -it POD -- bash In Pod einloggen
kubectl scale deployment NAME --replicas=5 Skalieren
kubectl rollout status deployment/NAME Rollout-Status
kubectl rollout undo deployment/NAME Rollback

Kubernetes vs. Docker Compose

Aspekt Docker Compose Kubernetes
Komplexität Einfach Komplex
Skalierung Manuell Automatisch
Self-Healing Nein Ja
Multi-Host Nein (Swarm) Ja
Einsatz Entwicklung, kleine Projekte Produktion, Enterprise
💡 Tipp: Für kleinere Projekte ist Docker Compose oft ausreichend. Kubernetes lohnt sich erst bei größeren, verteilten Anwendungen.

Managed Kubernetes Dienste

  • Google GKE: Google Kubernetes Engine
  • AWS EKS: Elastic Kubernetes Service
  • Azure AKS: Azure Kubernetes Service
  • DigitalOcean DOKS: Managed Kubernetes

Weitere Informationen

Enjix Beta

Enjyn AI Agent

Hallo 👋 Ich bin Enjix — wie kann ich dir helfen?
120