Cloud Computing - Implementazione e deployment di servizi Cloud

OpenStack è un progetto open source che fornisce un'infrastruttura in forma di servizio - Infrastructure as a Service (IaaS).

OpenStack nasce da una partnership tra RackSpace e la NASA, ma attualmente è supportato da più di 200 imprese, tra cui AT&T, AMD, Cisco, Dell, IBM, Nec, VMWare, Yahoo!, Suse Linux. La piattaforma è modulare ed è costituita dalle seguenti componenti:

  • OpenStack Compute (nome in codice Nova): è la componente principale dellinfrastruttura. Scritta in Python, fornisce scalabilità orizzontale indipendentemente da requisiti hardware e software e può integrarsi con sistemi legacy e tecnologie 3rd party.

  • OpenStack Object Storage (nome in codice Swift): sistema di gestione ridondante dei dati. Questi vengono memorizzati su più drives dislocati sui servers del data center. Il software si occupa della gestione delle repliche e dell'integrità dei dati.

  • OpenStack Block Storage (nome in codice Cinder): fornisce dispositivi di storage a livello di blocco, gestendo la creazione, la connessione e la disconnessione dai servers. 

  • OpenStack Networking (nome in codice Neutron): consente agli amministratori e agli utenti la gestione di reti ed indirizzi IP. Assicura che la rete non costituisca il fattore limitante del cloud.

  • OpenStack Dashboard (nome in codice Horizon): fornisce un'interfaccia grafica che permette ad amministratori ed utenti di accedere, fornire ed automatizzare la gestione delle risorse e dei servizi cloud.

  • OpenStack Identity Service (nome in codice Keystone): fornisce una directory centralizzata di utenti, ognuno associato all'insieme dei servizi cloud ai quali può accedere.

  • OpenStack Image Service (nome in codice Glance): consente la discovery, la registrazione e la delivery di servizi relativi alle immagini dei dischi e dei servers. Consente anche di mantenere e catalogare i backups.

Le attività di progetto in ambito di tesi, tesina o internato, prevedono la sperimentazione con l'installazione di OpenStack sul sistema cluster del Dipartimento, al fine di sviluppare componenti aggiuntivi per la stessa piattaforma OpenStack e applicazioni Cloud-based.