Hinweis: Dieser Workshop wird auf Deutsch gehalten; die Schulungsunterlagen sind jedoch ausschließlich auf Englisch verfügbar.
Kubernetes hat sich zum bevorzugten Container-Orchestrator für Cloud-Native-Anwendungen entwickelt. Die Kubernetes-Community hat mittlerweile eine Fülle von Informationen zusammengetragen, die sowohl beim Einstieg in die Arbeit mit Kubernetes helfen, als auch darüber, welche Erfahrungen Anwender bei der Arbeit mit verschiedenen Workloads in der Produktion gesammelt haben. Aber Vorgehensweisen, die sich in einem Fall bewährt haben, müssen in anderen Umgebungen nicht unbedingt genauso geeignet sein. Das gilt auch für Deployment-Strategien in unterschiedlichen Anwendungsszenarien.
In diesem Hands-on-Workshop werden wir die grundlegenden Konzepte und Funktionen von Kubernetes zusammenfassen und sicherstellen, dass Sie über die Grundlagen verfügen, die Sie benötigen, um Cloud-Native-Anwendungen auf Kubernetes zu entwickeln.
Anschließend führen wir Sie in mehreren Übungen durch eine Demoanwendung, von einer simplen ersten Implementierung bis hin zur schrittweisen Verbesserung und Implementierung von Best Practices. Wir werden diese Best Practices sowie gängige Anti-Pattern für die Bereitstellung und den Betrieb von Anwendungen auf Kubernetes im Detail besprechen.
Behandelte Themen:
* Kubernetes-Architektur und Kernkomponenten
* Workloads auf Kubernetes
* Erweiterte Einsatzstrategien
* CI/CD-Integration
* Freilegen einer Anwendung
* Fehlertolerante Anwendungen
* Konfigurationsmanagement
* Verwalten von Anwendungsberechtigungen
* Logging & Monitoring
* Fehlersuche & Debugging
Die Teilnehmer werden sich hier mit Kubernetes vertraut machen und erfahren, wie erweiterte Funktionen genutzt werden können, um die Anwendungsentwicklung agiler zu gestalten, sowie die Verfügbarkeit und Nachhaltigkeit zu verbessern. Dieser Kurs konzentriert sich auf die architektonischen und operativen Aspekte des Betriebs unternehmenskritischer Anwendungen auf Kubernetes.
Zielgruppe
Dieser Workshop richtet sich an Softwareentwickler, DevOps-Ingenieure und Anwendungsarchitekten. Er ist also weniger für Systemadministratoren als für Anwendungsentwickler gedacht.
Agenda
- 08:00 - 09:00: Registration
- 09:00 - 09:15: Welcome
- Welcome Workshop overview Trainer intro Participant intros Agenda
- 09:15 - 10:15: Production Grade applications on Kubernetes
- Kubernetes overview Kubernetes architecture What do we mean by Production Grade Applications? Twelve factor applications
- 10:15 - 10:45: Effectively running workloads
- Deployments DaemonSets StatefulSets Jobs
- 10:45 - 11:15: Coffee break
- 11:15 - 11:45: Effectively running workloads
- Deployments DaemonSets StatefulSets Jobs
- 11:45 - 12:30: Exposing Applications
- Services definition ClusterIP, NodePort, LoadBalancer Internal DNS Ingress Controller, Ingress
- 12:30 - 13:30: Lunch
- 13:30 - 13:45: Exposing Applications
- Services definition ClusterIP, NodePort, LoadBalancer Internal DNS Ingress Controller, Ingress
- 13:45 - 14:00: Advanced deployment strategies
- Introduction to deployment strategies RollingUpdate Recreate Ramped Blue/Green Canary, A/B
- 14:00 - 14:45: Configuration Management
- Config Maps Secrets Environment Variables
- 14:45 - 15:00: Coffee break
- 15:00 - 15:45: Troubleshooting & Debugging
- Kubectl log/describe Handle multiple pods/containers Troubleshoot common failure scenarios
- 15:45 - 16:00: Wrap up
- Recap topics Answer questions Thank participants Distribute feedback
Technische Anforderungen:
- Die Teilnehmer benötigen einen SSH Client auf Ihren Laptops. Evtl. sollte es möglich sein Unternehmensproxies zu deaktivieren, sollte es hier zu Problemen führen.
- Unterlagen und Demo Applikation sind in Englisch
- Weitere Informationen finden Sie hier: PRODUCTION GRADE KUBERNETES
APPLICATIONS
Vorkenntnisse
* Fortgeschrittene Kenntnisse im Umgang mit Containern.
* Fortgeschrittene Kenntnisse im Umgang mit Kubernetes.
* Containerisierung von Anwendungen.
* Betrieb von Kubernetes zumindest in einer Entwicklungsumgebung.
Lernziele
Durch diesen Workshop erhalten Sie einen Überblick über die wichtigsten Kubernetes-Konzepte, haben Deployment, Aktualisierung und Bereitstellung einer Anwendung auf einem Cluster geübt. Darüber hinaus werden Sie in der Lage sein, Best Practices für produktive Anwendungen auf Kubernetes zu implementieren – und die Gründe dafür zu verstehen.
Sie lernen:
* die wichtigsten Bereiche zu verstehen, die bei der Ausführung einer Anwendung auf Kubernetes in einer Produktionsumgebung zu beachten sind.
* erweiterte Kubernetes-Funktionen zu verwenden, um eine Stateless-Anwendung effektiv auszuführen.
* mehrere Möglichkeiten zur Aktualisierung einer laufenden Anwendung kennen.
* wie Kubernetes in gängige CI/CD-Pipelines integriert werden kann.
* der externe Zugriff auf eine Anwendung verwaltet wird.
* die Anwendung von Best Practices für effektives Konfigurationsmanagement.
* die Anwendung geeigneter Sicherheitskontrollen, um eine sichere Anwendung zu gewährleisten.
* Ansätze zur Anwendungsüberwachung und -protokollierung kennen.
* die Fehlerbehebung von Problemen bei der Ausführung einer Anwendung auf Kubernetes.
// Referenten
Philipp Strube
ist Director Technology Container Solutions bei Container Solutions.
Michael Müller
ist Managing Director bei Container Solutions (DACH). Davor war er Head of IT and Cloud Innovation bei Swisscom Innovation. Mit seinem Team arbeitete er an Lösungen zu Container-Infrastrukturen und Orchestrierung, wie CoreOS, Kubernetes und Mesos und setzte DevOps-Tools wie Puppet ein. Zuvor arbeitete in verschiedenen Rollen von Operations Management bis Netzwerksicherheit in Firmen aus der Touristik, Internet-Service-Provider und Broadcasting. Sein Studium schloss er als BSc. in Computer Science an der Fachhochschule Furtwangen ab.