Translate!

English Chinese (Simplified) French German Japanese

Newsletter: iscriviti!

Devi prima registrarti per poterti iscrivere ad una newsletter.
No account yet? Register

Statistiche

statistiche contatore

Siti Amici

Windows Azure: con Microsoft il cloud computing si tinge d'azzurro - 6) La prova di InformaticaEasy.net
Valutazione attuale: / 2
ScarsoOttimo 
Scritto da Administrator   
Venerdì 01 Luglio 2011 08:00
Indice
Windows Azure: con Microsoft il cloud computing si tinge d'azzurro
1) Cloud Computing: computazione su... fibra ottica
2) La nuvola azzurra Windows Azure
3) Analisi dell'offerta di Windows Azure
4) La parola all'esperto: l'interessante report di un Microsoft Architect
5) Case study: T-Mobile
6) La prova di InformaticaEasy.net
7) Conclusioni
Tutte le pagine

Al link http://windowsazurepass.com/ è possibile provare in maniera completa per un periodo di tempo limitato la piattaforma Windows Azure. Microsoft sta infatti offrendo un pass valido per 30 giorni per provare Windows Azure ed SQL Azure gratuitamente.

Windows Azure

Di seguito ho voluto riportare le mie considerazioni dopo aver testato personalmente e brevemente, tramite questo "trial program", il cloud firmato Microsoft.

Windows Azure

Nel contesto Windows Azure dovremo approcciarci di continuo con un termine che a me personalmente suona malissimo: si chiama "deployment" (all'infinito "to deploy"), spesso italianizzato in "deployare".

Ma a parte l'antipatia nei confronti di questo nome, è bene ricordare che il deployment si riferisce ad un'azione decisamente comune in informatica. Come ricordatoci da Wikipedia, è la <<messa in campo o in atto (letteralmente, lo "spiegamento") di una soluzione>>. In informatica, in particolare, come significato più comune ha quello di <<consegna al cliente, con relativa installazione e messa in funzione, di una applicazione o di un sistema software. Lo si può considerare come una fase del ciclo di vita del software che conclude lo sviluppo e dà inizio alla manutenzione>>.

Windows Azure permette di effettuare il deployment software sia a livello locale (durante lo sviluppo è possibile testarlo e debuggarlo come sviluppatore) che una volta caricato via upload nel sistema cloud di Microsoft.

Ecco un semplice esempio di costruzione e deployment di un codice di esempio realizzato in ASP.NET che mostra a video "Hello World" (tanto per cambiare, salutiamo ancora una volta il mondo...). Parliamo dapprima di sviluppo in ambiente locale e quindi su Windows Azure. L'applicazione, una volta conclusone lo sviluppo, apparirà in questo modo:

Windows Azure

Iniziamo col creare ed eseguire una applicazione ASP.NET in Windows Azure, con un facile tutorial Microsoft che riporto e riadatto leggermente di seguito.

Iniziamo con l'avviare con privilegi amministrativi (è richiesto dall'emulatore di Azure) Microsoft Visual Studio 2010. Spostiamoci su File --> New --> Project e nella finestra che si apre navighiamo su Installed Templates --> Visual C# e scegliamo la voce Cloud.

A questo punto optiamo per l'opzione Windows Azure Project e, se necessario, modifichiamo il campo Location, che specifica dove la nostra creazione verrà archiviata. Ora un OK per confermare il tutto.

Windows Azure

Nella finestra New Windows Azure Project navighiamo in Visual C#, clicchiamo ASP.NET Web Role ed il simbolo >. Il nostro primo progetto inizia a prendere vita ed ecco come dovrebbe apparire la finestra di dialogo del nostro New Windows Azure Project:

Windows Azure

Questo step definirà un ruolo web per la soluzione Windows Azure che stiamo progettato. Per ruolo web (web role) si intende un ambiente per l'esecuzione di siti web o applicazioni conformemente allo standard IIS (Internet Information Services) 7.0. Clicchiamo su OK per chiudere la finestra di dialogo New Windows Azure Project.

A questo punto abbiamo essenzialmente tutto il necessario per iniziare a scrivere la nostra applicazione, il cui livello di difficoltà sarà ovviamente proporzionale all'idea che vogliamo implementare nel software e alla nostra capacità di districarci con del codice più o meno complesso da gestire e maneggiare. Ricordiamo però che più che mai in un ambiente Cloud la manutenibilità è un aspetto importantissimo del nostro programma: realizziamolo in maniera ordinata, a "blocchi" e arricchiamolo con opportuni commenti quando necessario!

Proviamo a personalizzare il testo che appare nella applicazione modificando il file Default.aspx. Questo non cambierà fondamentalmente l'applicazione, ma mostrerà quanto simile l'applicazione stessa è nei riguardi di una tradizionale ASP.NET di stampo prettamente non-cloud. Per modificare il Default.aspx, apriamo Solution Explorer ed espandiamo WebRole1, quindi facciamo doppio click su Default.aspx. Dopo il tag </h2> inseriamo ad esempio un bel:

<p>Hello World from Windows Azure!</p>

Salviamo e chiudiamo Default.aspx. A questo punto non ci resta che compilare ed eseguire l'applicazione cliccando su Debug dal menu e quindi scegliendo Start Without Debugging. Ora l'applicazione dovrebbe essere in grado di essere eseguita con successo nel PC di sviluppo locale.

Sono importantissimi due file creati da Visual Studio nello stesso momento in cui viene creato il nostro programma: si chiamano ServiceDefinition.csdef e ServiceConfiguration.cscfg. L'estensione *.csdef riguarda i file di definizione del servizio cloud, mentre *.cscfg indica i file di configurazione del servizio cloud. Il primo dei due file menzionati contiene metadata utilizzati da Windows Azure quando ospita la propria applicazione appena creata, inclusi, ad esempio, quali ruoli sono presenti nell'applicazione stessa. Il secondo file fornisce impostazioni di configurazione per la propria applicazione così come il numero di istanza da eseguire per ogni ruolo.

 

E' ora il momento di eseguire il debug locale della nostra applicazione prima di eseguirla in ambiente cloud. Apriamo da Visual Studio l'opzione WebRole.cs (attraverso il Solution Explorer, espandendo WebRole1 Project e facendo doppio click su WebRole.cs).

Ora facciamo doppio click su return base.OnStart(); ed inseriamo un Breakpoint scegliendolo dal menu contestuale. F5 e siamo pronti a debbuggare.

Un secondo metodo di debugging consiste nell'utilizzare il Windows Azure compute emulator, che permette di eseguire operazioni come visualizzare un'istanza di esecuzione del proprio sviluppo locale. Il compute emulator dovrebbe avviarsi automaticamente quando si debugga il progetto Windows Azure creato.

Per richiamarlo, facciamo right click sull'icona Windows Azure nella system tray e scegliamo Show Compute Emulator UI. Ora espandiamo il nodo Service Deployments, ed osserveremo i deployment locali corrispondenti all'applicazione che è in fase di debug. Clicchiamo sul deployment che mostrerà una console di comando con informazioni di diagnostica risultanti dalla propria applicazione e le sue interazioni con l'ambiente di sviluppo. Eccone di seguito un esempio:

Windows Azure

 

Passiamo a qualcosa di decisamente più nuovo e interessante: il deployment dell'applicazione nel cloud usando il portale di gestione di Windows Azure. Iniziamo col creare ed effettuare l'upload di un package di servizio ed un file di configurazione preliminari, scegliendo l'opzione Publish dal menu contestuale che si aprirà scegliendo il nostro project name dal Solution Explorer di Visual Studio. Dalla finestra di dialogo Deploy Windows Azure, scegliamo Create Service Package Only, quindi OK:

Windows Azure

Visual Studio aprirà una cortella che contiene i due file creati: sono ServiceConfiguration.cscfg (ne abbiamo già accennato prima) ed un secondo che reca il nome del progetto e sarà del tipo <YourProjectName>.cspkg (quest'ultima estensione è relativa ai file di package, contenenti definizione del servizio così come binari ed altri elementi per l'applicazione che deve essere deployata).

E' cruciale prendere nota del percorso di questi file, poichè ci verrà richiesto di inserirlo nel portale di gestione di Windows Azure quando effettueremo il deployment in cloud.

 

Per farlo, diamo finalmente uno sguardo al portale di gestione di Windows Azure, a cui possiamo accedere da http://windows.azure.com. Recentemente tale portale è stato ristrutturato e reso più piacevole da navigare implementanto la tecnologia Microsoft Silverlight.

Windows Azure

Scegliamo Hosted Services, Storage Accounts & CDN, quindi su New Hosted Service. Selezioniamo una sottoscrizione che verrà usata per questa applicazione inserendone un nome, usato per distinguere i propri servizi nel portale Windows Azure per la sottoscrizione specificata.

Ora inseriamo un URL per la propria applicazione (che sarà unico e univocamente assegnato solo e soltanto ad un'unica applicazione), quindi scegliamo una regione dalla lista che apparirà, quindi Deploy per avviare lo stage di sviluppo. Assicuriamoci di selezionare l'opzione: Start after successful deployment.

Specifichiamo un nome per il deployment, mentre in Package location, effettuiamo il browsing locale navigando nella cartella dove il file del nostro progetto <YourProjectName>.cspkg è memorizzato nel nostro PC, quindi selezioniamolo. Idem per il Configuration file, scegliendo però stavolta ServiceConfiguration.cscfg. Scegliamo OK.

Windows Azure

E' possibile monitorare lo stato del deployment direttamente dal portale di Windows Azure navigando nella sezione Hosted Services (da cui è possibile visionare il DNS generato che sarà del tipo http://<code>.cloudapp.net. Quando lo stato diventa Ready, è possibile inserire il nome DNS nel browser, che verrà creato durante il deployment in cloud. Il nome DNS è basato sull'URL di propria scelta dapprima specificato.

Windows Azure

A questo punto, avremo finalmente effettuato il deployment della nostra prima applicazione Windows Azure nel cloud computing targato Microsoft!




Articoli correlati:
Articoli più recenti:
Articoli meno recenti:

 
Copyright © 2009 InformaticaEasy. Tutti i diritti riservati.
E' vietata la riproduzione di qualunque contenuto del sito senza aver richiesto autorizzazione.
  Le recensioni e gli articoli sono scritti e di esclusiva proprietà di Paolo Vinella; se presenti su altri siti/forum, sono stati inseriti dallo stesso
 
Sito realizzato e gestito da Paolo Vinella.