Eseguire la migrazione a Google Cloud: inizia

Last reviewed 2024-11-20 UTC

Questo documento ti aiuta a pianificare, progettare e implementare il processo di migrazione dei carichi di lavoro a Google Cloud. Spostare le app da un ambiente all'altro è un'attività complessa, anche per i team esperti, quindi devi pianificare ed eseguire la migrazione con attenzione.

Questo documento fa parte della seguente serie in più parti sulla migrazione aGoogle Cloud:

Questo documento è utile se stai pianificando una migrazione da un ambiente on-premise, da un ambiente di hosting privato, da un altro cloud provider aGoogle Cloudo se stai valutando l'opportunità di eseguire la migrazione e vuoi scoprire come potrebbe essere.

Inizio del viaggio

Quando pianifichi la migrazione a Google Cloud, devi innanzitutto definire gli ambienti coinvolti nella migrazione. Il punto di partenza può essere un ambiente on-premise, un ambiente di hosting privato o un altro ambiente cloud pubblico.

Un ambiente on-premise è un ambiente in cui detieni la piena proprietà e responsabilità. Mantieni il controllo completo su ogni aspetto dell'ambiente, come il raffreddamento, la sicurezza fisica e la manutenzione dell'hardware.

In un ambiente di hosting privato, ad esempio una struttura di colocation, esternalizzi parte dell'infrastruttura fisica e la sua gestione a una parte esterna. Questa infrastruttura è in genere condivisa tra i clienti. In un ambiente di hosting privato, non devi gestire i servizi di sicurezza e sicurezza fisica. Alcuni ambienti di hosting consentono di gestire parte dell'hardware fisico, come server, rack e dispositivi di rete, mentre altri gestiscono tale hardware. In genere, i cavi di alimentazione e di rete vengono forniti as a Service, quindi non devi gestirli. Hai il pieno controllo sugli hypervisor che virtualizzano le risorse fisiche, sull'infrastruttura virtualizzata di cui esegui il provisioning e sui carichi di lavoro eseguiti sull'infrastruttura.

Un ambiente cloud pubblico ha il vantaggio di non dover gestire l'intero stack di risorse in autonomia. Puoi concentrarti sull'aspetto dello stack più importante per te. Come in un ambiente di hosting privato, non è necessario gestire l'infrastruttura fisica sottostante. Inoltre, non devi gestire l'hypervisor di virtualizzazione delle risorse. Puoi creare un'infrastruttura virtualizzata e eseguire il deployment dei carichi di lavoro in questa nuova infrastruttura. È inoltre possibile acquistare servizi completamente gestiti, per i quali ti interessano solo i carichi di lavoro, lasciando a carico il carico operativo della gestione degli ambienti di runtime.

Per ogni ambiente, il documento valuta i seguenti aspetti e chi deve fornire e gestire i servizi pertinenti:

Risorse Ambiente on-premise Ambiente di hosting privato Ambiente cloud pubblico
Sicurezza e protezione fisica Tu Fornitore di servizi Fornitore di servizi
Cablaggio di alimentazione e rete Tu Fornitore di servizi Fornitore di servizi
Hardware (manutenzione inclusa) Tu Dipende dal fornitore di servizi Fornitore di servizi
Piattaforma di virtualizzazione Tu Tu Fornitore di servizi
Risorse app Tu Tu Tu (in futuro sfrutti servizi completamente gestiti)

In questo documento, l'ambiente di destinazione è Google Cloud.

Dopo aver definito gli ambienti iniziali e di destinazione, definisci i tipi di carichi di lavoro e i processi operativi correlati nell'ambito della migrazione. Questo documento prende in considerazione due tipi di carichi di lavoro e operazioni: legacy e ottimizzati per il cloud.

Le operazioni e i carichi di lavoro legacy vengono sviluppati senza alcuna considerazione per gli ambienti cloud. Queste operazioni e carichi di lavoro possono essere difficili da modificare e costosi da eseguire e mantenere, poiché di solito non supportano alcun tipo di scalabilità.

Le operazioni e i carichi di lavoro ottimizzati per il cloud sono scalabili, portatili, disponibili e sicuri in modo nativo. I carichi di lavoro e le operazioni possono contribuire ad aumentare la produttività e l'agilità degli sviluppatori, perché gli sviluppatori possono concentrarsi sui carichi di lavoro effettivi, piuttosto che dedicarsi alla gestione degli ambienti di sviluppo e runtime o gestire processi di deployment manuali e ingombranti. Google Cloud Inoltre, dispone di un modello di responsabilità condivisa per la sicurezza. Google Cloud è responsabile della sicurezza fisica e della sicurezza dell'infrastruttura, mentre tu sei responsabile della sicurezza dei carichi di lavoro di cui esegui il deployment.

Considerando questi tipi di ambiente e carichi di lavoro, la tua situazione iniziale è una delle seguenti:

  • Ambiente di hosting on-premise o privato con carichi di lavoro e operazioni legacy.
  • Ambiente di hosting privato o on-premise con carichi di lavoro e operazioni ottimizzati per il cloud.
  • Ambiente di hosting privato o cloud pubblico con carichi di lavoro e operazioni legacy.
  • Ambiente di hosting privato o cloud pubblico con carichi di lavoro e operazioni ottimizzati per il cloud.

Il processo di migrazione dipende dal punto di partenza.

La migrazione di un carico di lavoro da un ambiente on-premise legacy o un ambiente di hosting privato a un ambiente ottimizzato per il cloud, ad esempio un cloud pubblico, può essere impegnativo e rischioso. Le migrazioni riuscite riducono il carico di lavoro in modo che la migrazione venga eseguita con la minor frequenza possibile durante le operazioni. Lo spostamento di app legacy on-premise nel cloud richiede spesso più passaggi di migrazione.

Tipi di migrazioni

Questo documento definisce i seguenti tipi principali di migrazioni:

  • Rehosting: esegui la migrazione lift and shift
  • Replatforming: trasferisci e ottimizza
  • Refactoring: sposta e migliora
  • Riprogettazione dell'architettura: continua a modernizzare
  • Ricostruzione: rimuovi e sostituisci, a volte chiamato ripresa e sostituisci
  • Riacquisto

Nelle sezioni seguenti, ogni tipo di migrazione è definito con esempi di quando utilizzare ogni tipo.

Rehosting: esegui la migrazione lift and shift

In una migrazione rehosting, sposti i carichi di lavoro da un ambiente di origine a un ambiente di destinazione con modifiche minime o nulle o refactoring. Le modifiche che applichi ai carichi di lavoro da migrare sono solo le modifiche minime che devi apportare affinché i carichi di lavoro operino nell'ambiente di destinazione.

Una migrazione di nuovo host è ideale quando un carico di lavoro può operare così com'è nell'ambiente di destinazione o quando l'attività di modifica richiede poca o nessuna modifica. Questa migrazione è il tipo che richiede la minor quantità di tempo perché la quantità di refactoring è ridotta al minimo.

Potrebbero essersi verificati problemi tecnici che forzano la migrazione di un nuovo host. Se non puoi eseguire il refactoring di un carico di lavoro per la migrazione e non puoi ritirare il carico di lavoro, devi utilizzare una migrazione di nuovo host. Ad esempio, può essere difficile o impossibile modificare il codice sorgente del carico di lavoro oppure il processo di compilazione non è semplice, quindi la produzione di nuovi artefatti dopo il refactoring del codice sorgente potrebbe non essere possibile.

Le migrazioni di nuovo host sono le più semplici da eseguire perché il tuo team può continuare a utilizzare lo stesso set di strumenti e competenze che utilizzava prima. Queste migrazioni supportano anche il software pronto all'uso. Poiché esegui la migrazione dei carichi di lavoro esistenti con un refactoring minimo, le migrazioni di rehosting tendono a essere le più veloci rispetto a quelle di refactoring o ricostruzione.

Tuttavia, dopo una migrazione di nuovo host, i carichi di lavoro in esecuzione nell'ambiente di destinazione non vengono ottimizzati per il cloud. Questi carichi di lavoro non sfruttano appieno le funzionalità della piattaforma cloud, come la scalabilità orizzontale, i prezzi granulari e i servizi altamente gestiti.

Replatforming: trasferisci e ottimizza

Con una migrazione di replatforming, rimuovi i carichi di lavoro esistenti per poi ottimizzarli per il nuovo ambiente cloud.

La migrazione con replatforming è ideale per le organizzazioni che desiderano sfruttare tutte le competenze fondamentali del cloud. tra cui computing elastico, ridondanza, miglioramento delle prestazioni e sicurezza.

Ad esempio, potresti eseguire il replatforming di un carico di lavoro nel cloud per sfruttare un'architettura di microservizi basata su cloud o i container in Google Kubernetes Engine. Questi carichi di lavoro avranno quindi prestazioni più elevate e maggiore efficienza in esecuzione nel cloud.

Tuttavia, le migrazioni di replatforming richiedono più lavoro rispetto a quelle di rehosting. La nuova piattaforma cloud avrà un codebase sottostante diverso, che richiede diversi cicli di test per garantire che tutto funzioni al suo livello ottimale.

Refactoring: sposta e migliora

In una migrazione di refactoring, modifichi i carichi di lavoro per sfruttare le funzionalità cloud e non solo modifichi i carichi di lavoro per farli funzionare nel nuovo ambiente. Puoi migliorare ciascun carico di lavoro in termini di prestazioni, funzionalità, costi ed esperienza utente.

Puoi modificare i carichi di lavoro durante la migrazione al cloud o anche prima di eseguirne la migrazione. Ad esempio, se non hai esperienza con le migrazioni cloud, potresti preferire modificare i carichi di lavoro durante la migrazione. Tuttavia, se hai esperienza di migrazione al cloud, potresti già avere un'idea delle modifiche necessarie ai carichi di lavoro per sfruttare appieno le funzionalità cloud.

Se l'architettura o l'infrastruttura attuale di un'app non è supportata nell'ambiente di destinazione così com'è, è necessaria una certa quantità di refactoring per superare questi limiti.

Un altro motivo per scegliere l'approccio di refactoring è quando è necessario un aggiornamento importante del carico di lavoro in aggiunta agli aggiornamenti necessari per la migrazione.

Le migrazioni di refactoring consentono alla tua app di sfruttare le funzionalità di una piattaforma cloud, come scalabilità e alta disponibilità. Puoi anche progettare il miglioramento per aumentare la portabilità dell'app.

Tuttavia, le migrazioni di refactoring richiedono più tempo rispetto a quelle con rehosting perché è necessario eseguire il refactoring dei carichi di lavoro per consentire la migrazione dell'app.

Una migrazione di refactoring richiede anche l'acquisizione di nuove competenze.

Riprogettazione dell'architettura: continua a modernizzare

Le migrazioni di riprogettazione sono simili a quelle di refactoring. Tuttavia, invece di ristrutturare il funzionamento del codice del carico di lavoro, riprogetta le migrazioni cambiano il modo in cui funziona il codice. Queste modifiche al codice ottimizzano il carico di lavoro e sfruttano proprietà ottimizzate per il cloud come scalabilità, sicurezza e agilità. Ad esempio, una migrazione di riprogettazione può richiedere un carico di lavoro monolitico di grandi dimensioni e trasformarlo in vari microservizi indipendenti su cui esegui il deployment Google Cloud.

Una migrazione di riprogettazione dell'architettura è più complessa di una migrazione di refactoring, quindi richiede più tempo e impegno. Una migrazione riprogettata può anche introdurre bug o problemi di sicurezza nei nuovi carichi di lavoro. Pertanto, una riprogettazione della migrazione richiede diversi cicli di test per garantire che tutto sia in esecuzione al livello ottimale.

Ricostruzione: rimuovi e sostituisci

Con la nuova migrazione, dismetti un'app esistente, riprogetta e riscrivi completamente come app completamente ottimizzata per il cloud.

Se l'app attuale non soddisfa i tuoi obiettivi, ad esempio non vuoi mantenerla, è troppo costoso eseguire la migrazione con uno degli approcci indicati in precedenza o non è supportata su Google Cloud, puoi eseguire di nuovo la migrazione.

Le migrazioni di nuova creazione consentono alla tua app di sfruttare appieno Google Cloud le funzionalità, come la scalabilità orizzontale, i servizi altamente gestiti e l'alta disponibilità. Poiché stai riscrivendo l'app da zero, rimuovi anche il debito tecnico della versione precedente esistente.

Tuttavia, le migrazioni di nuova creazione possono richiedere più tempo rispetto a quelle di rehosting o refactoring. Inoltre, questo tipo di migrazione non è adatto alle app già pronte perché richiede la riscrittura dell'app. Devi valutare il tempo e gli sforzi aggiuntivi necessari per riprogettare e riscrivere l'app nell'ambito del suo ciclo di vita.

Anche una nuova migrazione richiede nuove competenze. Devi utilizzare nuove toolchain per eseguire il provisioning e la configurazione del nuovo ambiente, nonché il deployment dell'app in quell'ambiente.

Riacquisto

Una migrazione con riacquisto si verifica quando passi da un carico di lavoro on-premise acquistato a un equivalente SaaS (Software-as-a-Service) ospitato nel cloud. Ad esempio, puoi passare dal software di collaborazione on-premise e dall'archiviazione locale a Google Workspace.

Dal punto di vista delle risorse, una migrazione di nuovo acquisto potrebbe essere molto più semplice rispetto al refactoring, alla ricreazione o alla riprogettazione dell'architettura. Tuttavia, una migrazione di nuovo acquisto potrebbe essere molto più costosa e potresti non usufruire delle funzionalità granulari di controllo dei tuoi ambienti cloud.

Google Cloud Framework per l'adozione

Prima di iniziare la migrazione, devi valutare la maturità della tua organizzazione nell'adozione delle tecnologie cloud. Il Google Cloud framework per l'adozione è utile sia come mappa per determinare dove si trovano ora le tue funzionalità informatiche aziendali, sia come guida verso dove vuoi arrivare.

Puoi utilizzare questo framework per valutare la preparazione della tua organizzazione perGoogle Cloud e cosa devi fare per colmare le lacune e sviluppare nuove competenze, come illustrato nel diagramma di seguito.

Architettura del framework per l'adozione di Google Cloud con quattro temi e tre fasi.

Il framework valuta quattro temi:

  • Impara. La qualità e la portata dei tuoi programmi di apprendimento.
  • Piombo. La misura in cui i reparti IT sono supportati da un mandato della dirigenza a eseguire la migrazione al Google Cloud.
  • Scala. La misura in cui utilizzi servizi ottimizzati per il cloud e quanta automazione operativa dispone.
  • Sicuro. La capacità di proteggere l'ambiente attuale da accessi non autorizzati e inappropriati.

Per ogni tema dovresti essere in una delle tre fasi seguenti, a seconda del framework:

  • Tattico. Non esistono piani coerenti che coprano tutti i singoli carichi di lavoro in atto. Ti interessa soprattutto un rapido ritorno degli investimenti e poche interruzioni per la tua organizzazione IT.
  • Strategico. È disponibile un piano per lo sviluppo di singoli carichi di lavoro tenendo conto delle future esigenze di scalabilità. Ti interessa l'obiettivo a medio termine di semplificare le operazioni in modo che siano più efficienti rispetto a oggi.
  • Trasformativi. Le operazioni cloud funzionano senza problemi e puoi usare i dati raccolti da queste operazioni per migliorare l'IT. Ti interessa l'obiettivo a lungo termine di rendere il reparto IT uno dei motori dell'innovazione della tua organizzazione.

Quando valuti i quattro argomenti in termini di tre fasi, ottieni la scalabilità di maturità del cloud. In ogni tema, puoi vedere cosa succede quando si passa dall'adozione di nuove tecnologie quando necessario a una collaborazione più strategica all'interno dell'organizzazione, il che significa naturalmente una formazione più profonda, completa e coerente per i tuoi team.

Il percorso di migrazione

È importante ricordare che una migrazione è un viaggio. Ti trovi nel punto A con la tua infrastruttura e i tuoi ambienti esistenti e vuoi raggiungere il punto B. Per andare da A a B, puoi scegliere una qualsiasi delle opzioni descritte in precedenza.

Il seguente diagramma illustra il percorso di questo percorso.

Percorso di migrazione con quattro fasi.

La migrazione prevede quattro fasi:

Trovare assistenza

Google Cloud offre varie opzioni e risorse per consentirti di trovare l'aiuto e l'assistenza necessari per sfruttare al meglio i Google Cloud servizi.

Risorse self-service

Se non hai bisogno di assistenza dedicata, puoi utilizzare queste risorse self-service:

  • Documentazione del prodotto. Google Cloud fornisce la documentazione per ciascuno dei suoi prodotti e servizi, nonché per le API.
  • Documentazione del Centro architettura. La sezione dedicata alla migrazione del Centro architetture copre molti scenari di migrazione. Ad esempio, le risorse per la migrazione forniscono indicazioni sul percorso di migrazione a Google Cloud.
  • di Google Cloud. Google Cloud offre diversi prodotti e servizi per aiutarti a eseguire la migrazione. Ad esempio:
    • Il Centro di migrazione di Google Cloud è una piattaforma unificata che ti consente di accelerare il tuo percorso verso il cloud end-to-end dagli attuali ambienti on-premise o cloud aGoogle Cloud.
    • Migrazione a macchine virtuali è un prodotto per la migrazione di server fisici e macchine virtuali da ambienti on-premise e cloud a Google Cloud. In pochi minuti, Migrate to VM consente di eseguire in pochi minuti la migrazione di una macchina virtuale aGoogle Cloud , dove i dati vengono copiati in background ma le macchine virtuali sono completamente operative.
    • Storage Transfer Service consente di trasferire in Cloud Storage i dati di altri cloud provider, di risorse online o di dati locali.
    • Database Migration Service è un prodotto che consente di eseguire la migrazione dei database in Google Cloud.
    • Transfer Appliance è un'appliance hardware che puoi utilizzare per eseguire la migrazione di grandi volumi di dati (dalle centinaia di terabyte fino a 1 petabyte) a Google Cloud senza interrompere le operazioni aziendali.
    • BigQuery Migration Service è una soluzione completa per la migrazione del tuo data warehouse su BigQuery.
  • White paper Questi articoli includono architetture di riferimento, case study, best practice e tutorial avanzati.
  • Contenuti multimediali. Puoi ascoltare il Google Cloud podcast o guardare uno qualsiasi dei video sul Google Cloud canale YouTube. Queste risorse trattano un'ampia gamma di argomenti, dalle spiegazioni dei prodotti alle strategie di sviluppo.
  • Corsi e lab online. Google Cloud offre diversi corsi su Coursera che includono contenuti video, materiali di lettura e lab. Puoi anche seguire i lab utilizzando Google Cloud Skills Boost o partecipare a lezioni online dal vivo.

Partner tecnologici

Google Cloud ha collaborato con più aziende per consentirti di utilizzare i loro prodotti. L'uso di alcune offerte potrebbe essere gratuito, quindi rivolgiti all'azienda e al tuo Google Cloud account manager.

Integratori di sistemi

Google Cloud non solo collabora con aziende tecnologiche e di prodotti, ma anche con integratori di sistemi in grado di fornire assistenza pratica tramite la tastiera. Nell'elenco dei partner, puoi trovare un elenco di integratori di sistemi specializzati nelle migrazioni al cloud.

Google Cloud Servizi professionali

Il nostro team di servizi professionali è a tua disposizione per aiutarti a ottenere il massimo dal tuo investimento in Google Cloud.

Piano e nozioni di base Cloud: richiedi assistenza per la migrazione

I servizi professionali possono aiutarti a pianificare la migrazione e a eseguire il deployment dei carichi di lavoro in produzione con la nostra offerta Cloud Plan and Foundations. Questi esperti forniscono al tuo team indicazioni in ogni fase della migrazione del carico di lavoro alla produzione, dalla configurazione Google Cloud di base all'ottimizzazione della piattaforma per le tue esigenze specifiche di carico di lavoro fino al deployment del carico di lavoro.

Gli obiettivi di Cloud Plan e Foundations sono:

  • Configura gli elementi di base Google Cloud .
  • Crea la documentazione sulla progettazione.
  • Pianifica le attività di deployment e migrazione.
  • Esegui il deployment dei carichi di lavoro in produzione.
  • Tieni traccia di problemi e rischi.

I servizi professionali guidano il tuo team attraverso le seguenti attività e prodotti:

  1. Organizzazione di workshop di avvio tecnico.
  2. Creazione di un documento di progettazione tecnica.
  3. Creazione di un piano di migrazione in corso...
  4. Creazione di uno statuto del programma in corso...
  5. Fornisce la gestione dei progetti.
  6. Fornire competenze tecniche.

Cloud Sprint: accelera la migrazione a Google Cloud

Cloud Sprint è un workshop intensivo che accelera la migrazione delle tue app aGoogle Cloud. In questo workshop, Google Cloud Servizi professionali guidano uno dei tuoi team attraverso discussioni interattive, sessioni di lavagna e revisione delle app di destinazione di cui eseguire la migrazione Google Cloud. Durante il corso Cloud Sprint, i servizi professionali lavoreranno insieme ai membri del tuo team per aiutarti ad acquisire un'esperienza diretta con le soluzioni cloud con attività di deployment obbligatorie per aiutarti a comprendere i prossimi passi per le Google Cloud migrazioni future.

Formazione: sviluppa le competenze del team

Google Cloud I servizi professionali possono offrire formazione in determinati campi in base alle esigenze del tuo team.

Passaggi successivi

Collaboratori

Autore: Marco Ferrari | Cloud Solutions Architect