Celem zajęć jest przedstawienie tematów związanych z systemami działającymi na
nowoczesnych platformach public cloud (przede wszystkim Amazon Web Services,
Google Cloud Platform i Microsoft Azure). Znaczną część semestru poświęcimy
zrozumieniu koncepcji umożliwiających budowanie systemów o wysokiej
dostępności i skalowalności. Omawiane będą zarówno tematy związane z
architekturą aplikacji, procesami umożliwiającymi jej rozwój, jak również całą
infrastrukturą umożliwiającą działanie systemu (wybór bazy danych i jej
przygotowanie, komunikacja między usługami, sieć wewnętrzna, dystrybuowanie
ruchu od użytkowników, globalny zasięg aplikacji).
Przedmiot ma na celu wyjaśnienie zależności pomiędzy wieloma różnymi aspektami
związanymi z uruchamianiem systemów w chmurze, stąd przydadzą się podstawy z
bardzo wielu różnych przedmiotów, takich jak: sieci komputerowe, algorytmy i
struktury danych czy bazy danych.
Technologie, produkty i koncepcje, które w jakiejś formie pojawią się na
zajęciach: AWS, GCP, Azure, Kubernetes, Docker, mikroserwisy, configuration
management (ansible, chef, puppet, saltstack, terraform), site reliability
engineering, incident management, monitoring, hurtownia danych, wysoka
dostępność i skalowalność, load balancing.
Opis przedmiotu przygotował Mateusz Markiewicz. Przedmiot jest prowadzony
wspólnie z Rafałem Cieślakiem. Opiekunem przedmiotu jest T. Wierzbicki.