Una strategia di migrazione al cloud costituisce un piano generale che delinea la transizione delle risorse digitali di un’organizzazione da infrastrutture on-premise o co-localizzate a un ambiente basato sul cloud. Senza dimenticare che tale processo può essere altresì parziale o completo, oltre a comportare, in certi casi, la migrazione da cloud a cloud.
Le cinque fasi della migrazione al cloud
La cloud migration si svolge, generalmente, in cinque fasi principali
1. Preparazione
Le organizzazioni, in questa fase, stabiliscono i propri obiettivi aziendali per la migrazione al cloud in termini di maggiore agilità, ottimizzazione dei costi, prestazioni migliorate o maggiore scalabilità. È necessario eseguire una valutazione iniziale della propria infrastruttura IT per censire le proprie risorse e come potrebbero essere migrate.
Inoltre, le organizzazioni dovrebbero anche valutare la propria “prontezza” al cloud, identificando eventuali lacune nelle competenze o nelle tecnologie che dovrebbero essere risolte prima della migrazione. Ancora, è necessario predisporre un business case per ogni applicazione che si intende migrare sul cloud, valorizzando il TCO. A tal proposito si consiglia di utilizzare i calcolatori dei costi del cloud per stimare i costi futuri, utilizzando ipotesi realistiche, tra cui la quantità e la natura dello storage utilizzato, le risorse di elaborazione, tenendo altresì conto dei tipi di istanza, dei sistemi operativi e dei requisiti specifici di prestazioni e di rete.
I calcolatori dei costi del cloud sono strumenti fondamentali per stimare le spese future relative all’adozione di servizi cloud. Questi calcolatori consentono di inserire vari criteri come la quantità e la natura dello storage utilizzato, le risorse di elaborazione, i tipi di istanza, i sistemi operativi e i requisiti specifici di prestazioni e di rete. Alcuni esempi di calcolatori dei costi del cloud includono:
- AWS Pricing Calculator: AWS offre un calcolatore dei costi estremamente dettagliato che permette di stimare i costi in base a una vasta gamma di servizi AWS. Gli utenti possono personalizzare le loro configurazioni per ottenere previsioni accurate e identificare opportunità di ottimizzazione.
- Google Cloud Pricing Calculator: Google Cloud offre uno strumento di calcolo dei costi che consente di stimare le spese per vari servizi Google Cloud. Include funzionalità avanzate per impostare scenari di utilizzo specifici e confrontare diverse opzioni di configurazione.
- Azure Pricing Calculator: Azure di Microsoft fornisce un calcolatore dei costi che permette di stimare il costo delle risorse cloud Azure. Gli utenti possono configurare i dettagli delle loro applicazioni e carichi di lavoro, ottenendo stime di costo basate sulle tariffe correnti.
2. Pianificazione
L’organizzazione, dopo aver stabilito i propri obiettivi aziendali e aver valutato se pronta per la migrazione al cloud, deve creare un piano di migrazione dettagliato che dovrebbe includere una roadmap, oltre a specificare quali workload saranno migrati e in quale ordine.
In questa fase si devono affrontare eventuali requisiti di conformità o di sicurezza correlati alla migrazione. Senza dimenticare l’importanza di valutare il proprio contesto e di determinare i fattori che governeranno la migrazione in termini di dati critici, dati legacy e di interoperabilità dell’applicazione.
È doveroso evidenziare che la determinazione di questi requisiti aiuterà a identificare: quali dati devono essere migrati e quando; se i dati necessitano di “pulizia”; il tipo di volumi di destinazione da utilizzare; se sarà necessaria la crittografia dei dati sia inattivi sia in transito.
3. Migrazione
La fase di migrazione è il momento in cui si trasferiscono dati, applicazioni e altri carichi di lavoro sul cloud. Poiché la migrazione dei dati è una componente critica di questo processo, è fondamentale garantire che essi rimangano accessibili agli utenti sia durante la migrazione sia nella fase di sincronizzazione e di aggiornamento dei sistemi successiva, evitando di compromettere le operazioni aziendali. Inoltre, è importante verificare che ogni elemento del carico di lavoro, una volta migrato singolarmente, funzioni correttamente nel nuovo ambiente prima di procedere con la migrazione di altri elementi, assicurando, altresì, la sincronizzazione delle modifiche apportate ai dati di origine mentre la migrazione è in corso.
4. Fase operativa
Le organizzazioni, dopo aver completato con successo la migrazione dei carichi di lavoro al cloud, entrano nella fase operativa. Tale fase comporta la gestione dei carichi di lavoro nell’ambiente cloud, monitorando le prestazioni in tempo reale, oltre a gestire le risorse e a mantenere la sicurezza e la conformità. È importante migliorare continuamente le operazioni basandosi su feedback e dati sulle prestazioni, apportando le modifiche necessarie per ottimizzarle. È anche importante valutare la sicurezza dei dati archiviati nel cloud e assicurarsi che le attività nel nuovo ambiente siano conformi alle normative vigenti sulla sicurezza dei dati. Inoltre, bisogna garantire che gli obiettivi di continuità operativa, come RPO (Recovery Point Objective) e RTO (Recovery Time Objective), siano mantenuti o aggiornati in caso di modifiche.
5. Ottimizzazione
La fase finale del processo di cloud migration è l’ottimizzazione. In questa fase, le organizzazioni si adoperano nel migliorare le prestazioni e l’efficienza del loro ambiente cloud. Ciò può comportare: l’affinamento delle operazioni cloud; l’identificazione di opportunità di risparmio sui costi; l’implementazione di funzionalità o servizi cloud-native per migliorare le prestazioni.
Le “7R” della strategia di migrazione al cloud
Quando si trasferisce la propria attività sul cloud, non esiste una soluzione adatta a tutti. Si possono impiegare diverse strategie in base alle esigenze e agli obiettivi specifici della propria organizzazione. Pertanto, la comprensione della strategia delle “7R” è fondamentale. Si tratta di un insieme di approcci progettati per aiutare le organizzazioni a pianificare ed eseguire la migrazione al cloud. Il modello è stato originariamente introdotto agli albori del cloud computing da Gartner. Vediamo di che si tratta.
Rehost (Lift and Shift)
Si tratta dell’approccio più semplice e consiste nel trasferire le applicazioni e i dati esistenti nel cloud senza apportare modifiche significative. Molte organizzazioni adottano questa strategia quando necessitano di una migrazione rapida o non dispongono delle risorse per riconfigurare le applicazioni.
Vantaggi
- Velocità –Offre la migrazione al cloud più rapida possibile.
- Semplicità – Rende la procedura di migrazione meno complicata.
- Conveniente – Riduce le spese iniziali, evitando riprogettazioni significative.
Limitazioni
- Ottimizzazione limitata – Non utilizza appieno le funzionalità native del cloud che potrebbero far risparmiare costi e aumentare le prestazioni.
- Debito tecnico – Potrebbe introdurre inefficienze e problemi legacy nell’ambiente cloud.
Relocate (hypervisor-level lift and shift)
Il relocating è simile al rehosting, ma funziona a livello di hypervisor. Tale strategia prevede lo spostamento di intere macchine virtuali nell’infrastruttura cloud senza apportare modifiche alle applicazioni. Il trasferimento è particolarmente vantaggioso per le organizzazioni che utilizzano VMware o ambienti simili che cercano una transizione rapida senza interruzioni dei servizi.
Vantaggi
- Non sono necessarie modifiche alle applicazioni – L’intero ambiente della macchina virtuale viene migrato così com’è, non è necessario modificare o effettuare il refactoring delle applicazioni, risparmiando tempo e risorse.
- Familiarità e compatibilità – Le organizzazioni che utilizzano piattaforme come VMware possono mantenere gli strumenti e le configurazioni esistenti, semplificando il processo di migrazione per i team IT.
- Riduzione delle interruzioni – La strategia riduce al minimo le interruzioni delle operazioni, garantendo che le applicazioni vengano eseguite sul cloud quasi esattamente come in locale.
Limitazioni
- Inefficienza dei costi – Le applicazioni spostate senza modifiche potrebbero non utilizzare appieno le funzionalità native del cloud, con conseguente potenziale aumento dei costi operativi.
- Problemi di prestazioni – I carichi di lavoro ottimizzati per l’infrastruttura locale potrebbero non essere efficienti nel cloud, soprattutto se non sono adattati all’architettura specifica del cloud.
- Scalabilità limitata – L’approccio non sfrutta appieno le funzionalità di scalabilità elastica del cloud, limitando potenzialmente la crescita.
Replatform (Lift, Tinker, and Shift)
Il replatforming comporta l’esecuzione di alcune ottimizzazioni cloud per ottenere vantaggi senza modificare l’architettura di base. Di fatto, si tratta di apportare piccole modifiche alle applicazioni durante la cloud migration per sfruttare le funzionalità del cloud in termini di opzioni di scalabilità o di servizi gestiti.
Vantaggi
- Aumento della produttività – Le app vengono adattate per sfruttare le funzionalità native del cloud, quali i servizi gestiti e la scalabilità.
- Risparmi – È possibile ridurre i costi operativi, utilizzando l’infrastruttura cloud in modo più abile rispetto al semplice rehosting.
- Meno rischioso – Poiché la progettazione di base dell’applicazione rimane inalterata, è meno pericolosa della riprogettazione completa.
Limitazioni
- Trasformazione limitata – Non tutte le funzionalità native del cloud potrebbero essere completamente utilizzate, nonostante i progressi.
- Possibili modifiche – L’integrazione nell’ambiente cloud potrebbe comportare la modifica di alcuni componenti dell’applicazione.
Refactor (Re-architect)
Il refactoring richiede modifiche significative o la ricompilazione di applicazioni in modo che siano native per il cloud. Inoltre, tale strategia si concentra sull’utilizzo di funzionalità native per il cloud – quali l’architettura di microservizi, l’elaborazione serverless o la containerizzazione – per massimizzare le prestazioni.
Vantaggi
- Ottimizzazione completa – Migliora le prestazioni, la scalabilità e la resilienza, sfruttando al meglio le funzionalità native del cloud.
- Risparmio a lungo termine – Contribuisce ad aumentare la produttività e a ridurre le spese, anche se all’inizio può risultare costoso.
- Abilitazione all’innovazione – È possibile adottare tecniche e tecnologie di sviluppo contemporanee, quali l’elaborazione serverless e i microservizi.
Limitazioni
- Costo iniziale elevato – Richiede un grande impegno in termini di tempo, di risorse e di competenze.
- Complessità – Comporta una ristrutturazione complessa che può portare a sfide da gestire durante la transizione.
- Interruzione dell’attività – Potrebbe influire sul modo di operare delle organizzazioni durante la migrazione.
Repurchase (Drop and Shop)
Il repurchasing consiste nel sostituire l’applicazione esistente con una basata sul cloud. Ciò comporta il passaggio da un prodotto esistente ad uno diverso con una nuova architettura, o allo stesso prodotto con un nuovo modello di erogazione dei servizi, quali Infrastructure as a Service (IaaS) e Software as a Service (SaaS).
Vantaggi
- Razionalizzazione – I portfolio IT vengono semplificati riducendo la quantità di app da gestire.
- Accesso all’innovazione – Offre agli utenti l’accesso alle funzionalità più recenti che le piattaforme Iaas e SaaS spesso offrono.
- Meno manutenzione – La responsabilità viene trasferita al fornitore Iaas o SaaS per l’aggiornamento e la manutenzione delle applicazioni.
Limitazioni
- Costi degli abbonamenti – Si può incorrere in spese operative continue a seconda dei contratti in essere.
- Difficoltà di integrazione – Potrebbero essere necessari sia la migrazione dei dati sia l’integrazione con i sistemi attuali.
- Funzionalità disomogenee – Il nuovo prodotto potrebbe non avere tutte le caratteristiche di quello attuale.
Retire
Il retiring si riferisce alla dismissione di applicazioni o carichi di lavoro che non aggiungono valore. Il ritiro di queste risorse obsolete non solo riduce i costi, ma semplifica le attività di migrazione. Pertanto, una revisione approfondita del portfolio IT può rivelare quali applicazioni non sono più necessarie e possono essere dismesse invece di migrare.
Vantaggi
- Dismissione – Elimina la necessità di mantenere ed eseguire sistemi antiquati.
- Semplificazione – Riduce la complessità dell’ambito della migrazione e dell’ambiente IT.
- Maggiore concentrazione sul valore – Consente alle organizzazioni di concentrarsi sul miglioramento e sullo spostamento di sistemi che offrono un valore aziendale reale.
Limitazioni
- Sfide in termini di individuazione – Determinare quali sistemi dovrebbero essere dismessi e raggiungere un consenso su di essi può essere difficile.
- Allineamento aziendale – È necessario l’allineamento con le unità aziendali per garantire che nessuna attività cruciale venga interrotta.
Retain
A volte, la decisione migliore è quella di non eseguire affatto la migrazione di un carico di lavoro. Se alcuni dati o applicazioni offrissero ancora valore durante il funzionamento nell’ambiente esistente, potrebbe essere più opportuno mantenerli, così come sono, fino a una fase di migrazione successiva. I carichi di lavoro legacy – ad esempio – che non offrono vantaggi immediati per il cloud o che hanno rigide restrizioni di conformità, possono rimanere on-premise.
Vantaggi
- Conformità – Garantisce che i requisiti legali e di conformità siano rispettati correttamente.
- Stabilità – Mantiene la stabilità delle applicazioni che sono sensibili alle modifiche.
- Gestione dei costi – Evita inutili spese di migrazione per i sistemi che non sono vantaggiosi per la migrazione o predisposti per il cloud.
Limitazioni
- Mancate opportunità – Le app conservate potrebbero non essere in grado di utilizzare i servizi cloud.
Complessità di gestione – Oltre all’infrastruttura cloud, permane la complessità della gestione di un ambiente distinto.