#impresoftgroupnews #cloud
Diverse sono le realtà aziendali che intraprendono un processo di trasformazione digitale incentrato sul cloud pubblico con l’obiettivo di aumentare l’innovazione, l’agilità e l’efficienza operativa. Nell’ambito di questo percorso, la modernizzazione delle applicazioni sta diventando rapidamente una pietra miliare che consente di ottenere importanti benefici. In questo articolo viene approfondito come è possibile intraprendere ed accelerare il processo di modernizzazione delle applicazioni con le soluzioni disponibili in Microsoft Azure e quali opportunità è possibile cogliere.
Per facilitare questo processo di migrazione è possibile utilizzare la soluzione Azure Migrate che include molti strumenti e funzionalità, tra i quali il tool App Containerization. Tale strumento offre un approccio definito “point-and-containerize” per effettuare il “repackage” delle applicazioni utilizzando i container e apportando, solo se necessario, delle modifiche minimali al codice. Lo strumento attualmente supporta la containerizzazione di applicazioni ASP.NET e applicazioni Web Java in esecuzione su Apache Tomcat.
Lo strumento App Containerization consente di effettuare le seguenti attività:
Inoltre, in Azure Migrate: App Containerization è previsto l’utilizzo di Azure Key Vault per gestire i secret e l’integrazione automatica per effettuare il monitor delle applicazioni Java con Azure Application Insights.
App Containerization consente di migrare le applicazioni in container utilizzando Azure App Service oppure Azure Kubernetes Service (AKS). Nei paragrafi seguenti vengono riportate alcune considerazioni per valutare quale servizio è più idoneo per ospitare le proprie applicazioni.
Azure App Service: Azure Web App for Containers
Per carichi di lavoro web-based esiste la possibilità di far eseguire i container dagli Azure App Service, la piattaforma Azure di web hosting, utilizzando il servizio Azure Web App for Containers, con il vantaggio di poter sfruttare le metodologie di distribuzione, scalabilità e monitor intrinseche nella soluzione.
I task di automazione e gestione di un numero elevato di container e le modalità con le quali questi interagiscono applicativamente tra di loro è noto come orchestrazione. Nel caso quindi ci sia la necessità di orchestrare più containers è necessario adottare soluzioni più sofisticate come Azure Kubernetes Service (AKS).
Azure Kubernetes Service (AKS)
Azure Kubernetes Service (AKS) è il servizio Azure completamente gestito che permette l’attivazione di un cluster Kubernetes.
Kubernetes, conosciuto anche come “k8s”, provvede all’orchestrazione automatizzata dei container, migliorandone l’affidabilità e riducendo il tempo e le risorse necessarie in ambito DevOps. Kubernetes tende a semplificare i deployment, permettendo di eseguire automaticamente le implementazioni ed i rollback. Inoltre, permette di migliorare la gestione delle applicazioni e di monitorare lo stato dei servizi per evitare errori in fase di implementazione. Tra le varie funzionalità sono previsti controlli di integrità dei servizi, con la possibilità di riavviare i container che non sono in esecuzione oppure che risultano bloccati, permettendo di annunciare ai client solo i servizi correttamente avviati. Kubernetes permette inoltre di scalare automaticamente in base all’utilizzo ed esattamente come i container, permette di gestire in maniera dichiarativa l’ambiente cluster, consentendo una configurazione controllata a livello di versione e facilmente replicabile.
La tecnica di migrazione descritta nei paragrafi precedenti spesso risulta anche il primo passo per intraprendere un’ulteriore modernizzazione dell’applicazione che comporta una riprogettazione. Infatti, lo step successivo consiste nel modificare oppure estendere l’architettura e la base di codice dell’applicazione esistente, andandola ad ottimizzare per la piattaforma cloud. Quando si integrano le moderne piattaforme applicative nella strategia di adozione del cloud, l’innovazione non si limita ai container. Questa integrazione offre una importante innovazione che comporta anche l’adozione di strategie ibride e multicloud.
Esiste una tendenza chiara e in continua crescita che vede una modernizzazione degli applicativi rivolta a garantire una maggiore flessibilità, una riduzione del footprint dell’infrastruttura e la possibilità di beneficiare dell’innovazione data dal cloud. Questa modernizzazione non necessariamente deve passare fin da subito da una strategia di rebuild dell’applicazione da zero prevedendo l’utilizzo di tecnologie cloud-native, ma può avvenire in modo graduale. Grazie allo strumento App Containerization di Azure Migrate è possibile intraprendere il percorso di modernizzazione con un approccio semplice che consente di beneficare rapidamente delle potenzialità offerte dalle soluzioni cloud. Inoltre, la consapevolezza che Azure mette a disposizione diverse soluzioni di infrastruttura per ospitare le applicazioni moderne facilita il viaggio di modernizzazione degli applicativi.
Francesco Molfese
Microsoft MVP Cloud and Datacenter Management, in 4wardPRO ricopre il ruolo di Director della Business Unit “Cloud Infrastructure”, dove è il responsabile della presenza tecnica dell’azienda nel mercato Cloud Infrastructure. Francesco è inoltre Microsoft Certified Trainer (MCT).