Migrazione cloud, quali sono i modelli e come orientarsi

Migrazione cloud, quali sono i modelli e come orientarsi

Nell’attuale contesto economico, le organizzazioni IT fanno sempre più affidamento sulla nuvola per ammodernare infrastrutture e sistemi legacy. In un crescente numero di settori aziendali e industriali, la migrazione cloud diventa vitale per consentire di continuare a competere sul mercato con i propri prodotti e servizi. Per attuare correttamente la migrazione cloud, occorre però non fare passi falsi, commettendo errori in grado di compromettere la validità del progetto di modernizzazione dell’infrastruttura informatica.   

Cosa significa migrazione cloud 

Eseguire una migrazione cloud significa spostare, interamente o parzialmente, le risorse IT di un’organizzazione (database, dati, servizi, applicazioni), dai sistemi informatici locali verso il cloud. Tuttavia, nell’attuale contesto di maturità di sviluppo della nuvola, con migrazione cloud si può anche intendere lo spostamento di applicazioni e dati di business da una piattaforma cloud ad un’altra.   

Migrazione cloud, perché ponderare la decisione 

Il primo errore da evitare è credere che la migrazione cloud porti in ogni caso benefici, a prescindere da come essa venga attuata. È infatti importante, per prima cosa, analizzare, nella propria realtà aziendale, il caso d’uso specifico che può trarre valore di business dalla migrazione cloud, individuando le applicazioni e i dati che sarà necessario far migrare sulla nuvola, e con quali modalità. In altre parole, dev’essere ben chiaro quali benefici e obiettivi imprenditoriali giustificano l’avvio e l’implementazione del progetto di migrazione cloud per determinati processi e funzioni di business. È anche essenziale valutare con precisione i requisiti di funzionamento e le performance che ciascuna applicazione trasferita nel cloud dovrà conservare.    

Le sfide della migrazione in cloud 

Nell’individuare e selezionare, nell’infrastruttura IT aziendale, i dati e le applicazioni per la migrazione cloud, occorre anche comprendere, per ciascuna, il grado di facilità con cui è possibile eseguire l’operazione. Pertanto, sarà necessario valutare, ad esempio, in quale misura una determinata applicazione si può trasferire sul cloud senza eseguire modifiche del codice, oppure se è più conveniente modificarla, o addirittura riscriverla, per renderla compatibile con la nuova architettura.  

Modelli di migrazione cloud, pro e contro 

Per le ragioni appena esposte, è consigliabile operare la migrazione cloud seguendo, a seconda dei casi, differenti modelli di deployment: da questo punto di vista, a prescindere dalla possibilità di utilizzare un cloud pubblico, privato, ibrido, o infrastrutture multicloud, e di adottare un modello di servizio IaaS (infrastructure as a service), PaaS (platform as a Service) o SaaS (software as a Service), è fondamentale decidere quale tipo di approccio di migrazione adottare per ciascuna applicazione. Analizziamo i principali modelli, con relativi pro e contro.  

Rehosting 

L’approccio che prevede di spostare un’applicazione, così com’è, dal data center locale (on-premise), direttamente sul cloud, senza modificarne il codice, viene chiamato rehosting (lift-and-shift migration). Questo modello di migrazione cloud ha il vantaggio di evitare costi di sviluppo e testing dell’applicazione, ma lo svantaggio di non sfruttare appieno i benefici del cloud: questo perché, ad esempio, un’applicazione legacy spostata, così com’è, sulla nuvola non ha la scalabilità, la capacità di gestire workload distribuiti, che invece possiede un’applicazione cloud-native, creata specificamente per il cloud. Il rehosting potrebbe inoltre creare nell’applicazione inconvenienti di latenza, prestazioni, problemi di compliance, malfunzionamenti.  

Refactoring 

Un’altra strategia di migrazione cloud è il refactoring, che consiste nel ri-architettare, parzialmente o totalmente, e ottimizzare, il codice dell’applicazione, per consentirle di sfruttare l’agilità e scalabilità di gestione delle risorse IT fornita dal cloud. Il refactoring costituisce, rispetto ad altri, un approccio più complesso e costoso alla migrazione cloud, perché richiede modifiche del codice applicativo, e successive attività di testing, per verificare che non si manifestino fenomeni di regressione delle funzionalità esistenti.  Tuttavia, il refactoring, ad esempio tramite tecniche di sviluppo come i microservizi, permette di riadattare l’applicazione ai nuovi requisiti di business, e di farla funzionare con efficienza nel cloud.  

 

WP - modernizzare le applicazioni

Replatforming 

Il modello di migrazione cloud basato sul replatforming si può considerare come una via di mezzo tra i due approcci precedenti. Rispetto al rehosting, il replatforming implica l’attuazione di modifiche del codice applicativo, che risultano però limitate, in confronto a un progetto di refactoring. Tipicamente, attraverso il replatforming, il beneficio è la possibilità di trasferire soltanto alcune funzionalità e carichi di lavoro nel cloud, senza doversi imbarcare in un massiccio, e oneroso, progetto di migrazione cloud. Con il replatforming, i workload oggetto della migrazione possono beneficiare delle funzionalità cloud-native.  

Repurchasing 

Quando, nella fase di valutazione del software applicativo esistente, si riscontra che una data applicazione non è progettata per funzionare nel cloud, allora si può anche decidere di disattivarla, terminare la licenza, e sostituirla con una versione cloud-based, disponibile sul mercato. Di solito, questo è il caso di applicazioni legacy proprietarie, ad esempio sistemi CMS (content management system), ERP (enterprise resource planning), CRM (customer relationship management), che, sostituite con applicazioni SaaS, oltre a eliminare l’effort di sviluppo, possono anche beneficiare di nuove prestazioni e funzionalità.  

Retaining 

Talvolta, per varie ragioni, può risultare più conveniente mantenere alcune applicazioni legacy, così come sono, nel data center on-premise: magari perché funzionano ancora bene, oppure perché non sono supportate dall’architettura cloud, o, ancora, perché l’impresa in questione deve rispettare la conformità con normative che richiedono di mantenere i dati on-premise. In questo caso, quindi, la strategia di migrazione deve prediligere servizi di cloud ibrido.    

Retiring 

Un’ultima opzione riguarda anche la possibilità di disattivare e dismettere alcune applicazioni, ad esempio quando, durante il progetto di modernizzazione dell’IT, si individua software non più utilizzato, che supporta workload non più necessari, o che svolge funzioni ridondanti, già attivate nel cloud.