73 resultados para Elasticity Virtualizzazione Scalability Onit Azure AWS Microsoft Cloud Computing
Resumo:
Il progresso scientifico e le innovazioni tecnologiche nei campi dell'elettronica, informatica e telecomunicazioni, stanno aprendo la strada a nuove visioni e concetti. L'obiettivo della tesi è quello d'introdurre il modello del Cloud computing per rendere possibile l'attuale visione di Internet of Thing. Nel primo capitolo si introduce Ubiquitous computing come un nuovo modo di vedere i computer, cercando di fare chiarezza sulla sua definizione, la sua nascita e fornendo un breve quadro storico. Nel secondo capitolo viene presentata la visione di Internet of Thing (Internet delle “cose”) che si avvale di concetti e di problematiche in parte già considerate con Ubiquitous computing. Internet of Thing è una visione in cui la rete Internet viene estesa agli oggetti di tutti i giorni. Tracciare la posizione degli oggetti, monitorare pazienti da remoto, rilevare dati ambientali sono solo alcuni esempi. Per realizzare questo tipo di applicazioni le tecnologie wireless sono da considerare necessarie, sebbene questa visione non assuma nessuna specifica tecnologia di comunicazione. Inoltre, anche schede di sviluppo possono agevolare la prototipazione di tali applicazioni. Nel terzo capitolo si presenta Cloud computing come modello di business per utilizzare su richiesta risorse computazionali. Nel capitolo, vengono inizialmente descritte le caratteristiche principali e i vari tipi di modelli di servizio, poi viene argomentato il ruolo che i servizi di Cloud hanno per Internet of Thing. Questo modello permette di accelerare lo sviluppo e la distribuzione di applicazioni di Internet of Thing, mettendo a disposizione capacità di storage e di calcolo per l'elaborazione distribuita dell'enorme quantità di dati prodotta da sensori e dispositivi vari. Infine, nell'ultimo capitolo viene considerato, come esempio pratico, l'integrazione di tecnologie di Cloud computing in una applicazione IoT. Il caso di studio riguarda il monitoraggio remoto dei parametri vitali, considerando Raspberry Pi e la piattaforma e-Health sviluppata da Cooking Hacks per lo sviluppo di un sistema embedded, e utilizzando PubNub come servizio di Cloud per distribuire i dati ottenuti dai sensori. Il caso di studio metterà in evidenza sia i vantaggi sia le eventuali problematiche che possono scaturire utilizzando servizi di Cloud in applicazioni IoT.
Resumo:
Mobile devices are now capable of supporting a wide range of applications, many of which demand an ever increasing computational power. To this end, mobile cloud computing (MCC) has been proposed to address the limited computation power, memory, storage, and energy of such devices. An important challenge in MCC is to guarantee seamless discovery of services. To this end, this thesis proposes an architecture that provides user-transparent and low-latency service discovery, as well as automated service selection. Experimental results on a real cloud computing testbed demonstrated that the proposed work outperforms state of-the-art approaches by achieving extremely low discovery delay.
Resumo:
Il Cloud computing è probabilmente l'argomento attualmente più dibattuto nel mondo dell'Information and Communication Technology (ICT). La diffusione di questo nuovo modo di concepire l'erogazione di servizi IT, è l'evoluzione di una serie di tecnologie che stanno rivoluzionando le modalit à in cui le organizzazioni costruiscono le proprie infrastrutture informatiche. I vantaggi che derivano dall'utilizzo di infrastrutture di Cloud Computing sono ad esempio un maggiore controllo sui servizi, sulla struttura dei costi e sugli asset impiegati. I costi sono proporzionati all'eettivo uso dei servizi (pay-per-use), evitando dunque gli sprechi e rendendo più efficiente il sistema di sourcing. Diverse aziende hanno già cominciato a provare alcuni servizi cloud e molte altre stanno valutando l'inizio di un simile percorso. La prima organizzazione a fornire una piattaforma di cloud computing fu Amazon, grazie al suo Elastic Computer Cloud (EC2). Nel luglio del 2010 nasce OpenStack, un progetto open-source creato dalla fusione dei codici realizzati dall'agenzia governativa della Nasa[10] e dell'azienda statunitense di hosting Rackspace. Il software realizzato svolge le stesse funzioni di quello di Amazon, a differenza di questo, però, è stato rilasciato con licenza Apache, quindi nessuna restrizione di utilizzo e di implementazione. Oggi il progetto Openstack vanta di numerose aziende partner come Dell, HP, IBM, Cisco, e Microsoft. L'obiettivo del presente elaborato è quello di comprendere ed analizzare il funzionamento del software OpenStack. Il fine principale è quello di familiarizzare con i diversi componenti di cui è costituito e di concepire come essi interagiscono fra loro, per poter costruire infrastrutture cloud del tipo Infrastructure as a service (IaaS). Il lettore si troverà di fronte all'esposizione degli argomenti organizzati nei seguenti capitoli. Nel primo capitolo si introduce la definizione di cloud computing, trattandone le principali caratteristiche, si descrivono poi, i diversi modelli di servizio e di distribuzione, delineando vantaggi e svantaggi che ne derivano. Nel secondo capitolo due si parla di una delle tecnologie impiegate per la realizzazione di infrastrutture di cloud computing, la virtualizzazione. Vengono trattate le varie forme e tipologie di virtualizzazione. Nel terzo capitolo si analizza e descrive in dettaglio il funzionamento del progetto OpenStack. Per ogni componente del software, viene illustrata l'architettura, corredata di schemi, ed il relativo meccanismo. Il quarto capitolo rappresenta la parte relativa all'installazione del software e alla configurazione dello stesso. Inoltre si espongono alcuni test effettuati sulla macchina in cui è stato installato il software. Infine nel quinto capitolo si trattano le conclusioni con le considerazioni sugli obiettivi raggiunti e sulle caratteristiche del software preso in esame.
Resumo:
Il presente lavoro è uno studio sulle diverse proposte in letteratura per ovviare alle problematiche di interoperabilità tra piattaforme di virtualizzazione eterogenee, ovvero di diversi produttori. Al giorno d'oggi non sono stati definiti con successo degli standard opportuni per cui le soluzioni presentate sono molto diverse tra di loro. Lo scopo del lavoro è quello di analizzare le proposte e, in base ad uno studio approfondito, stabilire qual è quella migliore. Successivamente si vuole presentare il caso di studio di una piattaforma che si basa su uno strato virtuale che può essere eterogeneo. Si vuole evidenziare come nei sistemi complessi garantire interoperabilità comporta garantire anche una vasta serie di altri servizi necessari alla consistenza del sistema.
Resumo:
Uno dei temi più discussi ed interessanti nel mondo dell’informatica al giorno d’oggi è sicuramente il Cloud Computing. Nuove organizzazioni che offrono servizi di questo tipo stanno nascendo ovunque e molte aziende oggi desiderano imparare ad utilizzarli, migrando i loro centri di dati e le loro applicazioni nel Cloud. Ciò sta avvenendo anche grazie alla spinta sempre più forte che stanno imprimendo le grandi compagnie nella comunità informatica: Google, Amazon, Microsoft, Apple e tante altre ancora parlano sempre più frequentemente di Cloud Computing e si stanno a loro volta ristrutturando profondamente per poter offrire servizi Cloud adeguandosi così a questo grande cambiamento che sta avvenendo nel settore dell’informatica. Tuttavia il grande movimento di energie, capitali, investimenti ed interesse che l’avvento del Cloud Computing sta causando non aiuta a comprendere in realtà che cosa esso sia, al punto tale che oggi non ne esiste ancora una definizione univoca e condivisa. La grande pressione inoltre che esso subisce da parte del mondo del mercato fa sì che molte delle sue più peculiari caratteristiche, dal punto di vista dell’ingegneria del software, vengano nascoste e soverchiate da altre sue proprietà, architetturalmente meno importanti, ma con un più grande impatto sul pubblico di potenziali clienti. Lo scopo che mi propongo con questa tesi è quello quindi di cercare di fare chiarezza in quello che è il mondo del Cloud computing, focalizzandomi particolarmente su quelli che sono i design pattern più utilizzati nello sviluppo di applicazioni di tipo cloud e presentando quelle che oggi rappresentano le principali tecnologie che vengono utilizzate sia in ambito professionale, che in ambito di ricerca, per realizzare le applicazioni cloud, concentrandomi in maniera particolare su Microsoft Orleans.
Resumo:
L'elasticità è un concetto fondamentale nell'ambito del cloud computing, ma propone problemi di coordinazione che, se non compresi nella loro natura, rischiano di renderla inefficiente. Tramite il concetto di “elasticità consapevole della coordinazione” (coordination-aware elasticity), in questa tesi si discute come si possa espandere il linguaggio per l’elasticità cloud SYBL in modo che possa eseguire alcune funzioni elastiche tramite il linguaggio di coordinazione ReSpecT.
Resumo:
La tesi si colloca nell'ambito del Cloud Computing, un modello in grado di abilitare l’accesso in rete in maniera condivisa, pratica e on-demand, di diverse risorse computazionali, come potenza di calcolo o memoria di massa. Questo lavoro ha come scopo la realizzazione di una Cloud privata, per la fornitura di servizi, basata su un’architettura P2P. L’elaborato vuole studiare il caso di un sistema P2P di livello infrastruttura (IaaS) e propone la realizzazione di un prototipo capace di sostenere un insime basilare di API. Verranno utilizzati protocolli di gossip per la costruzione dei servizi fondamentali.
Resumo:
Negli ultimi anni le Web application stanno assumendo un ruolo sempre più importante nella vita di ognuno di noi. Se fino a qualche anno fa eravamo abituati ad utilizzare quasi solamente delle applicazioni “native”, che venivano eseguite completamente all’interno del nostro Personal Computer, oggi invece molti utenti utilizzano i loro vari dispositivi quasi esclusivamente per accedere a delle Web application. Grazie alle applicazioni Web si sono potuti creare i cosiddetti social network come Facebook, che sta avendo un enorme successo in tutto il mondo ed ha rivoluzionato il modo di comunicare di molte persone. Inoltre molte applicazioni più tradizionali come le suite per ufficio, sono state trasformate in applicazioni Web come Google Docs, che aggiungono per esempio la possibilità di far lavorare più persone contemporanemente sullo stesso documento. Le Web applications stanno assumendo quindi un ruolo sempre più importante, e di conseguenza sta diventando fondamentale poter creare delle applicazioni Web in grado di poter competere con le applicazioni native, che siano quindi in grado di svolgere tutti i compiti che sono stati sempre tradizionalmente svolti dai computer. In questa Tesi ci proporremo quindi di analizzare le varie possibilità con le quali poter migliorare le applicazioni Web, sia dal punto di vista delle funzioni che esse possono svolgere, sia dal punto di vista della scalabilità. Dato che le applicazioni Web moderne hanno sempre di più la necessità di poter svolgere calcoli in modo concorrente e distribuito, analizzeremo un modello computazionale che si presta particolarmente per progettare questo tipo di software: il modello ad Attori. Vedremo poi, come caso di studio di framework per la realizzazione di applicazioni Web avanzate, il Play framework: esso si basa sulla piattaforma Akka di programmazione ad Attori, e permette di realizzare in modo semplice applicazioni Web estremamente potenti e scalabili. Dato che le Web application moderne devono avere già dalla nascita certi requisiti di scalabilità e fault tolerance, affronteremo il problema di come realizzare applicazioni Web predisposte per essere eseguite su piattaforme di Cloud Computing. In particolare vedremo come pubblicare una applicazione Web basata sul Play framework sulla piattaforma Heroku, un servizio di Cloud Computing PaaS.
Resumo:
Nel primo capitolo si è studiata la nuova tecnologia del Cloud Computing, fornendo una semplice analisi di tutte le caratteristiche principali, gli attori coinvolti e i relativi metodi di distribuzione e servizi offerti. Nel secondo capitolo si è introdotta la nozione di coordination as a service, discutendone le relative astrazioni che compongono l'architettura logica. Successivamente si è preso in considerazione il modello di coordinazione TuCSoN definendo cosa si intende per nodo, agente, centro di tuple e agent coordination context ed è stato analizzato il relativo linguaggio di coordinazione attraverso il quale essi interagiscono. Nel terzo capitolo sono state riviste ed estese le nozioni di TuCSoN, precedentemente acquisite, nell'ambito del Cloud Computing ed è stato fornito un modello astratto ed una possibile architettura di TuCSoN in the Cloud. Sono stati analizzati anche gli aspetti di un possibile servizio di tale genere nello scenario di servizio pay-per-use. Infine nel quarto ed ultimo capitolo si è sviluppato un caso di studio in cui si è implementata un'interfaccia per l'attuale CLI di TuCSoN sottoforma di applet, che è stata poi inserita nel Cloud attraverso la piattaforma PaaS Cloudify.
Resumo:
Lo scopo della tesi è esplorare il nuovo dualismo tra calcolo situato e calcolo come mero servizio immateriale che si osserva nel rafforzarsi di due paradigmi apparentemente antitetici come Cloud Computing e Pervasive Computing. Si vuole quindi dimostrare che i due paradigmi sono complementari, e possibilmente sviluppare un modello e un approccio metodologico per sistemi distribuiti che sfrutti opportunamente le caratteristiche dei due paradigmi. A tale scopo si utilizzerà come caso di studio il modello TuCSoN con linguaggio ReSpecT, combinando opportunamente Situated ReSpecT con il modello Coordination as a Service (CaaS) espresso da TuCSoN on Cloud.
Resumo:
La natura distribuita del Cloud Computing, che comporta un'elevata condivisione delle risorse e una moltitudine di accessi ai sistemi informatici, permette agli intrusi di sfruttare questa tecnologia a scopi malevoli. Per contrastare le intrusioni e gli attacchi ai dati sensibili degli utenti, vengono implementati sistemi di rilevamento delle intrusioni e metodi di difesa in ambiente virtualizzato, allo scopo di garantire una sicurezza globale fondata sia sul concetto di prevenzione, sia su quello di cura: un efficace sistema di sicurezza deve infatti rilevare eventuali intrusioni e pericoli imminenti, fornendo una prima fase difensiva a priori, e, al contempo, evitare fallimenti totali, pur avendo subito danni, e mantenere alta la qualità del servizio, garantendo una seconda fase difensiva, a posteriori. Questa tesi illustra i molteplici metodi di funzionamento degli attacchi distribuiti e dell'hacking malevolo, con particolare riferimento ai pericoli di ultima generazione, e definisce le principali strategie e tecniche atte a garantire sicurezza, protezione e integrità dei dati all'interno di un sistema Cloud.
Resumo:
Nella fisica delle particelle, onde poter effettuare analisi dati, è necessario disporre di una grande capacità di calcolo e di storage. LHC Computing Grid è una infrastruttura di calcolo su scala globale e al tempo stesso un insieme di servizi, sviluppati da una grande comunità di fisici e informatici, distribuita in centri di calcolo sparsi in tutto il mondo. Questa infrastruttura ha dimostrato il suo valore per quanto riguarda l'analisi dei dati raccolti durante il Run-1 di LHC, svolgendo un ruolo fondamentale nella scoperta del bosone di Higgs. Oggi il Cloud computing sta emergendo come un nuovo paradigma di calcolo per accedere a grandi quantità di risorse condivise da numerose comunità scientifiche. Date le specifiche tecniche necessarie per il Run-2 (e successivi) di LHC, la comunità scientifica è interessata a contribuire allo sviluppo di tecnologie Cloud e verificare se queste possano fornire un approccio complementare, oppure anche costituire una valida alternativa, alle soluzioni tecnologiche esistenti. Lo scopo di questa tesi è di testare un'infrastruttura Cloud e confrontare le sue prestazioni alla LHC Computing Grid. Il Capitolo 1 contiene un resoconto generale del Modello Standard. Nel Capitolo 2 si descrive l'acceleratore LHC e gli esperimenti che operano a tale acceleratore, con particolare attenzione all’esperimento CMS. Nel Capitolo 3 viene trattato il Computing nella fisica delle alte energie e vengono esaminati i paradigmi Grid e Cloud. Il Capitolo 4, ultimo del presente elaborato, riporta i risultati del mio lavoro inerente l'analisi comparata delle prestazioni di Grid e Cloud.
Resumo:
Per far fronte alla necessità di sviluppo incrementale ed evolutivo dell'IT, è necessario un continuo rinnovamento del sistema aziendale. Negli ultimi anni, il progresso informatico è stato caratterizzato dall'espansione delle tecnologie Cloud, in grado di semplificare la complessità amministrativa delle aziende, aumentare la scalabilità dei sistemi e ridurre i costi di produzione. Nel corso di questo elaborato analizzerò nel dettaglio come il Cloud sia capace di rivoluzionare, in primis dal punto di vista amministrativo, ma non solo, i sistemi informatici moderni, valutando i molteplici benefici da esso generati e gli inevitabili trade-off che ne derivano.
Resumo:
Questo documento si interroga sulle nuove possibilità offerte agli operatori del mondo delle Reti di Telecomunicazioni dai paradigmi di Network Functions Virtualization, Cloud Computing e Software Defined Networking: questi sono nuovi approcci che permettono la creazione di reti dinamiche e altamente programmabili, senza disdegnare troppo il lato prestazionale. L'intento finale è valutare se con un approccio di questo genere si possano implementare dinamicamente delle concatenazioni di servizi di rete e se le prestazioni finali rispecchiano ciò che viene teorizzato dai suddetti paradigmi. Tutto ciò viene valutato per cercare una soluzione efficace al problema dell'ossificazione di Internet: infatti le applicazioni di rete, dette middle-boxes, comportano costi elevati, situazioni di dipendenza dal vendor e staticità delle reti stesse, portando all'impossibilità per i providers di sviluppare nuovi servizi. Il caso di studio si basa proprio su una rete che implementa questi nuovi paradigmi: si farà infatti riferimento a due diverse topologie, una relativa al Livello L2 del modello OSI (cioè lo strato di collegamento) e una al Livello L3 (strato di rete). Le misure effettuate infine mostrano come le potenzialità teorizzate siano decisamente interessanti e innovative, aprendo un ventaglio di infinite possibilità per il futuro sviluppo di questo settore.
Resumo:
Cloud services are becoming ever more important for everyone's life. Cloud storage? Web mails? Yes, we don't need to be working in big IT companies to be surrounded by cloud services. Another thing that's growing in importance, or at least that should be considered ever more important, is the concept of privacy. The more we rely on services of which we know close to nothing about, the more we should be worried about our privacy. In this work, I will analyze a prototype software based on a peer to peer architecture for the offering of cloud services, to see if it's possible to make it completely anonymous, meaning that not only the users using it will be anonymous, but also the Peers composing it will not know the real identity of each others. To make it possible, I will make use of anonymizing networks like Tor. I will start by studying the state of art of Cloud Computing, by looking at some real example, followed by analyzing the architecture of the prototype, trying to expose the differences between its distributed nature and the somehow centralized solutions offered by the famous vendors. After that, I will get as deep as possible into the working principle of the anonymizing networks, because they are not something that can just be 'applied' mindlessly. Some de-anonymizing techniques are very subtle so things must be studied carefully. I will then implement the required changes, and test the new anonymized prototype to see how its performances differ from those of the standard one. The prototype will be run on many machines, orchestrated by a tester script that will automatically start, stop and do all the required API calls. As to where to find all these machines, I will make use of Amazon EC2 cloud services and their on-demand instances.