Was ist Docker?
Docker ist eine Container-Plattform zur Paketierung von Anwendungen inklusive Abhängigkeiten. Container laufen isoliert, aber teilen sich den Host-Kernel. Dadurch sind sie leichtgewichtig und portabel.
Was ist ein Container?
Ein Container ist eine isolierte Laufzeitumgebung für Anwendungen. Er enthält Code, Runtime und Libraries. Container starten schneller als virtuelle Maschinen.
Was ist der Unterschied zwischen Docker und einer virtuellen Maschine?
VMs virtualisieren Hardware und benötigen ein eigenes Betriebssystem. Container teilen sich den Host-Kernel. Dadurch sind Container ressourcenschonender.
Was ist ein Docker Image?
Ein Image ist eine unveränderliche Vorlage für Container. Es enthält alle notwendigen Dateien. Container werden aus Images gestartet.
Was ist ein Dockerfile?
Ein Dockerfile beschreibt, wie ein Image gebaut wird. Es enthält Anweisungen wie FROM RUN oder CMD. Es ermöglicht reproduzierbare Builds.
Was ist Docker Hub?
Docker Hub ist ein zentrales Image-Repository. Es enthält öffentliche und private Images. Unternehmen nutzen oft eigene Registries.
Was ist Layering in Docker?
Images bestehen aus mehreren Layern. Jeder Befehl im Dockerfile erzeugt einen Layer. Layer können gecached werden.
Was ist ein Volume in Docker?
Volumes speichern persistente Daten außerhalb des Containers. Sie überleben Container-Neustarts. Sie sind wichtig für Datenbanken.
Was ist Docker Compose?
Docker Compose definiert Multi-Container-Anwendungen. Services werden in einer YAML-Datei beschrieben. Es eignet sich für lokale Entwicklung.
Was ist ein Docker Network?
Docker Networks ermöglichen Kommunikation zwischen Containern. Container können über Service-Namen angesprochen werden. Netzwerke sind isoliert.
Was ist Kubernetes?
Kubernetes ist eine Orchestrierungsplattform für Container. Es automatisiert Deployment Skalierung und Betrieb. Es wird oft mit Docker genutzt.
Was ist ein Kubernetes Cluster?
Ein Cluster besteht aus Control Plane und Worker Nodes. Er verwaltet Containerisierte Anwendungen. Er sorgt für Hochverfügbarkeit.
Was ist ein Pod?
Ein Pod ist die kleinste Kubernetes-Einheit. Er enthält einen oder mehrere Container. Container im Pod teilen sich Netzwerk und Storage.
Was ist ein Node?
Ein Node ist eine Maschine im Cluster. Er führt Pods aus. Nodes können physisch oder virtuell sein.
Was ist die Control Plane?
Die Control Plane steuert den Cluster. Sie verwaltet Scheduling und Zustand. Komponenten sind API Server Scheduler und Controller.
Was ist ein Deployment?
Ein Deployment beschreibt den gewünschten Zustand einer Anwendung. Kubernetes sorgt dafür, dass dieser Zustand eingehalten wird. Updates erfolgen kontrolliert.
Was ist ein ReplicaSet?
Ein ReplicaSet stellt sicher, dass eine bestimmte Anzahl von Pods läuft. Es wird meist vom Deployment verwaltet. Es sorgt für Skalierung.
Was ist ein Service in Kubernetes?
Ein Service bietet einen stabilen Netzwerkendpunkt. Er abstrahiert Pods. Clients müssen Pod-IPs nicht kennen.
Was ist der Unterschied zwischen ClusterIP NodePort und LoadBalancer?
ClusterIP ist intern. NodePort öffnet Ports auf Nodes. LoadBalancer integriert externe Load Balancer.
Was ist Ingress?
Ingress steuert HTTP- und HTTPS-Zugriffe. Es fungiert als API Gateway. Es erlaubt Routing und TLS.
Was ist ConfigMap?
ConfigMaps speichern Konfigurationsdaten. Sie entkoppeln Konfiguration vom Image. Pods lesen sie zur Laufzeit.
Was ist ein Secret?
Secrets speichern sensible Daten. Sie werden Base64-kodiert. Sie sollten nicht im Code liegen.
Was ist Horizontal Pod Autoscaling?
HPA skaliert Pods automatisch. Es basiert auf Metriken wie CPU oder Custom Metrics. Es verbessert Lastverteilung.
Was ist Rolling Update?
Rolling Updates ersetzen Pods schrittweise. Die Anwendung bleibt verfügbar. Deployments nutzen dieses Feature.
Was ist Canary Deployment?
Canary Deployments rollen neue Versionen kontrolliert aus. Nur ein Teil des Traffics nutzt die neue Version. Risiken werden reduziert.
Was ist Blue-Green Deployment?
Zwei Versionen laufen parallel. Der Traffic wird umgeschaltet. Rollbacks sind einfach.
Was ist Liveness Probe?
Sie prüft, ob ein Container lebt. Bei Fehlern wird er neu gestartet. Sie erhöht Stabilität.
Was ist Readiness Probe?
Sie prüft, ob ein Pod Anfragen annehmen kann. Pods werden sonst aus dem Service entfernt. Das verhindert Fehler.
Was ist Resource Request und Limit?
Requests reservieren Ressourcen. Limits begrenzen Nutzung. Sie verhindern Überlastung.
Was ist Helm?
Helm ist ein Package Manager für Kubernetes. Anwendungen werden als Charts verteilt. Das vereinfacht Deployments.
Was ist Namespace?
Namespaces trennen Ressourcen logisch. Sie werden für Multi-Tenancy genutzt. Sie erhöhen Übersicht.
Was ist StatefulSet?
StatefulSets verwalten zustandsbehaftete Anwendungen. Pods haben stabile Identitäten. Sie werden für Datenbanken genutzt.
Was ist DaemonSet?
DaemonSets laufen auf jedem Node. Typisch für Logging oder Monitoring. Jeder Node erhält einen Pod.
Was ist Kubernetes Networking schwierig?
Netzwerke sind verteilt. Jeder Pod benötigt eindeutige IPs. Debugging kann komplex sein.
Was ist Observability in Kubernetes?
Observability umfasst Logs Metriken und Traces. Tools wie Prometheus und Grafana werden genutzt. Sie sind essenziell für Betrieb.
Was sind typische Fehler bei Kubernetes?
Fehlende Limits falsche Probes und zu komplexe Setups. Auch mangelndes Monitoring ist kritisch. Erfahrung ist wichtig.
Wann ist Kubernetes ungeeignet?
Für kleine einfache Anwendungen. Der Betriebsaufwand ist hoch. Docker Compose reicht oft aus.
Wann ist Docker allein ausreichend?
Für lokale Entwicklung oder kleine Deployments. Wenn keine Skalierung nötig ist. Kubernetes wäre Overkill.
Last changeda month ago