Kapitel 9
Container-Plattformen
Orchestrierung beruht auf der Formulierung von gewünschten Betriebszuständen und Abhängigkeiten zwischen den Betriebskomponenten einer Anwendung mittels sogenannter Blueprints. Ein Blueprint beschreibt somit die Betriebskomponenten (zumeist Container), deren Betriebsanforderungen (z.B. Bedarf an RAM, CPU-Anteilen) sowie die angebotenen und benötigten Schnittstellen. Der Cluster-Orchestrierer übersetzt diese dann in Steuerungsaktivitäten. Diese Steuerungsaktivitäten werden dabei durch einen Regelkreis ausgelöst, der kontinuierlich den Desired State mit dem Current State von Betriebskomponenten im Sinne einer kontinuierlichen Feedback-Schleife vergleicht.
Die verbreiteste so arbeitende Orchestrierungs-Plattform ist Kubernetes, die unter anderem auf den jahrzehntelangen Erfahrungen von Google beim Betrieb von Container Management Plattformen beruht.
Slides und Screencasts
Unit | Screencast (YouTube) | Slides |
---|---|---|
05.1 | Scheduling | PDF, PPTX |
05.2 | Orchestrierung | PDF, PPTX |
05.3 | Kubernetes, Teil I (Architektur, Ressourcen) | PDF, PPTX |
05.4 | Kubernetes, Teil II (Scheduling, Health Checking) | PDF, PPTX |
05.5 | Kubernetes, Teil III (Workloadarten) | PDF, PPTX |
05.6 | Kubernetes, Teil IV (Services, Persistenz und Isolation) | PDF, PPTX |
Labs
Inhalte | Downloads | |
---|---|---|
Demo | Blueprints
|
Git |
Demo | Kubernetes Blueprints
|
Git |
Lab 06 | Übungen zu Kubernetes
|
Git |
Container Plattformen
Neben Kubernetes gibt es weitere Container Plattformen. Die Aufstellung ist alphabetisch und ohne Anspruch auf Vollständigkeit.
Container Plattform | Anbieter | Anmerkungen |
---|---|---|
Docker Swarm | Docker | |
Kubernetes | CNCF | Von Google initiiert |
Mesos | Apache |
Anmerkungen sowie Ergänzungsvorschläge werden gerne über folgenden Kanal angenommen und berücksichtigt.
Kubernetes Distributionen
Kubernetes hat sich als De-Facto-Standard im Bereich der Container Orchestrierung durchgesetzt. Ähnlich wie bei Linux gibt es aber nicht DAS Kubernetes. Vielmehr gibt es eine Vielzahl an Distributionen mit teilweise zueinander inkompatiblen Erweiterungen. Die Aufstellung ist alphabetisch und ohne Anspruch auf Vollständigkeit.
Kubernetes Distribution | Anbieter | Anmerkungen |
---|---|---|
Anthos | ||
Charmed Kubernetes | Canonical | |
Cloud Foundry | Cloud Foundry | |
K3s | Rancher | Leichtgewichtige Distribution (Edge Machine) |
Kubesphere | Kubesphere | |
MicroK8s | Canonical | Leichtgewichtige Distribution (Multi Machine) |
Minikube | Kubernetes | Leichtgewichtige Distribution (Single Machine) |
OpenShift | Red Hat | |
Tanzu | VMWare | vSphere Infrastrukturen |
Rancher 2 | Rancher | Automatisiertes Deployment von Kubernetes Clustern |
SUSE Rancher | Suse | Kubernetes-Verwaltung für mehrere Cluster |
Anmerkungen sowie Ergänzungsvorschläge werden gerne über folgenden Kanal angenommen und berücksichtigt.
Kubernetes IDEs
Zur besseren Interaktion mit Kubernetes haben sich Desktop- und Web-basierte Entwicklungsumgebungen etabliert. Hier ein paar Beispiele:
Kubernetes IDE | Anbieter | Einsatzzweck |
---|---|---|
Aptakube | Sumbit Labs | Kubernetes Desktop UI |
Headlamp | Headlamp Authors | Kubernetes Web UI |
K9s | Imhotep Software | Kubernetes CLI |
Lens | Mirantis | Kubernetes Desktop UI |
Octant | VMware | Kubernetes Web Interface |
OpenLens | Lens Team | Kubernetes Desktop UI, Open Source Version von Lens |
Anmerkungen sowie Ergänzungsvorschläge werden gerne über folgenden Kanal angenommen und berücksichtigt.
Kubernetes Tools
Rund um Kubernetes hat sich ein reiches Ökosystem an vielfältigen Tools gebildet. Eine sehr umfangreiche Liste findet sich hier. Die folgende Aufstellung umfasst nur eine minimale Auswahl weiterer hilfreicher Tools.
Kubernetes Tools | Anbieter | Einsatzzweck |
---|---|---|
Keel | AppScension | Auto-Updates von Helm-, DaemonSet-, StatefulSet- und Deployment- Installationen |
kubeadm | Kubernetes | Kommandozeilenprogramm zur Installation und Konfiguration von Kubernetes Clustern |
kubectl | Kubernetes | Kommandozeilenprogramm zur Steuerung von Kubernetes |
krew | Kubernetes SIGS | Plugin Manager zur Installation von mehr als 150 kubectl Plugins |
kudo | kudobuilder | KUDO ist ein Toolkit, mit dem sich Kubernetes-Operatoren einfach erstellen und ausführen lassen |
helm | Linux Foundation | Package Manager |
kiosk | Loft Labs | Multi-Tenancy Erweiterung |
Starboard | Aquasecurity | Security Erweiterungen |
Anmerkungen sowie Ergänzungsvorschläge werden gerne über folgenden Kanal angenommen und berücksichtigt.