Stampa

SERVIZI - Cloud

Sartoretto S.a.s. è in grado di progettare e realizzare Private Cloud Dedicati che, secondo le esigenze del cliente, possono erogare elevata potenza di calcolo oppure garantiscono continuità del servizio. I tecnici di Sartoretto S.a.s., ascoltano le esigenze del cliente e propongono progetti di private cloud realizzati su hardware interamente dedicato al cliente.In confronto con il tradizionale approccio di acquistare e gestire in proprio l'hardware, il cloud dedicato garantisce minor tempo di downtime, maggiore sicurezza, più opzioni di backup e costo marginale zero per l'aggiunta di nuove macchine virtuali.

Introduzione al Cloud Computing

cloud-italianicloud-ziogeekNegli ultimi mesi una delle parole più pronunciate in ambito informatico è stata “cloud”, che letteralmente significa “nuvola”. Come forse già sappiamo, la nuvola ha da sempre rappresentato graficamente “Internet”. Non conosciamo chi e quando ha voluto per primo esprimere con la nuvola questa nuova entità verso la quale i sistemi, dapprima con semplici browser, iniziavano a connettersi; è però certo che l’intuizione ha avuto successo.

La nuvola, la cloud, e la rete Internet sono quindi strettamente collegate. La Rete, nata nel lontano 1969 con il nome di Arpanet, si è evoluta nel tempo fino al 1991, anno in cui con la definizione del protocollo http e la nascita del World Wide Web (WWW) prende il nome di Internet. L’intento è quello di connettere tra loro più computer con lo scopo di condividere informazioni, documenti, risorse ecc. Ognuno ha la possibilità di connettersi a sistemi, server, pubblicare pagine e siti web e rendere disponibili ad altri le proprie conoscenze. La necessità di condivisione diventa la spinta per la creazione della rete. I PC quindi si possono connettere a Internet, ma nessuno (o pochi) sanno realmente cos’è, o meglio cosa c’è dietro, come mi connetto e quali sono i servizi che mi consentono di farlo. Non so dove è pubblicato il sito web che visito e non so neanche come è stato creato. Sto quindi usufruendo di un servizio che una piattaforma, qualunque essa sia, mi sta erogando. Sono un utente della rete.

Qui nasce il concetto di nuvola: non so cosa c’è dietro, non mi interessa, ma lo uso. Il Cloud Computing, anche se negli ultimi anni sembra rappresentare una evoluzione, in realtà era un concetto per molti aspetti già esistente da diverso tempo, parallelamente alla nascita di Internet.

Che cos’è il Cloud Computing?

Possiamo quindi definire con il termine Cloud Computing un insieme di risorse hardware e software che forniscono servizi su richiesta attraverso la rete Internet. Sebbene simile, non deve essere confuso con quest’ultima, in quanto il Cloud Computing è sostanzialmente un servizio fornito da un gestore di terze parti con la formula on demand. Sostanzialmente l’utente paga soltanto per quello che consuma, in termini di banda, di risorse, tempo di utilizzo, numero di transazioni ecc. Questo modello permette di creare soluzioni scalabili, performanti e affidabili anche con un basso investimento iniziale, senza cioè dover acquistare per lo startup l’hardware necessario e i servizi connessi, come il consumo di elettricità, la disponibilità di una connessione veloce e permanente a Internet, un IP fisso per rendere raggiungibili i propri server. Caratteristica fondamentale e imprescindibile del Cloud Computing è quella di fornire una infrastruttura di servizi assolutamente affidabile e scalabile. È infatti possibile, a seconda delle necessità, aumentare o diminuire i nodi in uso, oppure cambiare le caratteristiche dei server potenziando CPU e memoria.
Tutto questo è possibile perché l’infrastruttura è basata su un sistema di virtualizzazione delle risorse. La piattaforma viene eseguita su macchine virtuali opportunamente dimensionate e in grado di fornire i servizi richiesti. Ogni volta che viene richiesto di scalare utilizzando un nuovo nodo, la piattaforma si preoccupa di replicare l’applicazione sul nuovo nodo e renderlo quindi disponibile.
Ma non tutto è o può essere Cloud Computing. Attualmente esiste la possibilità di sviluppare per la cloud, ma esistono ancora tante soluzioni già in produzione negli ambienti tradizionali. Spesso le due tipologie di soluzioni, che in realtà differiscono per la piattaforma di distribuzione, devono integrarsi e comunicare tra loro. Per distinguere, vengono utilizzate due diverse terminologie. Un’applicazione distribuita secondo il modello tradizionale, su server di proprietà o su computer locali per esempio, viene definita on-premise. Una soluzione distribuita invece secondo le indicazioni del Cloud Computing viene semplicemente definita come in the cloud, o semplicemente cloud. È bene focalizzare le due definizioni perché, sono le modalità più diffuse per indicare le differenti modalità di deployment delle applicazioni.

Nota:

Il termine Computing non deve essere confuso con il Grid Computing, dove la potenza di calcolo di diversi computer viene unita per formare un unico computer virtuale, un meccanismo ben diverso dal fornire servizi.

 
Il Cloud Computing può essere suddiviso in tre grandi categorie, dipendentemente dallo scopo per cui viene creato. Abbiamo quindi:
 
Infrastructure as a Service (Iaas), dove l’infrastruttura hardware, la rete, lo storage vengono resi disponibili come servizi;
Platform as a Service (PaaS), dove è la piattaforma applicativa, il Sistema Operativo, a essere fruibile come servizio con la possibilità di sviluppare soluzioni software;
Software as a Service (SaaS), dove l’applicazione diventa un servizio fruibile su richiesta. Immaginate Office Web Apps come un’applicazione, simile a Microsoft Office, che però viene resa pubblicamente accessibile come servizio sul Web.
 
Alcune piattaforme supportano contemporaneamente anche più di una delle tipologie elencate.

Infrastructure as a Service

La differenza tra le diverse tipologie di Cloud Computing appare sottile, ma sostanziale. L’Infrastructure as a Service (IaaS) è una tipologia di Cloud Computing basato sul consumo, come servizio, di risorse hardware. Server virtuali, potenza di calcolo, storage, reti vengono messi a disposizione per essere utilizzati senza necessariamente dover affrontare costi di acquisto di tale hardware.
Il concetto è simile al noleggio, ma con l’importante differenza della manutenzione. Chi utilizza l’infrastruttura cloud non si deve preoccupare di fare manutenzione, rinnovare l’hardware o sostituire un hard disk; deve semplicemente utilizzare un servizio scalabile e affidabile senza preoccuparsi dei meccanismi di gestione interna.

Platform as a Service

Il Platform as a Service (PaaS) rappresenta una tipologia di servizio fornito del tutto differente, anche se per molti versi simile all’IaaS. A essere fornito come servizio, questa volta, non c’è solo l’hardware, ma anche la piattaforma che astrae l’hardware stesso e permette di usufruire di un set di funzionalità che consentono di ottenere load balancing, storage, reti, Virtual Machine, deployment. Il vantaggio è quello di concentrarsi solo ed esclusivamente sullo sviluppo dell’applicazione, e non perdersi nell’analisi di problematiche legate all’ambiente in cui essa deve essere distribuita, ottenendo contestualmente dalla piattaforma la scalabilità e l’affidabilità necessaria. Come per l’IaaS, non dobbiamo preoccuparci di aggiornare il sistema operativo: viene tutto gestito dinamicamente e in modo del tutto automatico dalla piattaforma. Se in determinati periodi abbiamo carichi di picco, per esempio durante il periodo natalizio un negozio online può essere soggetto a un carico di richieste decisamente più alto, la piattaforma è in grado di adeguare la propria struttura per rispondere alle mutate esigenze, anche se temporanee. Diversamente da quanto viene fatto nelle soluzioni tradizionali, dove tutta l’infrastruttura hardware e software deve essere progettata per essere scalabile e affidabile, così da evitare problemi e interruzioni del servizio che causano ripercussioni sul business. Un’infrastruttura di Cloud Computing, invece, è progettata partendo dal presupposto che i problemi ci possono essere. È quindi in grado di risolverli autonomamente, per quanto possibile, attraverso meccanismi in grado di non bloccare il normale flusso applicativo, come la replica delle macchine virtuali.

Software as a Service

Mentre l’IaaS fornisce l’infrastruttura e il PaaS la piattaforma, il Software as a Servi-ce (SaaS) rappresenta una completa soluzione software sottoforma di servizio. Un esempio di SaaS è la piattaforma Office 365: un insieme di applicazioni per l’ufficio, gestione di documenti, fogli di calcolo, disegno, presentazioni, interamente disponibile online e accessibili da chiunque ne è abilitato. In questo modo Word, Excel, PowerPoint, SharePoint, Lync ed Exchange diventano applicazioni interamente accessibili tramite Web.

Il Cloud Computing e le soluzioni tradizionali

Da quanto discusso emergono differenze importanti tra le applicazioni tradizionali e le applicazioni sviluppate per la cloud. Distinguiamo quindi le applicazioni tradizionali con il termine on-premise e le applicazioni sviluppate per la cloud con il termine in the cloud. On-premise, tradotto letteralmente, significa nello stabile, mentre in the cloud significa nella nuvola.
La Tabella 1 mette a confronto tre soluzioni infrastrutturali diverse, On-Premise, Hosting e Cloud Computing, evidenziandone le marcate differenze nella gestione delle problematiche per la risoluzione delle quali vengono progettate.
 
Tabella 1 - Confronto tra le soluzione infrastrutturali
On-Premise
Hosting
Cloud Computing
Elettricità, Connettività, Hardware e Software presso la propria erver Farm
Affitto di macchine Hardware + Software e della Connettività
Infrastruttura multitenant e condivisa tra diverse applicazioni
Completo Controllo
Minor controllo rispetto all’on-premise
Resource Pooling, Isolamento come caso specifico
Completa responsabilità
Minori responsabilità per il cliente rispetto all’on-premise
On Demand Self-service ovvero capacità di richiedere ciò di cui si ha bisogno
Capacità di erogazione “fisse”
Costi fissi per capacità di erogazione “fissa” anche quando le macchine non fanno nulla!
Indipendenza dalla topologia di rete
Poca flessibilità
Più flessibilità
Elasticità: capacità di richiedere maggiori risorse solo quando necessarie
Capitale iniziale per l’infrastruttura e la messa in opera
Minori capitali iniziali
Pagamento dei servizi solo quando servono
Apparentemente sembra che il Cloud Computing sia la soluzione ottimale per tutti i problemi. Anche se per le architetture distribuite questo può essere vero nella maggior parte dei casi, non è una verità assoluta. Tutto dipende sempre dalla specifica architettura dell’applicativo che stiamo progettando. La tabella comparativa serve quindi semplicemente a evidenziare le conseguenze che la scelta di una o dell’altra soluzione può portare.
 

Sviluppo On-Premise e sviluppo “in the cloud”

Lo sviluppo di applicazioni on-premise e lo sviluppo di soluzioni per la cloud non è in realtà molto differente. Anzi, applicazioni inizialmente progettate e sviluppate per essere distribuite in ambienti on-premise, oppure in Hosting, potenzialmente possono essere facilmente portate nel cloud con pochissimi passaggi e accorgimenti, rivolti soprattutto all’utilizzo e all’adattamento alla piattaforma di Cloud. In una soluzione distribuita su un ambiente di Cloud Computing, per esempio, è sbagliato pensare di utilizzare risorse locali come storage affidabile o fare riferimento a specifici path, se non virtualizzati. Il concetto di base è che tutto deve essere virtualizzato e soprattutto accessibile contestualmente da diversi nodi esterni. Un nodo, infatti, può potenzialmente andare in crash o essere rimosso; in quel caso le risorse salvate localmente andrebbero definitivamente perdute.
Non tutte le applicazioni legacy potranno essere migrate nel cloud, ma sicuramente per una buona parte, se ben progettate nel rispetto dell’isolamento dei componenti, sarà possibile farlo con poche modifiche.

Private Cloud vs. Public Cloud

L’introduzione al Cloud si chiude con un’ulteriore, ma breve, distinzione che offre un quadro più completo delle soluzioni a nostra disposizione. Abbiamo discusso finora di una infrastruttura pubblica, in grado di rispondere alle esigenze di un’architettura distribuita su larga scala e soprattutto in esecuzione su data center gestiti da terze parti. Questo si chiama Public Cloud. Ma esiste anche la possibilità, offerta da molti vendor, di creare un’infrastruttura di cloud del tutto privata. Il vantaggio è quello di avere una virtualizzazione quasi completa dei servizi, unendo il controllo dell’on-premise con la dinamicità del cloud. Questa soluzione è chiamata Private Cloud. In questo scenario tutta l’infrastruttura viene gestita internamente e l’accesso può anche essere limitato solo ad alcuni client, per esempio a un limitato set di persone.
Tuesday the 19th. Joomla Templates Free.

©

Copyright© 1997-2014 Sartoretto S.a.s.- Via S. Antonino, 209 - 31100 TREVISO - Tel.: 0422.321610 – Fax: 0422.325036
- P.I. 03738100266 - Iscrizione al Registro delle Imprese REA TV–332732