Virtualizzazione e Cloud Computing Cosa, Perché, Come, Casi d’uso comune
Che cos'è la virtualizzazione? La virtualizzazione è una tecnologia software che sta rapidamente trasformando il panorama IT e cambiando radicalmente il modo in cui le persone usano la potenza computazionale. Per virtualizzazione si intende la creazione di una versione virtuale di una risorsa normalmente fornita fisicamente. Qualunque risorsa hardware o software può essere virtualizzata: sistemi operativi, server, memoria, spazio disco, sottosistemi di network. Meccanismi più avanzati di virtualizzazione permettono la ridefinizione dinamica tanto delle caratteristiche della risorsa virtuale, tanto della sua mappatura su risorse reali. La virtualizzazione permette l'ottimizzazione delle risorse e la capacità di far fronte a esigenze specifiche secondo il più classico paradigma dell'on demand.
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Campi della Virtualizzazione
1
Server Virtualization
2
Storage Virtualization
3
Network Virtualization
4
Desktop Virtualization
5
Application Virtualization
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Server Virtualization La virtualizzazione dei server si divide in Aggregazione e Disaggregazione Aggregation "Tanti in uno" = Un unico grande computer con tante CPU e tanta RAM, nota come “Grid Computing” High performance Computing (HPC) High performance Computing Cluster (HPCC) casi d'uso : calcolo parallelo, ricerca universitaria (biologica, genetica), 3D Rendering, grosse griglie geograficamente distribuite come la nuova rete superveloce del CERN di Ginevra in uso per l'analisi dell' acceleratore di particelle LHC(Large Hadron Collider).
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Disaggregation "Uno in tanti" = Un grande computer diviso in tante CPU e RAM da assegnare a molti computer virtuali Questo è il ramo della Server Virtualization che sta modificando il panorama IT. Mediante un piccolo strato software, Hypervisor direttamente installato sull’Hardware è possibile configurare molteplici server virtuali in una stessa macchina fisica, tutti isolati tra loro. casi d'uso : consolidamento, riduzione TCO, rapidità di sviluppo sistemi SW, Rapid provisioning, Internet Service Providing, semplicità di amministrazione sistemi.
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Storage Virtualization La virtualizzazione delle risorse di sistemi storage consente di snellire la amministrazione delle risorse di storage e di fornire maggiore affidabilità e scalabilità agli apparati di storage. Inoltre consente di consolidare le diverse tipologie di apparati storage presentando una unica interfaccia alle macchine che devono utilizzarle. In associazione alla server virtualization consente un automatico approvvigionamento delle risorse di storage. L’esempio più semplice di storage virtualization è il mirror di due dischi fisici che vengono mappati dal sistema operativo come un unico disco.
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Network Virtualization Virtual I/O La virtualizzazione del network porta enormi vantaggi di gestione, di semplicità di sviluppo di complesse architetture di network, di automatismi associata alla server virtualization. Tecnologie come Infiniband ed FCoE (Fibre Channel over Ethernet) portano vantaggi quali il consolidamento di tutti gli apparati di rete (rame,fibra,etc) in più facili apparati i quali portano con se intelligenze tali da riuscire a switchare semplicemente ed automaticamente i percorsi di network senza dover rimappare o rimettere in sicurezza ed in isolamento i percorsi modificati. L’esempio più semplice di virtualizzazione del network sono le VLAN.
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Desktop Virtualization La virtualizzazione dei desktop è una frontiera ancora poco esplorata, si basa sulle logiche della server virtualization, ma intende virtualizzare i computer che tutti noi usiamo quotidianamente. Lo scenario è quello di centralizzare tutti gli apparati in una sala CED e portare sulle scrivanie solamente dei Thin Client, economici e facilmente sostituibili. Tutti i dati ed i software installati dall’utilizzatore sono salvati nella sala CED, non sul piccolo, comodo, silenzioso client. Uso classico: Call Center, Mediante la possibilità di clonare il desktop configurato, è possibile in pochi minuti avere un enorme call center La vera forza di questo sistema si ottiene associandola con la virtualizzazione delle applicazioni.
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Application Virtualization Per Virtualizzazione delle applicazioni si intende la possibilità di considerare la applicazione come una risorsa a cui poter semplicemente accedere. La applicazione con tutto il necessario (librerie,license model,etc) viene configurata una sola volta sul sistema centrale e salvata come un pacchetto, una risorsa. La risorsa (pacchetto applicazione), esempio il word di office, puo’ essere assegnato alla tale postazione o al tale utente e costui si troverà il pacchetto sul proprio PC, come se vi fosse stato installato. Ma costituisce uno streaming di informazioni che una volta chiuse non è piu’ residente sul PC. Lo scenario Call Center risulta in questo modo estremamente semplificato ed ottimizzato,l’implementazione estremamente velocizzata.Lo streaming delle applicazioni può con apparati di ottimizzazione del network superare frontiere internazionali senza rallentamenti.o latenze.
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Vantaggi derivanti dalla Virtualizzazione
1
Isolamento:I sistemi virtualizzati sono isolati e slegati tra loro
2
Incapsulamento:I sistemi virtuali sono files,pertanto replica,spostamento,copia,backup sono semplici operazioni
3
Aumento Utilizzo HW:I sistemi fisici vengono sfruttati al meglio della loro potenza
4
Proof of Concept,Rapid Provision:I tempi di messa in opera di nuovi sistemi è drasticamente ridotto Rapid Development:Semplifica,facilita testing e debugging in ambienti puliti e controllati
5 6 7 8 9 10
Allocazione dinamica delle risorse ove necessario Gestione molto semplificata delle risorse eterogenee Riduce l’hardware Operating Cost a più del 50% Riduce i consumi energetici all’80% Riduce le risorse HW necessario di un rapporto di 10:1
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
11
Consente l’amministrazione di tutte le risorse in maniera centralizzata e remotamente
12
Monitorizza le performance di tutte le risorse
13
Riduce il TCO (Total Cost of Ownership) dei server di più del 60%
14 15
Riduce il TCO dei desktop di più del 40%
16
Riduce il TCO dell’infrastruttura storage di oltre il 50%
Riduce il TCO dell’infrastruttura network di oltre il 38%
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Che cos'è il Cloud Computing? Con il termine Cloud computing si intende un'insieme di tecnologie informatiche che permettono l'utilizzo di risorse (storage, CPU) distribuite. La caratteristica principale di tale approccio è di rendere disponibili all'utilizzatore tali risorse come se fossero implementate da sistemi (server o periferiche personali) "standard". L'implementazione effettiva delle risorse non è definita in modo dettagliato; anzi l'idea è proprio che l'implementazione sia un insieme eterogeneo e distribuito (the Cloud) di risorse le cui caratteristiche non sono note all'utilizzatore. Il termine Cloud computing si differenzia da Grid computing che è un paradigma orientato al calcolo distribuito, e in generale, richiede che le applicazioni siano progettate in modo specifico.
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Cloud Computing - Paradigma Il paradigma del Cloud computing prevede tre attori distinti: Fornitore di Servizi Offre servizi (Server virtuali, storage, applicazioni complete) generalmente secondo il modello "pay-per-use"
Cliente Amministratore Sceglie e configura i servizi offerti dal Fornitore, generalmente offrendo un valore aggiunto come ad esempio applicazioni software
Cliente Finale Utilizza i servizi opportunamente configurati dal Cliente Amministratore. In determinati casi d'uso il Cliente Amministratore e il Cliente Finale possono coincidere.
L'architettura del Cloud computing prevede più server reali, generalmente in architettura ad alta affidabilità e fisicamente collocati presso il Data center del Fornitore del servizio. Il Fornitore del servizio espone delle interfacce per elencare e gestire i propri servizi Il Cliente Amministratore utilizza tali interfacce per selezionare il servizio richiesto (ad esempio un Server virtuale completo) e per amministrarlo (configurazione, attivazione, disattivazione). Il Cliente Finale utilizza il servizio configurato dal Cliente Amministratore, le caratteristiche fisiche dell'implementazione (Server reale, localizzazione del Data center) sono irrilevanti.
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Cloud Computing: Caratteristiche chiave Cinque sono le caratteristiche chiave del cloud computing Il consumatore può unilateralmente disporre di capacità di calcolo, come il tempo del server e l'archiviazione di rete, se necessario, senza richiedere l'interazione umana con ogni fornitore del servizio.
On-demand selfservice
Le risorse di calcolo sono messe al servizio di tutti i consumatori utilizzando un modello multi-tenant, con diverse risorse fisiche e virtuali dinamicamente riassegnate in base alla domanda dei consumatori. Il cliente in genere non ha alcun controllo o conoscenza dell'esatta posizione delle risorse. Esempi di risorse includono la RAM, la CPU, lo spazio disco, larghezza di banda della rete, e le macchine virtuali.
Accesso universale alla rete
Location risorse ininfluente
Le capacità sono disponibili in rete e sono accessibili tramite meccanismi standard che promuovono l'uso eterogeneo di thin o thick client (ad esempio, i telefoni cellulari, laptop e PDA).
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Le risorse utilizzate vengono misurate, e fatturate in base a precisi parametri. Esempio la quantità di dati salvati, la larghezza di banda e le risorse di processore e memoria consumate nel tempo.
Rapidità ed elasticità
Pay per Use
Le risorse possono essere rapidamente e elasticamente aumentate per scalare la potenza e rapidamente ed elasticamente liberate per rilasciarla. Per il consumatore, la capacità delle risorse disponibili spesso sembrano essere infinite, e può esserne acquistata in qualsiasi quantità, in qualsiasi momento
Modello di consegna I modelli di consegna dei servizi Cloud sono tre
(SaaS). Fornisce al consumatore la possibilità di usare le applicazioni in esecuzione su una Cloud infrastructure accessibile da vari dispositivi client attraverso una interfaccia come un browser Web (ad esempio, una web-based e-mail). Il consumatore non riesce a controllare l’ infrastruttura base della Cloud, rete, server, sistemi operativi, storage, con la possibile eccezione di limitate specifiche impostazione per l'utente delle impostazioni di configurazione dell’applicazione.
(PaaS). Fornisce al consumatore la possibilità di distribuire nella Cloud infrastructure applicazioni create dal consumatore che utilizzano linguaggi di programmazione supportati dal fornitore (ad esempio, Java, Python,. Net). Il consumatore non ha il controllo della base della Cloud infrastructure, rete, server, sistemi operativi, storage, ma ha il controllo sulle applicazioni distribuite ed eventualmente sulle configurazioni dell’ ambiente.
(IaaS). Fornisce al consumatore il poter affittare capacità di CPU, storage, network, e altre risorse fondamentali che il consumatore è in grado di implementare e gestire, che possono includere i sistemi operativi e le applicazioni. Il consumatore non ha il controllo delle infrastruttura di base della Cloud, ma ha il controllo su sistemi operativi, storage, la distribuzione delle applicazioni, ed eventualmente selezionare componenti di rete (ad esempio, firewall, load balancer).
Application
Platform
Infrastructure
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Modello di distribuzione I modelli distributivi del cloud computing sono 4 La cloud infrastructure è di proprietà o in leasing di una sola organizzazione ed è utilizzata esclusivamente dall'organizzazione
La cloud infrastructure è di proprietà di una organizzazione che vende i servizi cloud al pubblico o ad un gruppo di grandi imprese
La cloud infrastructure è condivisa da diverse organizzazioni e sostiene una comunità specifica che ne condivide degli ambiti (ad esempio, la mission, i requisiti di sicurezza, la policy, e le considerazioni di conformità).
L’infrastruttura è una composizione di due o più cloud (private, community, o public) in una entità unica, tenute insieme da tecnologie proprietarie tali da permettere la portabilità dei dati e delle applicazioni (ad esempio, cloud bursting).
.
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Logiche applicative e Casi d’uso del Cloud Computing Two Prediction Problems
[email protected] - http://blog.vmengine.net - http://www.vmengine.net
Il “two prediction problems” è la prima grande e più comune necessità, di tutte le imprese che operano in rete, che fa del cloud computing la soluzione vincente. Le imprese fanno le loro previsioni di richieste (tratteggiato grigio) ed in base a queste investono in hardware (linea blu) per reggere il crescente numero di richieste reali (linea rossa). Gli investimenti dapprima consentono lo sviluppo, ma a scapito di un eccesso di risorse (opportunity cost), successivamente le richieste dei clienti superano le aspettative e l’hardware non è capace di soddisfarle causando perdita di clienti. Il cloud computing (linea gialla) segue le richieste dell’utenza tutto a vantaggio dell’ investimento senza causare perdità di clienti e di immagine
Contatti
[email protected] - http://blog.vmengine.net - http://www.vmengine.net