Course details
Code
CS-548
Name
Cloud-native Software Architectures
Program
Postgraduate
Area
Parallel and Distributed Systems
Description
Course Description
The Internet provides services to billions of users worldwide. News sites, social media networks, e-shops, government agencies, and so on, must be online around the clock, no matter the load. As such, contemporary Internet-scale applications are deployed in the Cloud. Their internal architectures have evolved into complex webs of "microservices", physically dispersed around the globe, using virtualized resources and software components supplied by the cloud providers. In this course we explore the structure of large-scale Internet services and focus on the techniques and tools used to build and deploy modern-day applications in cloud platforms, including containers and "serverless" functions. Through a series of hands-on sessions and assignments students are guided into mastering the advanced usage and understanding the working internals of Kubernetes, which has become the de facto standard for abstract, cross-cloud service composition. Additionally, we expand on how Kubernetes is actually used by big cloud providers, such as Amazon and Google, and how deployed container-based microservice architectures can utilize respective supporting services and APIs to achieve uninterrupted operation at a global-scale.
Goals
The aim of the course is to provide a substantial understanding of how to build, compile and execute a complex Internet-scale application in the Cloud, which includes:
- Familiarity with the distinctive specifications of both large-scale applications and the Cloud environment.
- Techniques and tools for writing applications, managing library requirements, and integrating them into containers.
- The design and implementation of micro-service architectures and the utilization of Cloud service offerings, such as serverless functions.
- The advanced use of a modern cloud orchestration application platform, such as Kubernetes, through the understanding of its internal structure.
ECTS
6
Prerequisites
CS-335, CS-345
Course website
Course email
hy548 AT csd DOT uoc DOT grShow email