Publication in the Diário da República: Despacho n.º 13495/2022 - 18/11/2022
10 ECTS; 1º Ano, 2º Semestre, 30,0 PL + 30,0 TP + 30,0 OT , Cód. 39095.
Lecturer
- Luís Miguel Lopes de Oliveira (2)
- Renato Eduardo Silva Panda (1)(2)
(1) Docente Responsável
(2) Docente que lecciona
Prerequisites
Not applicable
Objectives
Concepts of virtualization and cloud computing.
Understanding the fundamentals of virtualization.
Knowing the infrastructure to support a cloud platform.
Know how to develop scalable solutions using cloud solutions, according to the requirements of a specific problem.
Program
1 - Basic information technology and client-server concepts
2 - Cloud computing and virtualization overview
3 - Building the foundations: learn foundational concepts such as virtualization, provisioning tools, load balancing, high availability, service discovery (in a practical way)
4 - Cloud paradigms: IaaS, PaaS, SaaS, Serverless and cia.
4.1 - Public, private and hybrid clouds
4.2 - Exploring public clouds (aws, gpc, azure)
5 - Containers and Orchestration
5.1 - Containerize apps
5.2 - Basic concepts (image, container, volume, network)
5.3 - Advanced concepts (orchestration, swarms)
6 - Elasticity concepts
Evaluation Methodology
The evaluation of the curricular unit will focus on a practical project and a defense / oral exam. The evaluation elements must include the project report, as well as a presentation/defense of the same work. The practical component has a weight of 75%, with the remaining 25% assessed in a exam.
Bibliography
- J. Kavis, M. (2014). Architecting the Cloud: Design Decisions for Cloud Computing Service Models (SaaS, PaaS, and IaaS). (Vol. --). --: Wiley
Teaching Method
Theoretical-practical classes, supported by audio-visual to introduce concepts, followed by practical examples.
Practical-laboratory classes to experiment with the introduced concepts on practical cases.
Software used in class
Virtualbox
Vagrant
Ansible
nginx
consul
PostgreSQL, repmgr or similar
Azure/AWS/Google Cloud (depending on availability)
Docker