Il Cloud computing secondo Microsoft

Sistemi scalabili e personalizzati, ottimizzazione delle risorse, riduzione dei costi. Sono molti i vantaggi ottenibili dalle soluzioni cloud, sempre più al centro delle strategie aziendali volte al futuro e all'innovazione
Sistemi scalabili e personalizzati, ottimizzazione delle risorse, riduzione dei costi. Sono molti i vantaggi ottenibili dalle soluzioni cloud, sempre più al centro delle strategie aziendali volte al futuro e all'innovazione

Il cloud computing è assolutamente attuale, e il suo sviluppo è ora, adesso, come sottolineano i continui investimenti operati dalle grande aziende del settore informatico, fra cui Microsoft, che si è impegnata su differenti fronti per sviluppare al meglio la propria offerta dedicata al cloud. Un’offerta che merita sicuramente di essere approfondita e che annovera, ad esempio, la piattaforma Windows Azure e le suite online dedicate alla produttività business.
Il cloud computing in generale può essere declinato secondo differenti paradigmi di sviluppo, riassumibili nella sigla XaaS.
La X, in realtà, può essere sostituita da tre differenti lettere specifiche, come la I, per Infrastructure, la P per Platform e la S, per Software, dando così vita a tre acronimi indicanti tre differenti aspetti delle tecnologie cloud, di cui quella SaaS è sicuramente la più conosciuta al grande pubblico.
In breve, le tre differenti espressioni del cloud possono essere così riassunte:

Infrastructure as a Service (IaaS)
Si tratta sostanzialmente della possibilità di utilizzare “hardware” (cicli di CPU, memoria, spazio disco e IO di rete) gestito da un’organizzazione terza e quindi ospitato fuori dalla propria azienda. La differenza rispetto al normale hosting risiede nella possibilità di variare in modo flessibile e con continuità nel tempo le risorse necessarie ai differenti carichi di lavoro aziendali, pagando quanto utilizzato secondo la formula del pay-per-use. Un esempio di offerta tecnico-commerciale che rientra in questa categoria è rappresentata dalla proposta Amazon Elastic Compute Cloud (Amazon EC2).

Platform as a Service (PaaS)
Si tratta di offerte pensate per consentire la progettazione e la preparazione di applicazioni web based. Queste soluzioni tecnologiche raccolgono un insieme di API e servizi per la costruzione rapida di apps, e per la gestione dei relativi dati, consentendo la completa astrazione del software dalla sottostante infrastruttura, che risulta essere completamente trasparente al fruitore del servizio. Microsoft oggi propone come soluzione Paas la propria piattaforma Azure.

Software as a Service
Sicuramente il più noto, in quanto fortemente discusso in questi tempi, il sistema Software as a Service prevede di mettere a disposizione degli utenti applicazioni complete che possono essere fruite ovunque vi sia la disponibilità di una connessione Internet, indipendentemente dal fatto che il fruitore si trovi a casa, a lavoro oppure in mobilità. Un esempio di Software as a Service sono le applicazioni di Microsoft BPOS (Business Productivity Online Services) e SalesForce.com , per quanto riguarda il livello professionale, mentre applicazione come Google Docs possono essere considerati esemplificatori dei sistemi Software as a Service, destinati ad un utenza domestica.

Ognuno dei livelli di declinazione del cloud computing appena citati può essere pensato come elemento sovrapposto di una piramide, in cui, dalla base verso l’apice, si trovano man a mano che si sale prodotti sempre più completi e specifici, ma al tempo stesso sempre meno personalizzabili e modificabili. Insomma, se il sistema IaaS rappresenta la possibilità di utilizzare un’infrastruttura informatica non propria, residente presso fornitori terzi, la concezione del PaaS è da vedersi come la possibilità di costruire applicazioni che siano indipendenti dall’infrastruttura stessa, astraendo le applicazioni dall’infrastruttura e permettendo così ai programmatori di poter confezionare le proprie applicazioni, senza dover essere a conoscenza dell’hardware sulla quale queste verranno eseguite. Il livello più alto ed astratto è proprio quello dell’offerta di queste applicazioni, raccolte dunque nella sfera dell’offerta SaaS.

Microsoft, capita l’importanza di offrire alla propria clientela business tutti gli strumenti per avvantaggiarsi delle soluzioni tecnologiche messe a disposizione dal cloud computing, ha provveduto a dare il via ad una completa offerta di servizi ed offerte che ricoprono egregiamente i livelli di Software as a Service e di Platform as a Service.
Per quanto riguardo le offerte SaaS, Microsoft propone soluzioni ancora più avanzate, che possono essere meglio definite come S+S, ossia come Software plus Service : si tratta di un modello ibrido, secondo il quale Microsoft è in grado di fornire applicazioni tradizionali che si eseguono dal PC, arricchite però di opzioni e funzioni che possano poi essere eseguite nel cloud, richiamando dei servizi residenti online presso il fornitore. Questa scelta consente a Microsoft di condurre per mano i propri clienti verso una lenta e graduale evoluzione di fornitura del software propriamente detto, consentendo agli utenti dapprima di agevolarsi con funzioni non residenti sul proprio PC, per poi offrire completi pacchetti. Allo stesso tempo, il cloud computing riceve una spinta di diffusione notevole, utilizzando i tradizionali canali commerciali di fornitura delle applicazioni classiche.
L’offerta S+S di Microsoft si concretizza con i Microsoft Online Service la cui punta di diamante è costituita dalla Business Productivity Online Standard Suite (BPOS) , che comprende Exchange Online , SharePoint Online , Office Communications Online ed Office Live Meeting . L’annuncio della disponibilità dei due servizi pilastri per l’offerta enterprise (Exchange e SharePoint) ha portato a ben comprendere quali fossero le intenzioni di Microsoft sullo sviluppo dei suoi servizi per il cloud computing.

Exchange, noto programma di messaggistica, assume online valenze differenti rispetto al software tradizionale, permettendo anche alle aziende più piccole di avvalersi di una struttura di gestione dei contatti e delle mail aziendali, senza dover implementare la soluzione internamente, con un costo irrisorio. In questo modo, i dipendenti aziendali possono accedere alla propria posta ovunque, sollevando le aziende dagli obblighi di implementazione e dai conseguenti costi. Considerazioni similari possono essere esposte anche per SharePoint e per tutti gli altri servizi appartenenti alla suite di produttività online.
Accanto all’offerta per la tipologia S+S, si affianca un’apposita offerta per il livello Platform as Service , la cui espressione massima è stata data da BigM nella realizzazione della piattaforma per il cloud soprannominata Windows Azure Platform costituita da:

Windows Azure : un sistema operativo accessibile online;

Microsoft SQL Azure : la proposta di Microsoft per chi voglia avvantaggiarsi di un database relazionale “nel cloud”;

Windows Azure platform AppFabric : che con la controparte “on premise” ( Windows Server AppFabric , disponibile ora in seconda versione beta) consente di costruire, gestire e collegare in modo semplice applicazioni residenti nel cloud con applicazioni meglio definite come on premise.

Ad oggi, Microsoft non ha ancora presentato un’offerta di cloud computing di tipo Infrastructure as a Service. In realtà, però, esistono delle dichiarazioni secondo le quali in tempi non definiti si provvederà ad arricchire ulteriormente Windows Azure con apposite funzioni in grado di supportare macchine virtuali e connessioni con protocolli RDP . Come pubblicato su Techtarget.com , Prashant Ketkar, marketing director di Windows Azure, ha affermato che aggiungere il supporto a questi due componenti è una delle priorità più alte. L’aggiunta delle possibilità di caricare ed eseguire, in Windows Azure, proprie macchine virtuali e di connettersi alle stesse via RDP, se confermata , trasformerebbe la natura di Windows Azure da puro PaaS, com’è ora, a PaaS + IaaS, completando in questo modo l’offerta Microsoft.
Un altro annuncio che lascia presupporre che Windows Azure si stia muovendo in direzione IaaS è stato fatto recentemente da Brad Calder sul blog ufficiale del team di sviluppi di Windows Azure per il rilascio della versione beta del Windows Azure Drive. Come specificato nel completo articolo di Brad Calder , con Windows Azure Drive, le applicazioni Windows Azure in esecuzione nel cloud possono utilizzare API NTFS esistenti per accedere ad un’unità di disco rigido persistente, facilitando significativamente la migrazione delle applicazioni esistenti in Windows verso il cloud. In questo modo è garantita ai clienti di una migliore esperienza di migrazione, riducendo drammaticamente la quantità di tempo necessaria per spostare le applicazioni dal proprio ambiente Windows in un ambiente Windows Azure. L’applicazione Windows Azure può leggere o scrivere su di un’unità identificata da una lettere (ad esempio, Y:\), che rappresenta un volume NTFS persistente e destinato alla memorizzazione ed all’accesso ai dati. Il Cloud Drive è implementato come un Windows Azure Page Blob, con un Virtual Hard Drive (VHD), formattato in NTFS.
Prima di approfondire ulteriormente l’offerta cloud di Microsoft, di cui è stato dato un breve accenno in precedenza, è necessario, per procedere al meglio nella comprensione, distinguere ulteriormente la differente tipologia di cloud, distinguibile in Public Cloud ed in Private Cloud , di cui la prima è un’offerta di tipo XaaS fatta da un service provider (Microsoft, Google, Amazon…) e utilizzata da un’organizzazione per supportare servizi e applicazioni destinate sia ai dipendenti che ai clienti, mentre la seconda indica un’infrastruttura IT di proprietà di una specifica azienda, utilizzata per supportare servizi e applicazioni rivolti ai dipendenti e a tutti coloro che entrano in contatto con l’azienda (ad esempio i fornitori) e costruita usando i paradigmi del Public Cloud.
Si tratta quindi di un’infrastruttura IT, le cui peculiarità sono così enumerabili:

Orientata al services : l’infrastruttura esiste per erogare servizi al business in modo trasparente rispetto alla reale implementazione;
Agile e dinamica : in grado cioè di adeguarsi in modo rapido alle necessità aziendali implementando nuovi servizi o scalando quelli esistenti verso l’alto o verso il basso;
Affidabile : il business deve poter contare su servizi standard, predicibili e resilienti;
Efficiente : la maggior parte delle operazioni giornaliere sono automatizzate in modo da raggiungere il maggior livello possibile di auto-gestione (es. distribuzione o ritiro di nuovi servizi al variare del carico di lavoro);
A costi trasparenti : le unità di business, e l’IT stesso, devono poter conoscere in modo chiaro il costo dei servizi richiesti all’IT in modo da poter prevedere la spesa necessaria a sostenerli e decidere se usufruire di servizi interni o di analoghi servizi esterni;

È evidente, che un’azienda può adottare un modello di IT interamente basato sul Public Cloud, un modello interamente basato sul Private Cloud od un modello ibrido.

Microsoft Windows Azure impatta in modo determinante sull’IT aziendale e sulla professione del sistemista, in quanto si tratta di un sistema operativo a tutti gli effetti, variante di Windows Server 2008, dedicato specificamente al cloud, dalla quale, tramite Internet, è possibile comprare ed usare (in modalità pay-per-use) servizi, applicazioni, spazio disco e potenza di calcolo. Reso disponibile anche in Italia da pochi mesi , Windows Azure si compone di una struttura stratificata, che può essere agevolmente rappresentata semplificato dal seguente schema,

di cui il blocco Compute fornisce i “servizi di calcolo” e può assumere due diversi ruoli:

Ruolo Web : si tratta sostanzialmente di macchine virtuali, in esecuzione su Microsoft Hyper-V, con installato Windows Server 2008 con IIS 7 entro cui far girare le proprie applicazioni web. Azure si preoccupa della gestione automatica delle connessioni di rete, del load balancing e della fault tolerance;

Ruolo Worker : si tratta anche in questo caso di macchine virtuali in esecuzione su Hyper-V con installato Windows Server 2008, nelle quali è possibile eseguire servizi web base e la parte di logica applicativa.

Come già detto, almeno per ora, non è possibile accedere a queste macchine virtuali in modalità Remote Desktop per eseguirne l’amministrazione e la configurazione. Inoltre, come si può notare da un’attenta analisi dello schema i dati necessari al funzionamento delle applicazioni possono risiedere in un database SQL Azure , rappresentato dal relativo blocco, una versione per il cloud di Microsoft SQL Server, gestibile e configurabile usando SQL Server Management Studio , la console di amministrazione di SQL Server.
Allo stesso modo, il blocco Storage fornisce i servizi generici per la conservazione dei dati ed è costituito da differenti componenti, fra i quali si identificano:

Blob : un file system nel cloud che fornisce supporto per il salvataggio di oggetti di grandi dimensioni (fino a 50GB per file, all’incirca come un disco BlueRay);
Queue : fornisce il supporto per la gestione delle code dei messaggi asincroni;
Table : fornisce il supporto per la gestione dei dati gerarchici.
L’affidabilità nella conservazione dei dati è garantita dal fatto che il blocco Storage si occupa di replicare ogni oggetto salvato nello storage in tre diverse locazioni del data center per garantire una completa sicurezza e coerenza dei dati salvati.

Il blocco Management , invece, fornisce l’accesso, attraverso un apposito portale, ai servizi di amministrazione delle proprie applicazioni Azure, dei diversi ruoli, dello storage e di tutte le funzionalità del sistema. Questo blocco garantisce anche il completo funzionamento di apposite API che possono essere utilizzate da PowerShell , per eseguire attività di amministrazione senza passare necessariamente dal portale.

Infine, il blocco AppFabric fornisce, come è possibile notare dallo schema, due servizi fondamentali:

Service Bus , che può essere usato dagli sviluppatori per connettere tra loro i diversi servizi che costituiscono un’applicazione. I diversi componenti dell’applicazione possono risiedere tutti in Azure o parte in Azure e parte on-premise (ossia nel datacenter aziendale);

Access Control Services (ACS) : per gestire le identità e definire i diritti di accesso alle applicazioni e costruire federazioni tra domini di sicurezza diversi;

Grazie alla modularità con cui è concepito, Windows Azure risulta anche altamente scalabile, ossia è in grado di supportare applicazioni con elevatissimi carichi di lavoro.
I sistemi di gestione delle singole applicazioni in esecuzione su Windows Azure hanno a disposizione gli strumenti per misurare il carico di lavoro delle singole istanze dei diversi ruoli. Sulla base di questi dati è possibile decidere quante istanze dei diversi ruoli debbano essere poste in esecuzione e quando questo debba avvenire, rispondendo in questo modo in pochi minuti alle variazioni del carico di lavoro.
Nel diagramma sotto riportato, è possibile analizzare l’andamento tipico del carico di lavoro dovuto all’esecuzione di un’applicazione Web

Come si può notare dalla curva arancione, in una percentuale temporale elevata, la disponibilità operativa dei server è sottosfruttata, con un conseguente spreco di risorse hardware e notevoli costi dovuti allo spreco energetico. In poche situazioni, si ha invece un’eccessiva necessità di calcolo, che non può essere soddisfatta per insufficienza di risorse, dalla quale deriva un’indisponibilità od un rallentamento dell’esecuzione dell’applicazione. Tale situazione sarebbe risolvibile con un aumento di potenza di calcolo, che, però, produrrebbe l’effetto contrario di un aumento della curva di spreco, nei momenti di carico normale. Per ovviare, quindi,a questa impasse, è possibile ricorrere ad una soluzione di cloud computing come Windows Azure, con il cui uso si riesce a rendere più aderenti le dei carichi e delle risorse disponibili, adattando tali componenti gli uni agli altri in modo dinamico.

Normalmente, il lavoro di raccolta e analisi dei dati di funzionamento delle applicazioni e la determinazione delle istanze necessarie è un lavoro tipico da sistemisti che devono però conoscere anche i cicli di business e come questi possano impattare sul carico a cui sono sottoposte le applicazioni. Con le funzionalità di Windows Azure, cambia la figura tipica del sistemista che da gestore dei server diviene gestore di servizi, in quanto Windows Azure consente di raccogliere dati di performance, log di funzionamento e crash dump delle applicazioni sottoponendo, attraverso l’interfaccia di gestione, opportune richieste di intervento. Rispetto ad un ambiente classico, però, i dati non possono essere visti in modalità live, ma devono essere prima raccolti e poi analizzati (near real time) ed inoltre le istanze dei diversi ruoli di cui si compone un’applicazione possono essere spostati tra diversi server fisici ed il numero di questi può variare nel tempo.
Windows Azure è in esecuzione su decine di migliaia di server nei datacenter Microsoft. I datacenter sono costruiti usando sia rack tradizionali completi di server oppure usando dei container anch’essi già corredati da macchine server. I container sono posizionati nel datacenter, collegati ai sistemi di alimentazione e raffreddamento ed alla rete e messi in funzione, secondo rigide procedure che rispettano i più alti standard di affidabilità e sicurezza.

Inoltre, Microsoft sta progettando la costruzione di datacenter di quarta generazione in cui vengono a mancare quasi completamente gli edifici e i cui container contenenti i server saranno posizionati all’aperto.

La gestione di un numero così elevato di server richiede un elevatissimo livello di automazione. Il sistema di gestione (Fabric Controller) sviluppato usando i prodotti della famiglia System Center consente di raggiungere un rapporto di 1/4000 tra sistemisti e server gestiti, quando questo rapporto in condizioni normali varia tipicamente tra 1/40 nelle aziende e 1/300 negli hoster. Come già accennato in precedenza, uno dei componenti della piattaforma Windows Azure, è AppFabric, la cui controparte on-premise è disponibile in beta anche per i sistemi Windows Server . Lo scopo di Windows Azure AppFabric è quello di sfruttare tecnologie come Windows Communication Foundation (WCF) per offrire dei servizi base alle applicazioni, come il controllo degli accessi e la comunicazione tramite un Service Bus condiviso. Utilizzando le funzionalità di alto livello messe a disposizione da AppFabric su Windows Azure e su Windows Server, gli sviluppatori possono creare più rapidamente applicazioni multi-tier che comunicano tra loro, garantendo una completa interazione tra applicazioni e sistemi differenti, sia che esse siano ospitate nel cloud o che vengano rese disponibili on-premise nell’infrastruttura dell’utente. Il componente AppFabric presenta una struttura modulare, i cui pilastri fondamentali sono il Service Bus ed il sistema di Access Control .

Le funzionalità del Service Bus consentono di abilitare la comunicazione tra applicazioni differenti anche se ospitate dietro firewall o sistemi NAT, pur mantenendo la sicurezza delle comunicazioni e garantendo il controllo degli accessi tramite le funzionalità di Access Control che supportano sistemi di autenticazione e credenziali differenti, come certificati digitali, Active Directory, sistemi federati di autenticazione e così via. I servizi attestati sul Service Bus sono facilmente accessibili, attraverso qualsiasi tipologia di rete.

Il Service Bus può quindi essere usato in definitiva per connettere le applicazioni Windows Azure e il database SQL Azure con le applicazioni ed i database esistenti, configurandosi come una sorta di ponte fra le applicazioni on-premises ed off-premises e permettendo agli sviluppatori di progettare e confezionare facilmente qualsiasi tipologia di applicazione composita, le cui caratteristiche cioè risiedano sia nel cloud sia nell’infrastruttura dell’utente. Il Service Bus permette, dunque, di garantire l’accesso alle applicazioni ed ai servizi tramite firewall, gateway NAT abbassando le barriere per la creazione di applicazioni dedicate e composite, in quanto supporta le opzioni di connessioni multiple e la possibilità di pubblicazione e sottoscrizione tramite multicasting. Il Service Bus, grazie alla struttura con la quale è realizzato, è anche assolutamente sicuro ed aiuta a bloccare il traffico malevolo, proteggendo i servizi dalle intrusioni e dagli attacchi DoS (denial-of-service). Inoltre, il Service Bus provvede a fornire agli sviluppatori un modello di programmazione leggero e facilmente comprensibile, che supporta tutti i protocolli standard ed estende le funzionalità di Windows Communication Foundation.
Brevemente, le caratteristiche salienti del Service Bus di Windows Azure AppFabric, possono essere così riassunte:

– I servizi vengono resi disponibili tramite un URL permanente ed accessibile da Internet, in modo indipendente dalla posizione nella quali effettivamente risiede il servizio.
– Supporto completo al modello di distribuzione unicast e multi cast
– Supporto alle comunicazioni bidirezionali in modalità full-duplex
– Supporto per servizi di publishing e sottoscrizioni multiple
– Supporto dei protocolli REST e di accesso HTTP dalle piattaforme non appartenenti agli ambienti.NET
– Accesso anonimo ai servizi, qualora gli sviluppatori decidano di abilitarne la caratteristica.

Il modulo di Access Control facilita la costruzione di regole di autorizzazione per le applicazioni ed i servizi, superando le complesse procedure di programmazione, normalmente necessarie per rendere sicuri gli apps&services, da estendere oltre i confini del network aziendale. Grazie al supporto ad un modello dichiarativo semplificato, l’Access Control può essere facilmente configurato per coprire una completa varietà di differenti esigenze di sicurezza. L’Access Control permette di creare account utenti per il sistema di gestione delle identità, integrandosi anche con Active Directory e con altri sistemi od infrastrutture standard. L’Access Control permette di esercitare un controllo completo a livello di utenze e gruppi di utenze attestati sulle proprie applicazioni, consentendo ai programmatori di applicare i medesimi livelli di sicurezza e controllo anche alle connessioni operate dal Service Bus. Inoltre, Access Control fornisce un ambiente di programmazione noto, basato sul framework Microsoft.NET e su Windows Communication Foundation.
In breve, le caratteristiche salienti dell’Access Control di Windows Azure AppFabric, possono essere così riassunte:

– Setup semplice ed intuitivo grazie ad un’interfaccia Web e tramite apposite API
– Supporto all’Active Directory ed ad altre infrastrutture di identità
– Supporto alle credenziali multiple, inclusi i certificati X.509
– Supporto ai protocolli standard, incluso il REST

Accanto alle funzionalità di AppFabric, pensate per facilitare la scrittura di applicazioni multi-tier e la comunicazione tra i componenti dell’applicazione, Windows Azure offre nativamente un sistema di storing non-relazionale, chiamato Windows Azure Table . Questo sistema è altamente scalabile e le applicazioni possono utilizzarlo per memorizzare dati ed informazioni, grazie alla capacità di miliardi di entità differenti e molti terabyte di dati. Questa forma di storage strutturato è basato su tabelle partizionabili, ciascuna costituita da differenti Entità con Proprietà specifiche. Inoltre, questo sistema non-relazione supporta pienamente tecnologie e strumenti come LINQ, ADO.NET Data Services e REST. Qualora sia necessario memorizzare tipi di dati di grandi dimensioni, le applicazioni possono utilizzare Windows Azure Blob , che consente di memorizzare nel cloud oggetti di dimensione massima di 50GB ciascuno. Windows Azure Blob è basato su un sistema di storage altamente scalabile e replicato almeno tre volte per assicurare alta disponibilità, affidabilità e consistenza dei dati. Infine, Windows Azure Queue fornisce alle applicazioni Internet un sistema di invio/ricezione di messaggi asincrono, sfruttabile anche tramite l’interfaccia REST ed utilizzabile ad esempio per consentire alle componenti di frontend e di backend di un’applicazione di comunicare tra loro, o ad applicazioni differenti di scambiarsi messaggi in modo affidabile e scalabile, sfruttando le funzionalità di gestione della coda messaggi di Windows Azure.
Ai servizi di store di Windows Azure ed ai componenti di AppFabric, si affianca un sistema di database relazionale, scalabile e ad alta affidabilità costruito a partire dalle tecnologie di SQL Server e pensato per il cloud: SQL Azure. Il servizio di SQL Azure è utilizzabile sia da applicazioni ospitate su Windows Azure, sia da applicazioni ospitate nei sistemi on-premise delle rete aziendali, sia da applicazioni ospitate su altre infrastrutture di cloud e consente di memorizzare in modo efficiente dati ed informazioni. È l’infrastruttura stessa di Windows Azure a prendersi cura della manutenzione e dell’aggiornamento del servizio di database, così come delle funzionalità di alta disponibilità; utilizzando il Management Studio di SQL Server 2008 R2 e Visual Studio 2010 sviluppatori e database administrator possono facilmente gestire i database ospitati su SQL Azure, così come farebbero per i database ospitati all’interno della propria rete aziendale. Dal punto di vista delle metodologie e dei linguaggi di sviluppo, è possibile scrivere applicazioni PHP, ADO.NET o ODBC native che sfruttano SQL Azure; i DBA possono riutilizzare le conoscenze di T-SQL che hanno maturato in questi anni e l’infrastruttura di SQL Azure consente di avere database fino a 10 GB di dimensione, con Service Level Agreement garantiti, così come avviene per Windows Azure ed AppFabric.
Le applicazioni web e tradizionali, sviluppate in tutti questi anni utilizzano probabilmente dei database, ospitati ad esempio all’interno della propria rete aziendale, o dei database ospitati localmente nei dispositivi mobile, ad esempio usando SQL CE. Per questi motivi, può essere necessario poter sincronizzare dati presenti nei database ospitati su SQL Azure con altri dati ospitati invece nei database server della rete aziendale. Una delle opzioni che mette a disposizione Windows Azure è SQL Azure Data Sync , attualmente in CTP – Community Technology Preview – che offre funzionalità di sincronizzazione dei dati tra sistemi cloud-based e sistemi on-premise. La possibilità di sincronizzare i dati tra sistemi e piattaforme differenti consente, a chi sviluppa e mantiene le applicazioni, di poter scegliere nel modo più opportuno dove siti web e applicazioni memorizzeranno dati ed informazioni, utilizzando anche soluzioni ibride. SQL Azure Data Sync permette alle aziende di avvantaggiarsi della potenza di SQL Azure e Microsoft Sync Framework per costruire hubs di dati business nel cloud, consentendo la completa condivisione delle informazioni con utenti mobili, partner, rete vendita ed uffici remoti, grazie anche al supporto alle connessioni bi-direzionali.
Il team di Azure sta attualmente lavorando al “Project Sidney”, annunciato durante PDC09 , un servizio pensato per rispondere alle esigenze delle aziende che devono connettere, in modo sicuro e controllato, le applicazioni in esecuzione su Windows Azure con i propri servizi interni di infrastruttura. Questo consentirà ad esempio alle applicazioni ospitate su Windows Azure di accedere direttamente ai dati memorizzati nei SQL Server aziendali o in altri sistemi di backend presenti in azienda ed in questo modo si avrà la possibilità di estendere un’applicazione esistente tramite una componente addizionale costruita su Windows Azure, senza stravolgere il funzionamento e l’architettura dell’applicazione originaria.

Il cloud secondo Microsoft non si esaurisce in Windows Azure. Infatti, ancora prima dell’annuncio di Azure, Microsoft aveva messo a disposizione della propria clientela business BPOS, Business Productivity Online Suite . L’obiettivo di BPOS è quello di rendere semplice ed economico per le aziende, anche le più piccole, l’accesso alle tecnologie di collaborazione Microsoft come SharePoint, Exchange, Office Communications e Live Meeting. L’offerta di BPOS è personalizzabile, e può andare ad integrare, o se necessario, a sostituire completamente l’infrastruttura classica di collaborazione Microsoft installata on premise nelle aziende. Un’azienda che ha già in casa Microsoft Exchange potrebbe estenderne le funzionalità con le funzionalità di Web Conferencing basate su Live Meeting o con quelle di Instant Messaging e di audio/video comunicazione di Office Communications disponibili nel cloud tramite BPOS. Le funzionalità degli Exchange Hosted Services offerti all’interno della Business Productivity Online Suite consentono invece di estendere la propria infrastruttura di posta tramite delle funzionalità che permettono ad esempio di sfruttare i datacenter Microsoft per filtrare le mail in ingresso verso la propria organizzazione, eliminando virus, malware e spam ancora prima che raggiungano il mailserver e la rete aziendale. Allo stesso modo, è possibile configurare le funzionalità di Archiving , per mantenere uno store centralizzato di tutte le comunicazioni email, ad esempio per motivi di compliance. Inoltre, sono implementate apposite funzionalità di cifratura , che consentono di assicurare la sicurezza delle comunicazioni inviate tramite email, tra l’azienda ed i suoi partner.
Il passaggio da una infrastruttura tradizionale, completamente on premise, ad una nuova completamente attestata nel cloud può avvenire a step incrementali e le tecnologie di sincronizzazione tra l’Active Directory aziendale ed i servizi cloud-based permettono di ridurre la proliferazione dei sistemi di management degli utenti.
Tra l’altro, anche all’interno della stessa azienda, alcuni dipartimenti o alcuni sedi potrebbero usare i servizi basati sul cloud, mentre altri potrebbero continuare ad utilizzare quelli già installati e configurati in loco. In questo modo anche l’apertura ad esempio di un nuovo ufficio o di una nuova sede non richiede più investimenti elevati anche dal punto di vista dell’infrastruttura IT. Infatti, l’Exchange Hosted Services è facilmente e velocemente implementabile, in quanto essendo sviluppata su Internet, non c’è necessità alcuna di modificare l’infrastruttura esistente, di installare e mantenere nessuna tipologia di hardware o software specializzato, o di investire in training specifico per lo staff IT o gli utenti aziendali. Con una semplice variazione configurazionale, è possibile approfittare della tecnologia Exchange Hosted Services immediatamente. Per implementare tutte le funzionalità di EHS, devono comunque essere rispettati alcuni requisiti così riassumibili:

– per il servizio Exchange Hosted Encryption è necessario Forefront Online Protection for Exchange
– Exchange Hosted Encryption e Forefront Online Protection for Exchange sono compatibili con qualsiasi piattaforma di gestione email presente in azienda
– Lo strumento Exchange Hosted Services Directory Synchronization è opzionale e richiede:
– Windows Server 2003 SP2
– Active Directory
– Microsoft Exchange Server 2003 SP2 o Microsoft Exchange Server 2007 oppure 2010
– Microsoft.NET Framework 2.0
– Il componente Exchange Hosted Archive richiede Microsoft Exchange Server 2000 (SP3), 2003 (SP1), 2007 or 2010
– Le applicazioni Web di gestione sono accessibili via Web browser (Internet Explorer 6 or 7, Firefox 2.0 o successivi)

I servizi di SharePoint Online offerti da BPOS consentono di avere uno store documentale centralizzato ed indicizzato, che nella versione “Dedicated” può essere personalizzato in modo più granulare in base alle esigenze dell’azienda. Nel corso di quest’anno inoltre l’infrastruttura SharePoint sarà aggiornata dalle versione 2007 alla versione 2010, arricchendo così la piattaforma di molte nuove funzionalità anche nella sua versione “Standard” di hosting.
SharePoint Online aiuta la semplificazione e la gestione dei servizi IT, permettendo di superare le necessità aziendali di deployment, configurazione, monitoraggio e di aggiornamento di una soluzione di collaborazione on-premises. Grazie al Microsoft Online Administration Center, gli amministratori di servizio possono creare nuovi siti di condivisione documentale, abilitandone l’accesso a gruppi di utenti selezionati. Con SharePoint Online, le imprese possono partire immediatamente da un completo progetto di condivisione e collaborazione, potendo disporre di opportune strumenti e di una struttura altamente efficiente, affidabile e sicura. Le caratteristiche fondamentali dello SharePoint Online sono così riassumibili:

– Possibilità di condivisione documentale e workspaces dedicati ai meeting;
– Gestione dei contenuti, arricchita da molte opzioni dedicate ai documenti business ed ai contenuti Web;
– Librerie documentali con tracciatura delle versioni;
– Completa integrazione com Microsoft Office 2007 ed Office SharePoint Designer;
– Template standard contenenti wiki, blog e survey
– Alert via email configurabili, per avvertire gli utenti nell’eventualità venga aggiunto o modificato qualche risorsa documentale
– Feed RSS per i documenti attestati sul SharePoint Server
– Basso rapport di costo utente/licenza
– Supporto linguistico per Inglese, Francese, Spagnolo, Tedesco e Giapponese
– Supporto al protocollo HTTPS per garantire la sicurezza
– Protezione antivirus garantita tramite l’integrazione con Microsoft Forefront
– Supporto telefonico e via web per gli amministratori IT, 24 ore su 24, 7 giorni su 7.
Anche le funzionalità di Microsoft Dynamics CRM hanno preso la strada del cloud ed a breve anche tutti gli altri prodotti Microsoft avranno almeno una estensione online, che ne consentirà un utilizzo più flessibile e adatto anche alle esigenze delle aziende più piccole e delle startup.
Quando si parla di Infrastruttura di collaborazione ed applicazioni altamente scalabili residenti nel cloud, si è portati immediatamente a pensare che tutti questi servizi debbano poi essere necessariamente gestiti. A tal proposito, uno dei nuovi elementi dell’offerta cloud based di Microsoft è pensato proprio per la gestione dei pc aziendali direttamente dal cloud. Windows Intune , attualmente rilasciato in beta, integra tutta una seri di agent installabili sui client aziendali ed un’interfaccia di gestione web, che consentirà agli amministratori di sistema di gestire gli aggiornamenti dei pc aziendali, eseguire il monitoring dello stato dei pc, fare l’assistenza da remoto, impostare policy di gestione e tante altre operazioni. Si tratta in pratica di uno strumento pensato per le piccole e medie aziende, ed eventualmente può affiancare e completare System Center Essentials 2010 nel mantenere in perfetta efficienza la rete aziendale.

I computer che saranno gestiti con Windows Intune avranno inoltre il diritto di accedere alla licenza di Windows 7 Enterprise e di sfruttare le funzionalità offerte da MDOP – il Microsoft Desktop Optimization Pack per Software Assurance, che contiene tecnologie e prodotti come Application Virtualization ed Enterprise Desktop Virtualization, consentendo un’ulteriore riduzione dei costi dell’infrastruttura IT aziendale.
Il cloud per Microsoft non è solamente un’offerta pensata e dedicata agli sviluppatori, ai professionisti IT ed alle aziende: infatti, i servizi cloud-based come Windows Live, Xbox Live ed i servizi dedicati per Windows Phone sono offerti ed utilizzati ogni giorno da migliaia di utenti consumer, a riprova di quanto sia estesa e ben strutturata l’offerta di Microsoft per il cloud. Windows Live, Xbox Live ed i servizi di Windows Phone, sono dunque utilizzati ogni giorno da milioni e milioni di persone, per comunicare con i propri amici, per giocare, per scambiarsi fotografie ed informazioni, per memorizzare file e documenti. Un’immensa infrastruttura, messa a disposizione gratuitamente per gli utenti consumer che, ancora prima degli utenti aziendali, possono usufruire di funzionalità innovative come quella delle Office Web Apps , integrata in Windows Live Skydrive o le funzionalità antispam e antivirus di Windows Live Hotmail ed il backup cloud-based dei dispositivi Windows Phone tramite il servizio My Phone .