Cloud Native Applications on Kubernetes

Course
  1. Duration: September 06, 2023 - December 12, 2023

  2. Read more in courses.cs.ut.ee
  3. Course Zoom, Course Slack and Study Information System (SIS)

Containerization technologies and orchestration solutions like Kubernetes are the cornerstones of building efficient microservice-based scalable and reliable applications. This course deals with the nature, design, and development of container-based systems and cloud-native services. The knowledge acquired in the course is hardened through practical tasks.

The goals of the course

  • Give students knowledge and understanding of the nature of containerization, container orchestration solutions and using them to design cloud-native systems.
  • Provide hands-on experience in managing Kubernetes services, deployments, and creating cloud-native applications.
  • Introduce recent developments in the domain

Prerequisites

Students who take this course should be:

  • Comfortable with Linux
    • Linux command line
    • Using VMs
  • Comfortable with different programming and configuration languages
    • Python
    • Some JavaScript
    • Web programming
      • External APIs
      • REST
    • YAML (and JSON)

NB! Using a personal laptop is necessary in the labs. If you do not have one, you should be able to lend laptop from the institute.

Course communication

  • Course Zoom
    • Used for Lecture broadcast.
  • Course Slack
    • Used for course discussion, lab support.
    • You have to be logged in and student of the course to see the link here. (Contact Pelle if you can not see the link)
  • Study Information System (SIS)
    • Course announcements will be sent through SIS.
      • Make sure your email is configured in SIS so you do not miss any important information

Learning Outcomes

  • The architecture and building blocks of Kubernetes
  • How to build microservices using Kubernetes
  • How to configure, administer, and deploy services
  • How to test, scale, and monitor Kubernetes applications
  • How to design reliable cloud-native applications