Kubernetes - Orchestrierung im Detail
(TDE-DOSA)
Container-Plattformen wie Docker finden sich in vielen Unternehmen wieder. Dabei ist es wichtig, eine Container-Plattform zu haben, welche es sowohl den Administratoren als auch den Nutzern dieser Plattformen ermöglicht, ihre Anwendungen skalieren zu können und eine effiziente Lösung zum Management der Container-Landschaft zu bieten. Hier kommen Produkte wie Kubernetes zum Einsatz. Im Verlaufe dieses Kurses soll eine Kubernetes Plattform aufgebaut werden und die technischen Möglichkeiten der Plattform diskutiert werden. Der Kurs liefert einen tiefen Einblick in die Installation, Konfiguration und den grundlegenden Betrieb von Kubernetes.
Kursinhalt
- Überblick und Architektur von Kubernetes
- Installation von Kubernetes
- Betrieb und Konfiguration
- Arbeiten mit kubectl und kubeadm
- Pod, Deployments und ReplicaSets
- Ingress und Services
- Secrets und ConfigMaps
- StatefulSets, CronJobs, DaemonSets
- Netzwerk mit CNI und CoreDNS
- Ausblick
Zielgruppe
Der Kurs richtet sich an Teilnehmer, die einen Überblick über Features und Funktionsweise von Kubernetes erhalten möchten und sich für die technischen Aspekte der Implementierung und des Betriebs interessieren.
Voraussetzungen
Grundkenntnisse in Linux sowie grundlegende Netzwerk- und IT-Kenntnisse werden vorausgesetzt. Darüber hinaus sollten die Teilnehmer über das Wissen verfügen, das im Kurs Docker Fundamentals – Einstieg in die Docker-Welt vermittelt wird.
Inhaltsverzeichnis
1 Kubernetes
- 1.1 Orchestrierung von Infrastruktur und Applikationen
- 1.1.1 Skripte, Tools und Lifecycle von Apps in der Cloud
- 1.1.2 DevOps
- 1.1.3 Stateless Applications
- 1.1.4 Aufbau von Applikationen
- 1.1.5 Microservices
- 1.2 Kubernetes
- 1.3 Kubernetes Architektur
- 1.3.1 Kubernetes Design und High Availability
- 1.3.2 CNI
2 Installation von Kubernetes
- 2.1 Kubeadm
- 2.2 Initialisierung eines Clusters
- 2.2.1 Cluster erstellen / All Nodes
- 2.3 kubectl - das Clustermanagment-Tool
- 2.3.1 KubeConfig für kubectl
- 2.3.2 Zugriff und Verwaltung von Kubernetes
- 2.4 Ressourcen-Verwaltung mit kubectl
3 Kubernetes Ressourcen
- 3.1 Namespace
- 3.2 Pod
- 3.2.1 Arbeiten mit Pods
- 3.3 Deployment
- 3.3.1 ReplicaSet
- 3.3.2 Selector und Labels
- 3.3.3 Selector: Match-Kriterien
- 3.4 Services
- 3.4.1 ClusterIP
- 3.4.2 NodePort
- 3.4.3 LoadBalancer
- 3.4.4 External/ExternalName
- 3.4.5 Service ohne Selector
- 3.4.6 Ingress
- 3.4.7 Kubernetes-Netzwerk im Detail
- 3.4.8 VXLAN-Tunnel
- 3.4.9 CNI-Plugins in der Übersicht
- 3.5 Storage und Volumes
- 3.6 Secrets
- 3.7 ConfigMaps
- 3.8 Liveliness und Readiness
- 3.9 Resource Quota
- 3.10 StatefulSet, CronJob und Batch-Jobs
- 3.10.1 StatefulSet
- 3.10.2 CronJob
- 3.10.3 Batch-Jobs
- 3.11 RBAC
4 Monitoring und HELM
- 4.1 Monitoring
- 4.1.1 Service-Meshes
- 4.1.2 Prometheus mit Kubernetes
- 4.1.3 Prometheus
- 4.2 Helm
- 4.2.1 Helm-Charts
- 4.2.2 Arbeiten mit Helm