Nella nostra esperienza con la piattaforma cloud Microsoft Azure abbiamo seguito diversi progetti di migrazione di datacenter verso il cloud: ve ne raccontiamo uno di recente che ha previsto la creazione di una infrastruttura ex novo per un’azienda di grandi dimensioni completamente basata su piattaforma IaaS Azure.
Il progetto ha previsto la creazione di un’ambiente altamente affidabile e bilanciato appoggiato ad una soluzione di Identity Management basata su Active Directory sincronizzato con Office 365. Per ospitare gli applicativi e i workload aziendali sono stati anche creati Web Servers, una intranet basata su SharePoint e numerosi cluster basati su SQL Always On, per un totale di centinaia di Virtual Machines distribuite fra gli ambienti di sviluppo, test e produzione.
La creazione di così tante macchine è stata resa possibile in modo rapido e snello utilizzando i Template ARM, file JSON che utilizzano un approccio dichiarativo per descrivere l’infrastruttura che si vuole creare e come interconnettere e configurare i vari componenti utilizzando il paradigma di infrastructure as code.
Le proprietà di una Virtual Machine sono dichiarabili utilizzando dei parametri usati per configurare ad esempio nome utente e password, il numero di core e GB di RAM da assegnare alla macchina e una miriade di altri parametri completamente personalizzabili:
In particolare, la sfida principale di questo progetto è stata creare un’infrastruttura basata su tecnologia Microsoft RDS e Citrix XenDesktop per consentire a quasi un migliaio di utenti di fruire delle proprie postazioni di lavoro su Azure da ovunque nel mondo in modo sicuro e performante. Un esempio dello schema architetturale è il seguente:
La qualità dell’esperienza utente è stata resa possibile dalla tecnologia Express Route, una connessione diretta fra la sede del cliente ed Azure.
La scalabilità delle risorse su Azure ha anche permesso di avere una farm dedicata agli utenti in grado di allocare dinamicamente le risorse necessarie, garantendo le performance e ottimizzando i costi.