Departamento de Informática (UM)

Página de Unidade Curricular 🇬🇧

DesignaçãoCódigoCursoRegimeRegente

Aplicações e Serviços de Computação em Nuvem

16779 [ME94ME9400006538]

Mestrado em Cibersegurança [MCS]

S1

João Tiago Medeiros Paulo

Objetivos

O conteúdo programático está organizado de forma a providenciar aos alunos, numa primeira fase, os conceitos fundamentais sobre a organização e características atuais de infraestruturas e serviços de computação em nuvem.
Dois conceitos fundamentais para garantir as propriedades anteriores são a virtualização e gestão de dados das aplicações. Desta forma o conteúdo programático contempla o ensino de conceitos fundamentais em cada um destes tópicos, incluído o isolamento de recursos computacionais e de armazenamento, o qual é crítico para a segurança e desempenho de serviços de computação em nuvem.
Ainda, a instalação de aplicações escaláveis e configuradas corretamente de forma a reduzir falhas operacionais e de segurança, rapidamente deixa de ser praticável se feita de forma manual. Desta forma a unidade curricular irá abordar o tópico de aprovisionamento e instalação de aplicações serviços de computação em Nuvem.

Programa

1. Visão geral de serviços de computação em Nuvem e das várias abstrações (IaaS, PaaS e SaaS)
2. Escalabilidade, elasticidade, e segurança de aplicações e serviços para computação em Nuvem
3. Virtualização e isolamento seguro de recursos computacionais de computação em Nuvem (máquinas virtuais e containers)
4. Gestão de dados/armazenamento críticos e sensíveis para computação em Nuvem (sistemas de ficheiros, object stores)
5. Aprovisionamento, instalação e gestão de aplicações distribuídas (Infrastructure-as-a-code)
6. Monitorização de infraestruturas e serviços de computação em Nuvem
7. Avaliação experimental de aplicações e serviços distribuídos

Bibliografia

Raj Jain. The Art of Computer Systems Performance Analysis. Wiley, 1991.

T. Erl, R. Puttini, Z. Mahmood. Cloud Computing: Concepts, Technology and Architecture. Prentice Hall, 2013.

Kief Morris. Infrastructure as Code - Managing Servers in the Cloud. O'Reilly, 2016.

Jennifer Petoff, Niall Richard Murphy, Chris Jones, Betsy Beyer. Site Reliability Engineering: How Google Runs Production Systems, 1st Edition. O’Reilly, 2016.

M. Kleppmann. Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems. O’Reilly, 2017.

Resultados da aprendizagem

- Compreender a organização interna e gestão de infraestruturas e serviços de Computação em Nuvem.
- Compreender conceitos de escalabilidade, confiabilidade e segurança de aplicações e serviços distribuídos.
- Adquirir conhecimentos sobre tecnologias de virtualização, por exemplo máquinas virtuais e containers, e sobre conceitos chave de segurança como isolamento e grupos de controlo Linux.
- Adquirir conhecimentos sobre gestão/armazenamento de dados distribuído e de grande escala, por exemplo sistemas de ficheiros, sistemas orientados a objetos, focando também nas funcionalidades que permitem proteger dados críticos.
- Executar a configuração e instalação de aplicações num ambiente distribuído, considerando propriedades de desempenho, confiabilidade e segurança das aplicações.
- Implementar a monitorização e avaliação de aplicações distribuídas na nuvem.
- Avaliar o desempenho de aplicações distribuídas na nuvem.

Método de avaliação

A componente de avaliação terá uma componente teórica com um peso entre 40 e 60% e uma componente prática com trabalho em grupo com um peso entre 40 e 60%.

Funcionamento

Turno: PL 1; Docente: Cláudia Vanessa Martins Brito; Dep.: DI; Horas: 30.

[ Outras UCs do Departamento ]