ELECTIVE COURSE -> not offered every semester
Learning objectives:
Students receive a basic and practical introduction to the concepts and techniques of DevOps Engineering and Kubernetes. This includes release patterns, feedback, resilience patterns and knowledge of the Kubernetes architecture, objects, Helm, etc. Students understand these and are able to explain and apply them. In addition, students know the advantages and disadvantages of using DevOps practices and Kubernetes and the associated risks. The acquired knowledge can be applied by the students in the administration and development of modern containerized IT infrastructures or for the operation of software in such IT infrastructures.
Course content:
General introduction to the topic of DevOps engineering and Kubernetes (K8s):
Definitions and basic terms and illustrative examples from everyday life esp. with regard to the importance in software engineering
DevOps principles and techniques in software engineering (automated testing, deployment pipelines, release patterns, CI/CD, feedback mechanisms, telemetry, organizational learning, safety culture, resilience patterns)
Introduction to the basics of Kubernetes
K8s objects (Pods, ReplicaSets, ConfigMaps, etc.)
Management of applications on K8s (e.g. Helm)
K8s service mesh (e.g. Istio)
Practical exercises with Kubernetes
Security aspects in dealing with K8s
Automation in modern deployment environments
Monitoring & logging in modern deployment environments