Veröffentlicht am: 28. April 2025
6 Minuten Lesezeit
Was ist Kubernetes (K8s)? Lerne die wichtigsten Begriffe kennen und erfahre, wie Kubernetes funktioniert und welche Vorteile es bietet.

Der Name Kubernetes geht auf das griechische Wort κυβερνήτης zurück, das so viel wie „Steuermann“ oder „Lotse“ bedeutet. Verbreitet ist auch die Schreibweise K8s.
Kurz gefasst ist Kubernetes eine Software, mit der sich Container in der Softwareentwicklung betreiben und verwalten lassen. Entwickelt wurde sie als Open-Source-Software für die Container-Orchestrierung. Kubernetes kommt bei der Entwicklung cloud-nativer Programme zum Einsatz. Es ermöglicht eine Microservices-Architektur und beschleunigt so die Entwicklung.
Sehen wir uns Kubernetes etwas genauer an.
Kubernetes ist ein Tool für die Orchestrierung von Containern. Orchestrierung bedeutet, mehrere Computersysteme, Anwendungen und Dienste so zu koordinieren und zu verwalten, dass sich häufig wiederkehrende, umfangreiche Workflows und Prozesse ausführen lassen. Was aber ist ein Container? Containerisierung in der Softwareentwicklung bedeutet, Softwarecode zusammen mit allen Abhängigkeiten – etwa Bibliotheken und Frameworks – zu paketieren und in einem eigenen Behälter zu isolieren, dem „Container“. Ein Container ist eine vollständig funktionsfähige, portable Rechenumgebung. Mehrere Container zusammen bilden einen Pod, mehrere Pods einen Node und mehrere Nodes einen Cluster.
Kubernetes ist ein Tool für die Container-Orchestrierung, Docker dagegen ein Tool für die Containerisierung. Docker ist die Plattform, mit der du Anwendungen containerisierst. Weil Docker leichtgewichtiger und schneller als virtuelle Maschinen ist und sich Umgebungen damit unkompliziert aufsetzen lassen, hat es sich als Standardwerkzeug für die Containerisierung durchgesetzt.
Kubernetes ist, wie beschrieben, ein Container-Orchestrierungstool für die Verwaltung von Containern. Zu den typischen Funktionen zählen die folgenden.
Beim Deployment einer Anwendung erstellt Kubernetes neue Container automatisch und entfernt bestehende. Auch neu erstellten Containern weist Kubernetes die Ressourcen automatisch zu.
Kubernetes ist unabhängig vom Cloud-Anbieter und läuft in On-Premises-Umgebungen ebenso wie auf verschiedenen Cloud-Diensten (etwa AWS oder Azure). Hybrid- und Multi-Cloud-Umgebungen lassen sich damit unkompliziert aufbauen und verwalten.
Es steht eine Vielzahl von Plugins und Erweiterungen zur Verfügung. Mit CustomResourceDefinitions (CRD) fügst du beispielsweise neue Ressourcentypen und eigene Logik hinzu, über Plugins wie CNI (Container Network Interface) oder CSI (Container Storage Interface) passt du Netzwerk und Storage an.
Beim Aktualisieren einer Anwendungsversion ist das Rolling Update in Kubernetes der Standard. Zusätzlich ist ein Rollback-Mechanismus eingebaut. Deployments sind dadurch ohne Auswirkung auf den Live-Traffic und ohne Downtime möglich.
Kubernetes ist darauf ausgelegt, große Mengen an Containern zu verwalten, und verbessert damit die Skalierbarkeit eines Systems. Skalierbarkeit beschreibt, in welchem Umfang sich ein System erweitern lässt. In Kubernetes skalierst du, indem du die Anzahl der containerisierten Anwendungen erhöhst oder verringerst.
Mit Monitoring-Tools wie Prometheus oder Grafana überwachst du anwendungsspezifische Metriken. Über Leistungseinbußen oder Fehler nach dem Release wirst du per Alert informiert und kannst Probleme frühzeitig beheben.
Kubernetes bietet die folgenden sieben Vorteile.
Der erste Vorteil liegt in der höheren Produktivität bei der Anwendungsentwicklung. Bei herkömmlicher Virtualisierung war für jede Anwendung ein eigenes Gastbetriebssystem nötig. In Kubernetes stellst du Anwendungen direkt auf der Container-Engine bereit, wodurch sich der Ressourcenverbrauch der Server verringert.
Fällt ein Pod oder ein Node aus, stellt Kubernetes automatisch den ursprünglich definierten Zustand – das Manifest – wieder her.
Kubernetes bildet Cluster aus mehreren Nodes. Kommt es in einem Cluster zu einer Störung, startet Kubernetes den betroffenen Container automatisch neu. Container lassen sich außerdem auf einem anderen Node starten und führen die Verarbeitung fort – das sorgt für hohe Verfügbarkeit.
Kubernetes lässt sich on-premises ebenso nutzen wie in der Private oder Public Cloud. Ob auf eigenen Servern oder in der Cloud: Der Betrieb ist in jeder Umgebung möglich.
Mit Kubernetes verwaltest und betreibst du große Mengen an Containern zentral. Indem du Konfigurationsdateien zwischen mehreren Containern teilst, übernimmst du Konfigurationsänderungen auch in großem Umfang exakt so, wie du sie definiert hast.
DevSecOps erweitert DevOps – die Verbindung von Entwicklung und Betrieb – um die Sicherheit. Entwicklung und Sicherheit laufen parallel und mit Blick auf den Betrieb, damit zuverlässige und sichere Software zügig veröffentlicht werden kann. Weil Kubernetes viele Funktionen mitbringt, die sowohl die Entwicklung als auch der Betrieb von Anwendungen benötigt, passt es sehr gut zu DevSecOps.
Kubernetes basiert auf einer cloud-nativen Architektur und greift bei Best Practices zur cloud-nativen Informationssicherheit auf die Empfehlungen der CNCF (Cloud Native Computing Foundation) zurück.
So enthält Kubernetes APIs und Sicherheitskontrollen und bietet die Möglichkeit, Richtlinien für die Informationssicherheit zu definieren. Auch wenn beim Einsatz der Cloud Bedenken hinsichtlich der Sicherheit bestehen: In Kubernetes legst du Zugriffsbeschränkungen für einzelne Nutzende fest und verhinderst so unbefugte Zugriffe.
Zusätzlich definieren die Pod Security Standards drei Sicherheitsrichtlinien. Sie reichen von sehr locker bis sehr streng und bauen kumulativ aufeinander auf.
Wenn du einen Kubernetes-Cluster mit GitLab verbindest, kannst du Apps entwickeln, bereitstellen, verwalten und überwachen. Es gibt drei Wege, GitLab mit Kubernetes zu verbinden oder innerhalb von Kubernetes zu betreiben. Du kannst sie einzeln oder in Kombination nutzen.
Weitere Informationen und Kontaktmöglichkeiten findest du hier.
Docker ist eines der Tools für die Containerisierung: Damit baust du Anwendungscontainer und entwickelst, verteilst und führst Anwendungen aus. Kubernetes setzt du ein, um mehrere Microservices in größerem Umfang zu verwalten. Kubernetes läuft außerdem in Clustern, Docker läuft auf Nodes. Kubernetes dient der Verwaltung von Containern, Docker unter anderem dazu, Anwendungen in Containern zu isolieren.
Zu den typischen Einsatzmöglichkeiten von Kubernetes zählen:
Containerisierung bedeutet, Softwarecode zusammen mit allen Abhängigkeiten wie Bibliotheken und Frameworks zu paketieren und in einem eigenen Behälter zu isolieren, dem „Container“. Ein Kubernetes-Container ist eine vollständig funktionsfähige, portable Rechenumgebung und ermöglicht als auf verschiedenen Plattformen bereitstellbares Programm eine Microservices-Architektur.
K8s ist die Kurzform von Kubernetes: Zwischen dem ersten Buchstaben K und dem letzten Buchstaben s stehen acht weitere Buchstaben. Der Name selbst geht auf das griechische κυβερνήτης zurück und bedeutet „Steuermann“ beziehungsweise „Lotse“.
Kostenlose 30-tägige
GitLab-Testversion starten
Keine Kreditkarte erforderlich.
Hat dir dieser Blogbeitrag gefallen? Hast du Fragen oder Feedback? Erstelle ein neues Diskussionsthema im GitLab-Community-Forum und lass andere an deinen Eindrücken teilhaben.
Feedback teilenBeginne noch heute, schneller zu entwickeln
Entdecke, was dein Team mit der intelligenten Orchestrierungsplattform für DevSecOps erreichen kann.