Umbraco su Windows Azure. Come e Perchè (2 Parte)

Seconda parte della guida passo passo per l’installazione di Umbraco su Windows Azure a cura di Roberto Freato.

 

Creazione dello storage account per Umbraco

Si comincia con la creazione di un account di storage dedicato all’acceleratore. È necessario loggarsi al portale di Windows Azure e selezionare New Storage Account. Nella Figura 2 specificare la subscription, il nome dello storage e la regione di creazione.

clip_image002

Figura 2 - Creazione dell’Account di Storage

Una volta creato ottenere la chiave di accesso (primaria o secondaria) come in Figura 3 e copiarla negli appunti.

clip_image003

Figura 3 - Copia negli appunti della chiave di accesso

Ora è il momento di eseguire lo script di setup (Setup.cmd) presente nella directory dell’acceleratore ed inserire la coppia nome/key dell’account di storage appena creato.

clip_image005

Figura 4 - Esecuzione dello script ed inserimento dei parametri

 

Deployment dell’acceleratore su Azure

È il momento di aprire Visual Studio ed in particolare la soluzione “Umbraco” nella cartella Code dell’acceleratore. Una volta aperto il progetto Cloud, selezionare Package su progetto “UmbracoAccelerator”. Di default, nella definizione del servizio è impostato l’utilizzo di macchine virtuali Extra-Small: per cambiarle modificare a mano o con Visual Studio il file ServiceDefinition.csdef

Procediamo ora con la creazione di un nuovo “Hosted Service” dal pannello di controllo Windows Azure, come in Figura 5: selezioniamo il nome del servizio, l’Url, la regione e il percorso del pacchetto di deployment appena creato.

clip_image002[5]

Figura 5 - Creazione del servizio Hosted di Azure

 

Prima di confermare, come in Figura 6, aggiungiamo il certificato Remote.pfx, presente nella cartella assets dell’acceleratore (password: q3&d3new7@0 ):

clip_image003[5]

Figura 6 - Aggiunta del certificato

 

Infine aspettiamo 10-15 minuti che il deployment su Windows Azure completi, prima di procedere.

 

Creazione di un server SQL Azure

Se non è mai stato creato un SQL Azure Server prima d’ora, almeno nella subscription utilizzata, è il caso di seguire queste veloci istruzioni. Nel pannello di controllo di Azure, selezionare “New Database Server” e poi “Create”, nell’area “Server” della ribbon. Selezionata la regione è necessario specificare l’utenza di amministrazione e la password amministrativa come in Figura 7 e confermare. Vedremo apparire nell’elenco dei server il nostro, con al suo interno il solo database master.

clip_image001

Figura 7 - Creazione del SQL Azure Server

 

È il momento di tenere nota del nome del server creato e delle credenziali di accesso amministrativo e di aprire temporaneamente il firewall del server per consentire l’accesso remoto dalla propria macchina. Per una apertura completa del firewall del server SQL Azure è necessario impostare una regola di grant che abbia come start ip 0.0.0.0 e end ip 255.255.255.255. Si prega di considerare che questa configurazione è la più insicura possibile, pertanto modificarla non appena venga terminata la procedura.

 

Configurazione di Umbraco nello script di setup

Ora torniamo alla shell che abbiamo lanciato poc’anzi dopo averi inserito la configurazione dello storage; ci verranno chieste le credenziali di accesso a SQL Azure, per cui riportiamo quelle appena annotate sopra (o in caso di server pre-esistente, annotare quelle). Una volta confermato, verrà creato lo schema del database e verrà chiesto se procedere ad una installazione clean. In questo caso partirà uno script di creazione della durata di qualche secondo, come in Figura 8.

clip_image002[7]

Figura 8 - Creazione di un DB pulito su SQL Azure

Nel frattempo è necessario scaricare l’ultima versione di Umbraco (l’ultima supportata è la 4.7) ed estrarla in una location nota; lo script chiederà tale location una volta terminato lo script di importazione dati su SQL Azure, come in Figura 9, per customizzare automaticamente le impostazioni del Web.config di Umbraco.

 

clip_image003[7]

Figura 9 - Individuazione del path di installazione di Umbraco

 

Alla fine verrà chiesto che database utilizzare per salvare la Session State dell’applicazione; il server di destinazione sarà lo stesso specificato prima.

Il processo è ora quasi completato: a questo punto la shell avvierà un tool grafico utile ad inviare all’Azure Storage i file di Umbraco. Come in Figura 10, bisognerà specificare dove si trovi l’installazione di Umbraco customizzata, l’account dell’Azure Storage e l’Account Key. Inoltre, siccome è necessario specificare a che Host Header dovrà rispondere il portale appena creato, si può aggiungere una riga al proprio file Hosts automaticamente, scegliendo l’opzione “Update Hosts File”. Questo consentirà di raggiungere l’hostname indicato sul server di Azure, prima di modificare effettivamente i DNS di produzione.

clip_image005[5]

Figura 10 Tool di upload di Umbraco su Azure Storage

 

Conclusioni

In questo articolo abbiamo analizzato i benefici derivanti dall’utilizzo congiunto di un CMS e del Cloud Computing, in particolare il deployment di Umbraco su Windows Azure. Abbiamo inoltre utilizzato a tal scopo un acceleratore Open-Source disponibile su CodePlex per semplificare le attività di customizzazione. Per un dimostrazione della procedura pratica spiegata in questo articolo, si rimanda alla visione del video: “Installazione di Umbraco su Windows Azure”.

 

Riferimenti

Parte degli screenshot utilizzati per questo articolo sono stati presi dalla documentazione ufficiale dell’acceleratore di Umbraco, presente al sito: https://waacceleratorumbraco.codeplex.com/.

 

Roberto Freato