Was ist Kubernetes?

Kubernetes ist Open-Source-Orchestrierungssoftware zum Bereitstellen, Verwalten und Skalieren von Containern.

Kubernetes im Überblick

Anwendungen werden heute zunehmend containerbasiert erstellt – als Microservicespakete mit Abhängigkeiten und Konfigurationen. Kubernetes, kurz k8s, ist Open-Source-Software für die bedarfsorientierte Bereitstellung und Verwaltung solcher Container. Mit Kubernetes können Sie containerbasierte Apps schneller erstellen, bereitstellen und skalieren.

Lernen Sie Kubernetes mit diesem einfachen Lernpfad kennen

Funktionsweise von Kubernetes

Während Anwendungen immer größer werden, um mehrere Container, die auf mehreren Servern bereitgestellt sind, zu verbinden, wird auch deren Betreibung immer komplexer. Aufgrund dieser Komplexität stellt Kubernetes eine Open-Source-API bereit, die steuert, wie und wo diese Container ausgeführt werden.

Außerdem haben Sie die Möglichkeit, einen Cluster mit virtuellen Computern zu orchestrieren, und Sie können planen, wann Container auf diesen virtuellen Computern basierend auf ihren verfügbaren Computeressourcen und den Ressourcenanforderungen der einzelnen Container ausgeführt werden. Container werden in Pods gruppiert. Pods stellen die grundlegende Vorgangseinheit für Kubernetes dar, die nach Ihren Vorgaben skaliert werden kann.

Kubernetes unterstützt Sie bei der Verwaltung der Dienstermittlung, der Einbindung von Lastenausgleich, Nachverfolgung von Ressourcenzuordnung, Skalierung basierend auf der Computenutzung, Integritätsüberwachung einzelner Ressourcen und beim Ermöglichen der Selbstreparatur von Apps durch automatisches Neustarten oder Replizieren von Containern.

Erfahren Sie mehr über Kubernetes-Grundlagen

Funktionsweise von Kubernetes

Welche Vorteile bietet Kubernetes?

Implementieren Sie containerbasierte Umgebungen auf eine portierbare, skalierbare und erweiterbare Weise.

Portabilität

Verschieben Sie containerbasierte Workloads nahtlos von lokalen Entwicklungscomputern in die Produktion. Orchestrieren Sie konsistent Container in verschiedenen Umgebungen in lokalen Infrastrukturen und in öffentlichen und Hybrid Clouds.

Skalierbarkeit

Definieren Sie komplexe containerbasierte Anwendungen, und stellen Sie diese global in einem Cluster von Servern – oder sogar in mehreren Clustern – bereit. Kubernetes optimiert währenddessen Ressourcen entsprechend dem von Ihnen gewünschten Zustand. Mit der integrierten automatischen Skalierung kann Kubernetes Ihre Anwendung ganz einfach horizontal skalieren und gleichzeitig die Containerintegrität automatisch überwachen und verwalten.

Erweiterbarkeit

Nutzen Sie eine umfangreiche und stetig wachsende Sammlung von Erweiterungen und Plug-Ins, die von den Entwicklern und Unternehmen der Kubernetes-Community erstellt wurden. Über einen konformen Kubernetes-Dienst können Sie diese Angebote der Community in vollem Umfang nutzen und Funktionen wie Sicherheit, Überwachung und Verwaltung hinzufügen.

Ergänzungen zu Kubernetes

Containerbasierte Anwendungen ermöglichen eine höhere Flexibilität, ihr gesamtes Potenzial kann jedoch nicht mit Kubernetes allein ausgeschöpft werden. Bei Ihrer Einführung von Kubernetes sollten Sie die folgenden Elemente auf Ihrer Kubernetes-Plattform gemeinsam ausprobieren.

An enterprise-grade platform with end-to-end development, operations and security control experience can save you time on infrastructure management and roll out updates faster without compromising security and reliability.

Bedarfsorientierte Flexibilität mit Kubernetes und DevOps

Da die Anzahl der Container und Umgebungen sowie die der mit ihnen arbeitenden Teams steigt, kann auch die Häufigkeit neuer Releases zunehmen – ebenso die Komplexität bei Entwicklung und Anwendung. Sie sollten Ihre Sicherheit schnell an die Anforderungen anpassen und erweitern, indem Sie DevOps in Kubernetes-Umgebungen einsetzen.

Schnelleres Ausliefern von Code mithilfe von Continuous Integration und Continuous Deployment (CI/CD)

Während Container ein konsistentes Paketformat für Anwendungen bieten, das die Zusammenarbeit von Entwicklungs- und Betriebsteams erleichtert, kann CI/CD den Wechseln von Code zu Containern und in einen Kubernetes-Cluster innerhalb von Minuten ermöglichen, indem es solche Aufgaben automatisiert.

Einrichten von CI/CD für Kubernetes

Effizientes Verwalten von Ressourcen mit Infrastructure-as-Code

Infrastructure-as-Code (IaC) fördert die Konsistenz und Sichtbarkeit von Computeressourcen zwischen verschiedenen Teams – und verringert so die Wahrscheinlichkeit von Benutzerfehlern. Da Kubernetes-Anwendungen durch Helm von Natur aus deklarativ sind, arbeiten sie Hand in Hand mit diesem Ansatz. Wird beides kombiniert, können Sie Apps, Ressourcen und Konfigurationen auf eine zuverlässige, nachverfolgbare und wiederholbare Weise definieren.

Bereitstellen eines Kubernetes-Clusters mit Terraform

Beschleunigen der Feedbackschleife mit konstanter Überwachung

Durch unveränderliche Container, häufige Releases und eine abstrahierte Orchestrierungsebene werden Einblicke schwieriger und noch wichtiger. Sie benötigen eine vollständige Ansicht Ihrer Ressourcen, Ihres Clusters, Ihrer Kubernetes-API, Ihrer Container und Ihres Codes, damit Fehler schneller behoben werden können – von der Integritätsüberwachung der Container bis zur zentralisierten Protokollierung. Diese Ansicht ist hilfreich, um Ressourcenengpässe zu vermeiden, böswillige Anforderungen zu überwachen und die Integrität Ihrer Kubernetes-Anwendungen sicherzustellen.

Containererkenntnisse in Echtzeit

Ausgleich von Geschwindigkeit und Sicherheit mit DevOps

Erhalten Sie integrierte Echtzeiterkenntnissen als Teil des DevOps-Workflows. Führen Sie automatisch Kompatibilitätsprüfungen und Neukonfigurationen durch, um Ihren Build und Ihre Releasepipeline – und dadurch auch Ihre Kubernetes-Anwendung – zu schützen.

Kontinuierliche Sicherheit in Aktion

DevOps-Beispielworkflow mit Kubernetes

  1. 1Schnelles Durchlaufen, Testen und Debuggen verschiedener Teile einer Anwendung im selben Kubernetes-Cluster.
  2. 2Mergen und Überprüfen von Code in einem GitHub-Repository für Continuous Integration. Anschließendes Ausführen automatischer Builds und Tests als Teil von Continuous Delivery.
  3. 3Überprüfen der Quelle und Integrität von Containerimages. Images werden unter Quarantäne gestellt, bis ihre Überprüfung erfolgreich abgeschlossen ist.
  4. 4Bereitstellen von Kubernetes-Clustern mit Tools wie Terraform. Mit Terraform installierte Helm-Charts definieren den gewünschten Zustand von App-Ressourcen und -konfigurationen.
  5. 5Erzwingen von Richtlinien zum Steuern von Bereitstellungen im Kubernetes-Cluster.
  6. 6Die Releasepipeline führt automatisch eine vordefinierte Bereitstellungsstrategie mit jedem Codeausschnitt aus.
  7. 7Fügen Sie Richtlinienüberwachung und automatische Fehlerbehebung für die CI/CD-Pipeline hinzu. Beispielsweise darf nur die Releasepipeline in Ihrer Kubernetes-Umgebung neue Pods erstellen.
  8. 8Ermöglichen Sie App-Telemetrie, Systemüberwachung für Container und Protokollanalyse in Echtzeit.
  9. 9Behandeln Sie Probleme mithilfe kognitiver Erkenntnisse, und entwickeln Sie darauf basierend Pläne für den nächsten Sprint.

Mit Azure auf die Stärken von Kubernetes bauen

Automatisieren von Bereitstellung, Durchführung von Upgrades, Überwachung und Skalierung mit dem vollständig verwalteten Microsoft Azure Kubernetes Service (AKS). Verwenden Sie die serverlose Kubernetes-Plattform für einen einfacheren Prozess von der Entwicklung bis zur Produktion, und nutzen Sie Sicherheits- und Governancefeatures auf Unternehmensniveau.

Weitere Informationen zu AKS

Kubernetes gehört der Community

Kubernetes ist durch die Zusammenarbeit von tausenden Einzelpersonen und hunderten Unternehmen entstanden, die sich alle mit Ihrem Wissen, Ihrem Code und Ihrer Arbeit in das Projekt eingebracht haben – und auch weiterhin zum Erfolg des Systems beitragen. Nutzen Sie dieses stetig wachsende Gemeinschaftsprojekt als Grundlage für den Erfolg Ihrer eigenen Software.

35,000
Beitragende
180,000
Commits
Top-Projekt
in GitHub

Open-Source-Software für Unternehmen

Damit Kubernetes für Organisationen einfacher einzuführen – und für die Entwickler einfacher zu verwenden – ist, hat Microsoft die Anzahl der beteiligten Mitarbeiter an dem Open-Source-Projekt in nur drei Jahren verdreifacht. Als das Unternehmen mit den drittmeisten Beiträgen arbeitet Microsoft nun daran, Kubernetes unternehmensfreundlicher und zugänglicher zu machen, indem die aktuellsten Erkenntnisse und Best Practices aus der Arbeit mit den verschiedensten Kunden in die Kubernetes-Community eingebracht werden.

FAQ – Kubernetes

  • Kubernetes and Docker work together.

    Docker provides an open standard for packaging and distributing containerized applications. Using Docker, you can build and run containers, and store and share container images.

    Kubernetes orchestrates and manages the distributed, containerized applications that Docker creates. It also provides the infrastructure needed to deploy and run those applications on a cluster of machines.

    Learn more about Kubernetes vs. Docker
  • Bei einer Kubernetes-Bereitstellung können Sie den gewünschten Bereitstellungszustand für Ihre Anwendung beschreiben. Der Kubernetes-Planer stellt sicher, dass der tatsächliche Zustand dem gewünschten Zustand entspricht – und dass dieser Zustand beim Absturz eines oder mehrerer Pods erhalten bleibt. Kubernetes-Bereitstellungen ermöglichen Ihnen auch das konsistente Ausführen von Upgrades für Ihre Anwendungen ohne Ausfallzeiten.

    Vollständige Abhandlung dieses Themas
  • Die Bereitstellung für Kubernetes mithilfe von DevOps umfasst typischerweise ein Repository wie Git zur Versionsverwaltung. Das Repository dient als Anfang der CI/CD-Zeile. Je nachdem, welchen Ansatz Sie verwenden, lösen Änderungen im Repository Integrations-, Build-, Übergabe- und Bereitstellungsaktivitäten aus.

    Detaillierte Erklärung der Funktionsweise von AKS mit Azure DevOps
  • Kubernetes ist für verschiedene Szenarios nützlich, beispielsweise, um Anwendungen in die Cloud zu verschieben oder um Herausforderungen von Machine Learning und KI zu vereinfachen.

    Wichtige Anwendungsfälle:

  • Sehen Sie sich hierzu Best Practices und Architekturmuster an, die von den mehreren tausend technischen Mitarbeitern und Partnern, die Azure verwenden, erstellt wurden.

  • Folgen Sie diesem Lernpfad zum Thema, um das Arbeiten mit Kubernetes kennenzulernen.

Ressourcen

Sind Sie bereit? Testen Sie Kubernetes kostenlos in Azure