Sei sulla pagina 1di 33

UNIVERSIT DEGLI STUDI DI TRIESTE FACOLT DI SCIENZE MATEMATICHE, FISICHE E NATURALI CORSO DI LAUREA MAGISTRALE IN INFORMATICA CURRICULUM INGEGNERIA

INFORMATICA

PROGETTO E REALIZZAZIONE DI UN SISTEMA PER LA GESTIONE ED IL MONITORAGGIO DI RISORSE VIRTUALI IN AMBIENTE CLOUD
Svolta presso Esteco Laureando: Giuseppe CHECHILE Relatore: Prof. Eric MEDVET Correlatore: Ing. Livio TENZE ANNO ACCADEMICO 2010-2011

Contesto
Workflow scientifici:

Molteplici flussi di lavoro Risultati in tempo reale Riproducibilit scientifica Sistema distribuito Grid computing

Infrastruttura utilizzata:

Cloud computing
Cloud computing is a model for enabling ubiquitous, convenient, on-demand network ubiquitous convenient access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction. interaction The NIST Definition of Cloud Computing

Cloud computing - caratteristiche

Cloud computing - caratteristiche


On-demand self-service

Cloud computing - caratteristiche


On-demand self-service Broad network access

Cloud computing - caratteristiche


On-demand self-service Broad network access Resource pooling

Cloud computing - caratteristiche


On-demand self-service Broad network access Resource pooling Rapid elasticity

Cloud computing - caratteristiche


On-demand self-service Broad network access Resource pooling Rapid elasticity Measured service

Cloud computing - implicazioni


Risorse come un servizio Ridotta necessit di manutenzione Utenza pu ignorare l'implemetazione del sitema Risorse illimitate Pianificazione investimenti

Cloud computing - classificazione

Cloud computing - classificazione


Service models:

Software as a service (SaaS) Platform as a service (PaaS) Infrastructure as a service (IaaS)

Cloud computing - classificazione


Service models:

Software as a service (SaaS) Platform as a service (PaaS) Infrastructure as a service (IaaS) Private cloud Community cloud Public cloud Hybrid cloud

Deployment models:

Cloud computing - classificazione

Scenario
Esteco

EUCALYPTUS AMAZON

OPEN NEBULA

Problema
Necessit:

Controllare un sistema cloud IaaS multipiattaforma Monitorare le risorse Utilizzo strumenti del produttore del servizio

Soluzione esistente:

Diverse tipologie di risorse Diversi provider Mancanza monitoring interno

Obbiettivo
Soluzione:

Utilizzo strumenti del produttore

Utilizzo unico strumento

Obbiettivo: Progetto e realizzazione di un sistema per il controllo ed il monitoraggio di un sistema cloud IaaS multipiattaforma

Architettura sistema
Eucalyptus OpenNebula
Virtual machine Virtual machine Virtual machine Virtual machine

Amazon
Virtual machine Virtual machine

Architettura sistema
Eucalyptus OpenNebula
Virtual machine Virtual machine Virtual machine Virtual machine

Amazon
Virtual machine Virtual machine

Applicazione web

Architettura sistema
Eucalyptus OpenNebula
Virtual machine Virtual machine Virtual machine Virtual machine

Amazon
Virtual machine Virtual machine

Applicazione web

Architettura sistema
Eucalyptus OpenNebula
Virtual machine Virtual machine Virtual machine Virtual machine

Amazon
Virtual machine Virtual machine

Interfaccia cloud

Applicazione web

Architettura sistema
Eucalyptus Virtual machine OpenNebula
Virtual machine Virtual machine Virtual machine OS Virtual machine

Amazon
Virtual machine Virtual machine

Interfaccia cloud

Applicazione web

Architettura sistema
Eucalyptus Virtual machine OpenNebula
Virtual machine Virtual machine Virtual machine OS App. Monitor Virtual machine

Amazon
Virtual machine Virtual machine

Interfaccia cloud

Applicazione web

WebEstecoCloud
Consente all'utente di eseguire operazioni sulle virtual machine:

Creazione e terminazione Sospensione e riattivazione Monitoraggio

Applicazione web

EstecoSimpleCloud
Libreria per accesso alle diverse piattaforme di cloud computing Ho utilizzato un'astrazione logica del sistema:

OpenNebula

Eucalyptus

Amazon

Image Instance Cloud


Interfaccia cloud

Applicazione web

MonitorEstecoCloud
Agente per il monitoraggio del sistema operativo Raccoglie informazioni su:

Virtual machine OS App. Monitor

Tipo di sitema operativo Occupazione RAM e CPU Processi

Permette la terminazione dei processi in esecuzione

Interfaccia cloud

Applicazione web

MonitorEstecoCloud - Prestazioni
L'esecuzione di MonitorEstecoCloud non deve compromettere il normale funzionamento del sistema operativo. Il funzionamento dell'agente di monitoraggio caratterizzato da diversi parametri tra cui:

Periodo di campionamento Dimensione dello storico Periodo di aggiornamento dello storico

Sono stati effettuati dei test per stabilire quali siano i vincoli sui valori di questi parametri.

MonitorEstecoCloud - Prestazioni

Utilizzo della memoria RAM e della CPU di MonitorEstecoCloud in funzione del periodo di campionamento.

MonitorEstecoCloud - Prestazioni

Utilizzo medio del processore di MonitorEstecoCloud in funzione del periodo di campionamento.

MonitorEstecoCloud - Prestazioni

Utilizzo della memoria RAM e della CPU di MonitorEstecoCloud in funzione della dimensione dello storico.

MonitorEstecoCloud - Prestazioni

Utilizzo medio della memoria RAM di MonitorEstecoCloud in funzione della dimensione dello storico.

Tecnologie utilizzate
Java Servlet Javascript HTML 5 & CSS 3 Java Management Extensions (JMX) API:

Java OCA JClouds Sigar

Conclusioni
Il sistema di monitoraggio e controllo stato sviluppato in compatibilit con:

Piattaforme di cloud Eucalyptus, OpenNebula ed Amazon Sistemi operativi Linux e Microsoft Windows Estensione della compatibilit Inserimento nuove funzionalit di controllo

Sviluppi futuri: