Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo fa parte di una serie su come eseguire la migrazione di un carico di lavoro da Amazon Web Services (AWS) ad Azure.
La fase di esecuzione è costituita da queste fasi:
- Prima della transizione
- Durante il passaggio di sistema
- Dopo la transizione
L'obiettivo di questa fase è eseguire la migrazione del carico di lavoro AWS ad Azure entro i limiti di tempo di inattività e perdita di dati concordati. Segui attentamente il runbook e comunica con le parti interessate durante tutto il processo.
Importante
Non eseguire il test di corsa o ignorare i passaggi di convalida.
La fase di esecuzione ha il rischio più elevato di interruzioni del servizio. I problemi di sincronizzazione dei dati, le configurazioni di rete o il comportamento imprevisto dell'applicazione possono causare interruzioni o perdita di dati.
Prima del passaggio
Aprire la finestra di manutenzione negoziata.
Eseguire la migrazione dei dati. Allinea l'ordine delle operazioni al modello di transizione. Eseguire script completi e testare tutti i passaggi di migrazione dei dati in un ambiente non di produzione prima di iniziare a garantire che questi passaggi vengano eseguiti in modo affidabile durante il cutover.
Per scenari di replica attivi o attivi, configurare la sincronizzazione continua dei dati tra AWS e Azure. Questo approccio riduce al minimo i tempi di inattività e garantisce la coerenza dei dati durante il cutover.
Per i modelli di backup e ripristino, eseguire il backup di tutti i dati AWS. Trasferire in modo sicuro il backup in Azure e quindi ripristinarlo nell'ambiente di destinazione. Convalidare l'integrità dei dati prima di eseguire il passaggio successivo.
Configurare i componenti dell'applicazione. Connettere ogni componente alle relative dipendenze. Alcune di queste dipendenze potrebbero rimanere in AWS. Ad esempio, in un approccio di migrazione in più fasi, è possibile mantenere il database in AWS inizialmente ed eseguirne la migrazione in un secondo momento.
Modificare le impostazioni di connettività e rete. Assicurarsi che le risorse di Azure possano raggiungere le dipendenze da AWS e che le risorse AWS possano raggiungere le dipendenze in Azure quando necessario. Modificare le regole del firewall, le regole e i criteri del gruppo di sicurezza di rete (NSG) e il routing in modo che soddisfino i requisiti. Testare e convalidare tutte le modifiche alla connettività nelle fasi precedenti per ridurre la risoluzione dei problemi in questa fase.
Eseguire test semplici. Eseguire test funzionali, delle prestazioni e di guasto. Tenere questi test semplici. Eseguire test di carico o funzionali estesi nelle fasi precedenti.
Eseguire l'iterazione e risolvere i problemi in anticipo. Pianificare accuratamente per ridurre al minimo le correzioni durante questa fase. Se si verificano problemi, provvedi a risolverli subito. I problemi comuni includono percorsi in script o chiamate API che non corrispondono ai valori previsti, violazioni del limite di servizio di Azure e limiti di quota che potrebbe essere necessario aumentare. Se si usa Terraform, alcune funzionalità delle risorse di Azure potrebbero richiedere implementazioni diverse.
Ridurre il tempo di vita (TTL). Riduci il tempo di vita (TTL) prima del cutover e tieni conto del ritardo di propagazione nella pianificazione del rollback.
Aggiornare i nomi di dominio completi (FQDN) e il routing DNS (Domain Name System). Applicare il piano di transizione FQDN definito durante la fase di pianificazione. Aggiornare i record DNS per puntare i nomi di dominio completi esistenti agli endpoint di Azure o modificare le configurazioni dell'applicazione per l'uso di nuovi nomi di dominio completi di Azure. Per i servizi rivolti al pubblico, coordinare attentamente il passaggio DNS per ridurre i tempi di inattività al minimo.
Durante il passaggio
Importante
Seguire il runbook e comunicare con gli stakeholder sullo stato di avanzamento del cutover. Includere eventuali modifiche previste alla sequenza temporale o ad altri problemi di cui devono essere a conoscenza.
La modalità di completamento di questo passaggio dipende dalla strategia scelta. Nell'approccio blu-verde consigliato è possibile cambiare tutto il traffico contemporaneamente durante una finestra di taglio. È necessario sincronizzare tutti i dati e preparare i componenti per accettare il traffico di produzione. Passare quindi tutte le connessioni ad Azure e visualizzare l'ambiente Azure come ambiente primario. È consigliabile una finestra di manutenzione, durante la quale si sospende brevemente il traffico o l'applicazione per evitare incoerenze. Automatizzare i controlli dello stato di salute e monitorare in tempo reale durante il cambio di sistema.
Collaborare con i team operativi per assicurarsi di risolvere immediatamente i problemi emergenti. Il team di migrazione e i tecnici operativi devono monitorare attivamente un dashboard di stato in tempo reale usando Azure Monitor o dati di telemetria personalizzati. Eventuali anomalie devono attivare avvisi e risposte immediati. Preparatevi a eseguire il rollback se non è possibile risolvere i problemi all'interno dei criteri di rollback definiti nella fase di pianificazione.
Dopo la migrazione
Mantenere la preparazione al rollback. Mantenere disponibile l'ambiente AWS durante la finestra di convalida nel caso in cui sia necessario eseguire il rollback. Quando si è certi dell'ambiente azure, rimuovere le risorse AWS.
Eseguire la verifica dopo il passaggio. Monitorare attentamente le metriche del carico di lavoro in Azure. Se si riducono gravemente o si rileva un bug critico, implementare il piano di rollback ed essere pronti a ripristinare il traffico verso AWS. Eseguire un test di regressione completo nell'ambiente di produzione, se possibile e controllare tutti i componenti. Eseguire i smoke test per le funzioni critiche, controllare i log di sicurezza e assicurarsi che tutti i segnali di monitoraggio e gli avvisi siano verdi. Dopo un giorno o due, monitorare i costi e l'utilizzo per trovare eventuali risorse in fuga che potrebbero comportare costi non necessari.
Aggiornare le pipeline di integrazione continua e recapito continuo (CI/CD) per Azure. Aggiornare le pipeline di distribuzione per interrompere il targeting su AWS e puntare esclusivamente su Azure.
Aggiornare documentazione e procedure. Rivedere tutti i runbook di produzione, i documenti di supporto e le procedure operative in modo che corrispondano al nuovo ambiente Azure.
Delegare il monitoraggio operativo. Verificare che il team delle operazioni si assuma la responsabilità del monitoraggio dell'ambiente di Azure. Ora dovrebbero usare i dashboard e gli avvisi di Monitoraggio di Azure configurati in precedenza per monitorare l'integrità del carico di lavoro. Risolvere eventuali lacune di conoscenza man mano che il team passa al supporto principale per la distribuzione di Azure.
Per altre informazioni, vedere Eseguire la migrazione al cloud.
Checklist
| Attività finali | |
|---|---|
| ☐ | Eseguire la migrazione dei dati |
| ☐ | Configurare i componenti dell'applicazione |
| ☐ | Modificare le impostazioni di connettività e rete |
| ☐ | Eseguire test funzionali |
| ☐ | Eseguire test delle prestazioni |
| ☐ | Eseguire test di errore |
| ☐ | Risolvere tutti i problemi |
| ☐ | Ridurre il TTL |
| ☐ | Aggiornare FQDN e routing DNS |
| ☐ | Mantenere l'idoneità al rollback |
| ☐ | Eseguire la verifica post-cutover |
| ☐ | Aggiornare le pipeline CI/CD per Azure |
| ☐ | Aggiornare documentazione e procedure |
| ☐ | Delegare il monitoraggio operativo |