Cloud Computing Applications and Services

Objectives

  • Understand the internal organization and management of Cloud Computing infrastructure and services.
  • Understand the concepts of scalability, dependability and security for distributed applications and services.
  • Acquire expertise on virtualization technologies, for example virtual machines and containers, and on the key concepts of isolation and Linux control groups.
  • Acquire knowledge about large-scale distributed data management (e.g., file systems, object storage systems), while focusing on key features for efficient storage and protection of critical data.
  • Perform application setup and installation in a distributed environment, while considering key properties such as performance, dependability and security.
  • Implement distributed applications monitoring and evaluation in the cloud.
  • Measure the performance of distributed cloud applications.

Program

  • Overview of cloud computing services and their various abstractions (IaaS, PaaS and SaaS).
  • Scalability, elasticity, and security of cloud computing applications and services.
  • Virtualization and isolation of cloud computing computational resources for (virtual machines and containers).
  • Management of critical and sensitive data in cloud computing (file systems, object stores).
  • Provisioning, deployment and management of distributed applications (Infrastructure-as-a-code).
  • Monitoring of cloud computing infrastructure and services.
  • Experimental evaluation of distributed applications and services.

Bibliography

  • Raj Jain, The Art of Computer Systems Performance Analysis, Wiley, 1991
  • T. Erl, R. Puttini e 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

Updated: