Il corso introduce le basi teoriche e pratiche delle tecnologie di virtualizzazione allo stato dell'arte. Nello specifico. il corso si focalizza su diverse tipologie della virtualizzazione, come la virtualizzazione a livello Storage, Sistema Operativo, Applicativo ed Enterprise.
Il corso ha una forte connotazione pratica, allo scopo di portare lo studente a padroneggiare tecnologie attuali e a costruire autonomamente un'architettura virtualizzata reale.
Il corso affronterà le tematiche di virtualizzazione delle risorse in sistemi informativi complessi. Verranno presentate le soluzioni metodologiche e architetturali più recenti. Successivamente verrà studiato l'approccio basato sul cloud computing analizzando sia aspetti formali che soluzioni commerciali.
1. Capire le basi teoriche legate alla virtualizzazione
2. Conoscere i diversi tipi di virtualizzazione e la loro pervasivita' degli scenari applicativi reali
3. Apprendere ed utilizzare le principali tecnologie e tool per creare sistemi virtualizzati
4. Definire ed implementare un sistema virtualizzato reale
Sistemi operativi, reti di calcolatori e basi di programmazione e scripting.
Lezioni frontali teoriche e pratiche, con una distribuzione equa (50%-50%).
1. Introduzione e basi della virtualizzazione e sue applicazioni: hypervisor, Virtualizzazione della CPU ed dell'I/O, basi architetturali del Cloud e del Fog Computing. Introduzione a KVM
2. Virtualizzazione a livello di Sistema Operativo: Basi teoriche e studio approfondito della suite Docker
3. Virtualizzazione a livello di Storage: Virtualizzazione File-level e Block-level, file-system e storage distribuiti (glusterfs, fuse), SDN.
4. Virtualizzazione a livello Enterprise: basi di load balancing e di fault tolerance distribuito, live migration su KVM, Docker Swarm.
Appunti e link ad articoli scientifici e manuali saranno fornite dal docente durante il corso.
Ricevimento: Su appuntamento.
Le lezioni inizieranno il 18 settembre, ora e aula come da orario ufficiale.
Progetto individuale con discussione.
Valutazione della comprensione della materia attraverso la discussione e l'approfondimento critico dell'attivita' progettuale.