Migrazione da AWS a Google Cloud: migrazione da Amazon EC2 a Compute Engine

Last reviewed 2023-10-13 UTC

Google Cloud offre strumenti, prodotti, indicazioni e servizi per la migrazione delle macchine virtuali (VM) insieme ai relativi dati da Amazon da Elastic Compute Cloud (Amazon EC2) per Compute Engine. Questo documento illustra come progettare, implementare e convalidare un piano di migrazione. da Amazon EC2 a Compute Engine.

La discussione in questo documento è rivolta agli amministratori cloud che vogliono i dettagli su come pianificare e implementare un processo di migrazione. È inoltre prevista per i responsabili delle decisioni che stanno valutando l'opportunità di migrare e che vogliono per scoprire come potrebbe essere la migrazione.

Questo documento fa parte di una serie in più parti sulla migrazione da AWS a Google Cloud che include i seguenti documenti:

Questa serie presuppone che tu abbia letto e abbia familiarità con i seguenti argomenti documenti:

Il seguente diagramma illustra il percorso del tuo percorso di migrazione. Per di migrazione, la fase di deployment equivale a eseguire una migrazione e il processo di sviluppo.

Percorso di migrazione con quattro fasi.

Puoi eseguire la migrazione da Amazon EC2 a Compute Engine seguendo una serie Ad esempio, potresti eseguire la migrazione di alcuni carichi di lavoro prima e di altri in un secondo momento. Per ogni singola iterazione della migrazione, segui le fasi del framework per la migrazione:

  1. Valuta e individua i carichi di lavoro e i dati.
  2. Pianifica e crea una base su Google Cloud.
  3. Esegui la migrazione dei carichi di lavoro e dei dati in Google Cloud.
  4. Ottimizza il tuo ambiente Google Cloud.

Per ulteriori informazioni sulle fasi di questo framework, consulta Eseguire la migrazione a Google Cloud: inizia.

Valuta l'ambiente di origine

Nella fase di valutazione, stabilisci i requisiti e le dipendenze del le risorse di cui vuoi eseguire la migrazione da Amazon EC2 a Compute Engine.

La fase di valutazione è composta dalle seguenti attività:

  1. Crea un inventario completo dei tuoi carichi di lavoro.
  2. Cataloga i carichi di lavoro in base alle loro proprietà e dipendenze.
  3. Forma e forma i tuoi team su Google Cloud.
  4. Crea esperimenti e proof of concept su Google Cloud.
  5. Calcola il costo totale di proprietà (TCO) dell'ambiente di destinazione.
  6. Decidi l'ordine e la priorità dei carichi di lavoro di cui vuoi eseguire la migrazione.

Per ulteriori informazioni sulla fase di valutazione e su queste attività, consulta: Esegui la migrazione a Google Cloud: valuta e individua i tuoi carichi di lavoro. Le sezioni seguenti si basano sulle informazioni contenute nel documento.

Crea un inventario delle tue istanze Amazon EC2

Per definire l'ambito della migrazione, crea un inventario delle tue istanze Amazon EC2. Puoi quindi utilizzare l'inventario per valutare la distribuzione e l'operatività per il deployment dei carichi di lavoro su queste istanze.

Per creare l'inventario delle tue istanze Amazon EC2, ti consigliamo di utilizzare Centro di migrazione, La piattaforma unificata di Google Cloud che ti aiuta ad accelerare il processo end-to-end il percorso del cloud dal tuo ambiente attuale a Google Cloud. Il Centro di migrazione consente di importare dati da Amazon EC2 e altre risorse AWS. Migration Center consiglia quindi Google Cloud pertinente da cui eseguire la migrazione.

Dopo aver valutato l'ambiente mediante Migration Center, di generare un report di valutazione tecnica della migrazione utilizzando l'interfaccia a riga di comando del client predittivo di Migration Center. Per ulteriori informazioni le informazioni, vedi Raccogli dati ospiti dalle istanze Amazon EC2 per la valutazione offline.

I dati che il Centro di migrazione e L'interfaccia a riga di comando del client predittivo di Migration Center potrebbe non esserlo acquisire completamente le dimensioni che ti interessano. In tal caso, puoi integrare questi dati con i risultati di altri meccanismi di raccolta dati che che crei sulla base di API AWS, strumenti per sviluppatori AWS e a interfaccia a riga di comando.

Oltre ai dati ottenuti dal Centro di migrazione dell'interfaccia a riga di comando del client predittivo di Migration Center, considera seguenti punti dati per ogni istanza Amazon EC2 di cui vuoi eseguire la migrazione:

  • Regione e zona del deployment.
  • Tipo e dimensione dell'istanza.
  • L'Amazon Machine Image (AMI) da cui viene avviata l'istanza.
  • Il nome host dell'istanza e come vengono utilizzati da altre istanze e carichi di lavoro questo nome host per comunicare con l'istanza.
  • I tag dell'istanza, così come i metadati e i dati utente.
  • Il tipo di virtualizzazione dell'istanza.
  • L'opzione di acquisto dell'istanza, ad esempio l'acquisto on demand o l'acquisto spot.
  • Modalità di archiviazione dei dati da parte dell'istanza, ad esempio l'utilizzo degli archivi di istanze e di Amazon come i volumi EBS.
  • La configurazione della tenancy dell'istanza.
  • Se l'istanza si trova in un gruppo di posizionamenti specifico.
  • Se l'istanza si trova in un gruppo di scalabilità automatica specifico.
  • I gruppi di sicurezza a cui appartiene l'istanza.
  • Qualsiasi configurazione di AWS Network Firewall che coinvolga l'istanza.
  • Se i carichi di lavoro in esecuzione sull'istanza sono protetti da AWS Shield e AWS WAF.
  • Se stai controllando lo stato del processore dell'istanza e come I carichi di lavoro in esecuzione sull'istanza dipendono dallo stato del processore.
  • La configurazione dello scheduler di I/O dell'istanza.
  • Come esporre ai client i carichi di lavoro in esecuzione sull'istanza in esecuzione nel tuo ambiente AWS (come altri carichi di lavoro) e all'esterno clienti.

Valuta il deployment e i processi operativi

È importante avere una chiara comprensione di come l'implementazione dei processi operativi. Questi processi sono una parte fondamentale che preparano e gestiscono l'ambiente di produzione e per i carichi di lavoro che vengono eseguiti lì.

I processi operativi e di deployment potrebbero creare gli artefatti per il corretto funzionamento dei carichi di lavoro. Pertanto, dovresti raccogliere informazioni su ogni tipo di artefatto. Ad esempio, un artefatto può essere un pacchetto del sistema operativo, un pacchetto di deployment delle applicazioni, un'immagine del sistema operativo, un'immagine container altro.

Oltre al tipo di artefatto, valuta come completare le attività seguenti:

  • Sviluppa i tuoi carichi di lavoro. Valutare i processi seguiti dai team di sviluppo dei carichi di lavoro. Ad esempio, in che modo i team di sviluppo progettando, programmando e testando i carichi di lavoro?
  • Genera gli artefatti di cui esegui il deployment nel tuo ambiente di origine. A dei carichi di lavoro nell'ambiente di origine, potresti generare artefatti di cui è possibile eseguire il deployment, come immagini container o immagini del sistema operativo potresti personalizzare elementi esistenti, come la gestione le immagini di sistema installando e configurando il software. La raccolta di informazioni su come stai generando questi artefatti ti aiuta a per assicurarti che gli artefatti generati siano adatti al deployment in Google Cloud.
  • Archivia gli artefatti. Se produci artefatti che archivi in un Artifact Registry nel tuo ambiente di origine, devi rendere gli artefatti disponibili nel tuo ambiente Google Cloud. Puoi farlo utilizzando strategie come le seguenti:

    • Stabilisci un canale di comunicazione tra gli ambienti. Rendi il artefatti nel tuo ambiente di origine raggiungibili dalla destinazione nell'ambiente Google Cloud.
    • Esegui il refactoring del processo di creazione degli artefatti: completa un piccolo refactoring del tuo in modo da poter archiviare gli artefatti sia nell'ambiente di origine e l'ambiente di destinazione. Questo approccio supporta della migrazione creando un'infrastruttura come un repository di artefatti prima di implementare i processi di creazione degli artefatti nel Google Cloud completamente gestito di Google Cloud. Puoi implementare questo approccio direttamente o basarti su l'approccio precedente, che prevede per prima cosa un canale di comunicazione.

    La disponibilità degli artefatti sia nell'ambiente di origine che in quello di destinazione ti consente per concentrarsi sulla migrazione senza dover implementare i processi di creazione degli artefatti nell'ambiente Google Cloud di destinazione nell'ambito della migrazione.

  • Scansiona e firma il codice. Nell'ambito dei processi di build degli artefatti, potresti utilizzando la scansione del codice per proteggerti dalle vulnerabilità comuni per evitare un'esposizione accidentale della rete e la firma del codice per garantire che il codice attendibile viene eseguito nei tuoi ambienti.

  • Esegui il deployment degli artefatti nell'ambiente di origine. Dopo la generazione artefatti di cui è possibile eseguire il deployment, potresti eseguirne il deployment nel tuo ambiente di origine. Ti consigliamo di valutare ogni processo di deployment. La valutazione aiuta garantire che i processi di deployment siano compatibili con Google Cloud. Inoltre, ti aiuta a comprendere l'impegno necessario per e infine il refactoring dei processi. Ad esempio, se i tuoi processi di deployment funzionino solo con il tuo ambiente di origine, potresti dover eseguire il refactoring definire come target il tuo ambiente Google Cloud.

  • Inserisci la configurazione di runtime. È possibile che tu abbia inserito la configurazione di runtime per cluster, ambienti di runtime o deployment di carichi di lavoro specifici. La potrebbe inizializzare le variabili di ambiente e altre configurazioni come secret, credenziali e chiavi. Per garantire che i tuoi i processi di iniezione della configurazione runtime funzionano su Google Cloud, ti consigliamo di valutare le modalità di configurazione dei carichi di lavoro in esecuzione dell'ambiente di origine.

  • Logging, monitoraggio e profilazione. Valutare le attività di logging, monitoraggio i processi di profilazione in atto per monitorare l'integrità dei tuoi dell'ambiente di origine, le metriche di interesse e il modo in cui utilizzi i dati forniti da questi processi.

  • Autenticazione del cluster. Valuta la tua modalità di autenticazione rispetto al tuo nell'ambiente di origine.

  • Esegui il provisioning e la configurazione delle risorse AWS. Per preparare la fonte: di progettazione e implementazione di processi che e configurare le risorse. Ad esempio, potresti utilizzare Terraform oltre a strumenti di gestione della configurazione per il provisioning e la configurazione delle risorse nel tuo ambiente di origine.

Pianifica e costruisci le tue basi

Nella fase di pianificazione e creazione, esegui il provisioning e la configurazione dell'infrastruttura procedi nel seguente modo:

  • Supporta i tuoi carichi di lavoro nel tuo ambiente Google Cloud.
  • Connetti il tuo ambiente di origine e il tuo ambiente Google Cloud a per completare la migrazione.

La fase di pianificazione e creazione è composta dalle seguenti attività:

  1. Creare una gerarchia di risorse.
  2. Configurare Identity and Access Management (IAM) di Google Cloud.
  3. Configura la fatturazione.
  4. Configura la connettività di rete.
  5. Rafforza la tua sicurezza.
  6. Configura il logging, il monitoraggio e gli avvisi.

Per ulteriori informazioni su ciascuna di queste attività, consulta Esegui la migrazione a Google Cloud: pianifica e costruisci le tue basi.

Migrazione dei carichi di lavoro

Per eseguire la migrazione dei carichi di lavoro da Amazon EC2 a Compute Engine, devi seguenti:

  1. Esegui la migrazione delle VM da Amazon EC2 a Compute Engine.
  2. Esponi ai client i carichi di lavoro in esecuzione su Compute Engine.
  3. Esegui il refactoring del deployment e dei processi operativi per raggiungere gli obiettivi Google Cloud anziché scegliere come target Amazon EC2.

Le sezioni seguenti forniscono dettagli su ciascuna di queste attività.

Migrazione delle VM su Compute Engine

Per eseguire la migrazione delle VM da Amazon EC2 a Compute Engine, ti consigliamo utilizzare Eseguire la migrazione alle macchine virtuali, che è un servizio completamente gestito. Per ulteriori informazioni, vedi Percorso di migrazione con Migrate to VM.

Nell'ambito di questa migrazione, Migrate for VM esegue la migrazione delle istanze Amazon EC2 in il loro stato attuale, a parte modifiche necessarie alla configurazione. Se le tue istanze Amazon EC2 eseguono AMI Amazon EC2 personalizzate, Migrate for VM esegue la migrazione di queste personalizzazioni nelle istanze di Compute Engine. Tuttavia, se per rendere la tua infrastruttura riproducibile, potresti dover applicare personalizzazioni equivalenti creando Immagini del sistema operativo Compute Engine come parte dei processi operativi e di deployment, come spiegato più avanti documento. Puoi anche importa le tue AMI Amazon EC2 in Compute Engine.

Esponi i carichi di lavoro in esecuzione su Compute Engine

Dopo aver eseguito la migrazione delle istanze Amazon EC2 in Compute Engine potresti dover eseguire il provisioning e la configurazione per esporre i carichi di lavoro ai client.

Google Cloud offre servizi e prodotti sicuri e affidabili per di esporre i tuoi carichi di lavoro ai client. Per i carichi di lavoro in esecuzione In un'istanza Compute Engine, devi configurare le risorse per categorie:

  • Firewall
  • Bilanciamento del carico del traffico
  • Nomi, zone e record DNS
  • DDoS e web application firewall

Per ciascuna di queste categorie, puoi iniziare implementando una base di riferimento simile a quella che hai configurato per i servizi e le risorse AWS la categoria equivalente. Puoi quindi ripetere la configurazione e utilizzare le funzionalità aggiuntive fornite dai servizi Google Cloud.

Le sezioni seguenti spiegano come eseguire il provisioning e configurare Risorse Google Cloud in queste categorie e come vengono mappate ad AWS risorse in categorie simili.

Firewall

Se hai configurato i gruppi di sicurezza AWS e i criteri del firewall di rete AWS puoi configurare le regole Criteri e regole firewall di nuova generazione. Puoi anche eseguire il provisioning Regole di Controlli di servizio VPC per regolare il traffico di rete all'interno del VPC. Puoi utilizzare Controlli di servizio VPC per bloccare le connessioni di rete indesiderate al tuo le istanze di Compute Engine e per contribuire a mitigare il rischio l'esfiltrazione dei dati.

Ad esempio, se usi i gruppi di sicurezza AWS per consentire o negare le connessioni a alle tue istanze Amazon EC2, puoi configurare Regole firewall Virtual Private Cloud (VPC) applicabili alle tue istanze Compute Engine.

Bilanciamento del carico del traffico

Se hai configurato Elastic Load Balancing (ELB) nel tuo ambiente AWS, può configurare Cloud Load Balancing per distribuire il traffico di rete al fine di migliorare la scalabilità dei carichi di lavoro in Google Cloud. Cloud Load Balancing supporta regionale prodotti di bilanciamento del carico che operano a diversi livelli modello OSI, ad esempio a livello di trasporto e di applicazione. Puoi scegli un prodotto di bilanciamento del carico adatto ai requisiti dei tuoi carichi di lavoro.

Cloud Load Balancing supporta anche configurazione di Transport Layer Security (TLS) per criptare il traffico di rete. Quando configuri TLS per Cloud Load Balancing, puoi utilizzare certificati TLS autogestiti o gestiti da Google a seconda delle tue esigenze.

Nomi, zone e record DNS

Se utilizzi Amazon Route 53 nel tuo ambiente AWS, puoi utilizzare quanto segue: in Google Cloud:

Ad esempio, se hai registrato un dominio utilizzando Amazon Route 53, puoi trasferire la registrazione del dominio a Cloud Domains. Allo stesso modo, se hai configurato zone DNS pubbliche e private utilizzando Amazon Route 53, puoi eseguire la migrazione della configurazione a Cloud DNS.

Protezione dagli attacchi DDoS e web application firewall

Se hai configurato AWS Shield e AWS WAF nel tuo ambiente AWS, puoi utilizzare Google Cloud Armor per proteggere i carichi di lavoro Google Cloud dagli attacchi DDoS e exploit comuni.

Esegui il refactoring del deployment e dei processi operativi

Dopo aver eseguito il refactoring dei carichi di lavoro, devi eseguire il refactoring del deployment e delle operazioni processi per:

  • Esegui il provisioning e la configurazione delle risorse nel tuo ambiente Google Cloud anziché eseguire il provisioning delle risorse nell'ambiente di origine.
  • Crea e configura carichi di lavoro ed eseguine il deployment in Google Cloud anziché eseguirne il deployment nell'ambiente di origine.

Hai raccolto informazioni su questi processi durante la fase di valutazione nelle prime fasi di questo processo.

Il tipo di refactoring da considerare per questi processi dipende come li hai progettati e implementati. Il refactoring dipende anche da cosa lo stato finale di ogni processo. Ad esempio, considera quanto segue:

  • Probabilmente avete implementato questi processi nell'ambiente di origine e intendiamo progettare e implementare processi simili in Google Cloud. Per Ad esempio, puoi eseguire il refactoring di questi processi Cloud Build Cloud Deploy e Infrastructure Manager.
  • Potresti aver implementato questi processi in un altro ambiente di terze parti esterno all'ambiente di origine. In questo caso, è necessario eseguire il refactoring per scegliere come target il tuo ambiente Google Cloud anziché l'ambiente di origine completamente gestito di Google Cloud.
  • Una combinazione degli approcci precedenti.

Il refactoring del deployment e dei processi operativi può essere complesso e richiedere molto impegno. Se provi a eseguire queste attività nell'ambito del carico di lavoro una migrazione dei dati, la migrazione dei carichi di lavoro può diventare più complessa ai rischi. Dopo aver valutato i processi operativi e di deployment, probabilmente comprenderne il design e la complessità. Se ritieni di aver richiedono un impegno sostanziale per il refactoring del deployment e delle operazioni ti consigliamo di prendere in considerazione il refactoring dei processi nell'ambito un progetto separato e dedicato.

Per saperne di più su come progettare e implementare processi di deployment su Google Cloud, consulta:

Esegui il refactoring dei processi di creazione delle immagini container

Potresti archiviare le immagini container che crei per i tuoi carichi di lavoro un registro di immagini container nel tuo ambiente di origine o in un Container Image Registry. Per questa migrazione a GKE, ti consigliamo di refactoring dei processi di creazione delle immagini container archiviare immagini container in Artifact Registry.

Per facilitare i rollback finali a causa di problemi imprevisti durante migrazione, puoi archiviare le immagini container sia nell'immagine container attuale nel registry e in Artifact Registry mentre è in corso la migrazione a GKE progressi. Infine, nell'ambito del ritiro dell'ambiente di origine, puoi eseguire il refactoring dei processi di creazione delle immagini container in Artifact Registry.

Per eseguire il deployment delle immagini container in GKE, devi configurare una corretta autenticazione. Per ulteriori informazioni, vedi di Artifact Registry in GKE.

Esegui la migrazione delle immagini container

Sebbene possa non essere fondamentale per il successo di una migrazione GKE, potresti dover eseguire la migrazione delle immagini container il registro delle immagini container esistente in Artifact Registry. Ad esempio, potresti aver bisogno è possibile eseguire il rollback dei deployment a punti arbitrari nel tempo, nel caso e inaspettati problemi di deployment. Per ulteriori informazioni, vedi Eseguire la migrazione di immagini da un registro di terze parti.

Ottimizza il tuo ambiente Google Cloud

L'ottimizzazione è l'ultima fase della migrazione. In questa fase, esegui l'iterazione attività di ottimizzazione finché l'ambiente di destinazione non soddisfa i requisiti di ottimizzazione i tuoi requisiti. I passaggi di ogni iterazione sono i seguenti:

  1. Valuta l'ambiente attuale, i team e il ciclo di ottimizzazione.
  2. Definisci i requisiti e gli obiettivi di ottimizzazione.
  3. Ottimizza il tuo ambiente e i tuoi team.
  4. Ottimizza il loop di ottimizzazione.

Ripeti la sequenza finché non hai raggiunto gli obiettivi di ottimizzazione.

Per saperne di più sull'ottimizzazione del tuo ambiente Google Cloud, consulta Eseguire la migrazione a Google Cloud: ottimizzare l'ambiente e Procedura di ottimizzazione del rendimento.

Passaggi successivi

Collaboratori

Autore: Marco Ferrari | Cloud Solutions Architect