Panoramica degli esempi di migrazione delle applicazioni per Azure

Questa sezione della Cloud Adoption Framework fornisce esempi di diversi scenari di migrazione comuni e illustra come eseguire la migrazione dell'infrastruttura locale a Microsoft Azure.

Introduzione

Azure offre l'accesso a un set completo di servizi cloud. Sviluppatori e professionisti IT possono usare questi servizi per creare, distribuire e gestire applicazioni in un'ampia gamma di strumenti e framework attraverso una rete globale di data center. Con le aziende che si trovano a far fronte alle problematiche associate alla trasformazione digitale, la piattaforma Azure consente di determinare come:

  • Ottimizzare risorse e operazioni.
  • Interagire con clienti e dipendenti.
  • Trasformare i prodotti.

Il cloud offre vantaggi in termini di velocità e flessibilità, costi minimi, prestazioni e affidabilità. Tuttavia, molte organizzazioni potrebbero dover continuare a eseguire data center locali. In risposta agli ostacoli all'adozione del cloud, Azure offre una strategia di cloud ibrido che collega i data center locali e il cloud pubblico di Azure, ad esempio usando risorse del cloud di Azure come Backup di Azure per proteggere le risorse locali oppure usando le funzionalità di analisi di Azure per ottenere informazioni dettagliate sui carichi di lavoro locali.

Nell'ambito della strategia di cloud ibrido, Azure offre sempre più soluzioni per eseguire la migrazione al cloud di applicazioni e carichi di lavoro locali. Con semplici procedure, è possibile valutare in modo completo le risorse locali per determinare come verranno eseguite nella piattaforma Azure. Con una valutazione approfondita, è possibile eseguire con sicurezza la migrazione delle risorse ad Azure. Quando saranno operative in Azure, le risorse potranno essere ottimizzate per mantenere e migliorare l'accesso, la flessibilità, la sicurezza e l'affidabilità.

Modelli di migrazione

Le strategie per la migrazione al cloud rientrano in quattro grandi categorie: rehosting, refactoring, riprogettazione e ricostruzione. La strategia adottata dipende dai fattori chiave dello sviluppo aziendale e dagli obiettivi di migrazione prefissati. È possibile adottare più modelli. Ad esempio, è possibile scegliere di eseguire il rehosting di applicazioni non critiche e allo stesso tempo di riprogettare quelle più complesse e critiche. Di seguito vengono esaminati questi modelli.

Modello Definizione Utilizzo
Rehosting Spesso definita migrazione in modalità lift-and-shift, questa opzione non richiede modifiche del codice. È possibile usarla per eseguire rapidamente la migrazione delle applicazioni esistenti ad Azure. Le applicazioni vengono trasferite così come sono, con i vantaggi del cloud e senza i rischi o i costi associati alle modifiche del codice. - Quando è necessario spostare rapidamente le applicazioni nel cloud
- Quando si vuole spostare un'applicazione senza modificarla
- Quando le applicazioni sono progettate per sfruttare i vantaggi della scalabilità dell'infrastruttura distribuita come servizio (IaaS) di Azure dopo la migrazione.
- Quando le applicazioni sono importanti per l'azienda, ma non è necessario modificare immediatamente le funzionalità dell'applicazione.
Refactoring Spesso definito "repackaging", il refactoring richiede modifiche minime alle applicazioni in modo che possano connettersi alla piattaforma distribuita come servizio (PaaS) di Azure e usare le offerte cloud.

Ad esempio, è possibile eseguire la migrazione di applicazioni esistenti a Servizio app di Azure o servizio Azure Kubernetes (servizio Azure Kubernetes). Oppure è possibile eseguire il refactoring di database relazionali e non relazionali in opzioni come Istanza gestita di SQL di Azure, Database di Azure per MySQL, Database di Azure per PostgreSQL e Azure Cosmos DB.
- Se l'applicazione può essere facilmente riconfezionata per funzionare in Azure
- Se si vogliono applicare procedure DevOps innovative fornite da Azure o se si sta pensando a DevOps usando una strategia di contenitore per i carichi di lavoro
- Per il refactoring, è necessario considerare la portabilità della codebase esistente e le competenze di sviluppo disponibili.
Riprogettazione La riprogettazione per la migrazione è incentrata sulla modifica e sull'estensione della codebase e delle funzionalità delle applicazioni al fine di ottimizzarne l'architettura per la scalabilità nel cloud.

Ad esempio, è possibile suddividere un'applicazione monolitica in un gruppo di microservizi che interagiscono e ridimensionano facilmente. È possibile riprogettare database relazionali e non relazionali e trasformarli in soluzioni di database completamente gestite, ad esempio Istanza gestita di SQL di Azure, Database di Azure per MySQL, Database di Azure per PostgreSQL e Azure Cosmos DB.
- Quando le applicazioni necessitano di revisioni importanti per incorporare nuove funzionalità o per lavorare in modo efficace su una piattaforma cloud
- Quando si vogliono usare gli investimenti di applicazioni esistenti, soddisfare i requisiti di scalabilità, applicare procedure DevOps innovative e ridurre al minimo l'uso delle macchine virtuali
Ricostruzione Questa strategia consente di compiere un passo in avanti ricompilando un'applicazione da zero con le tecnologie cloud di Azure.

Ad esempio, è possibile creare applicazioni greenfield con tecnologie native del cloud come Funzioni di Azure, intelligenza artificiale, Istanza gestita di SQL e Azure Cosmos DB.
- Quando si vuole uno sviluppo rapido e le applicazioni esistenti hanno funzionalità e durata limitate
- Quando si è pronti per accelerare l'innovazione aziendale (incluse le procedure DevOps fornite da Azure), creare nuove applicazioni usando tecnologie native del cloud e sfruttare i vantaggi dei miglioramenti in intelligenza artificiale, blockchain e IoT.

Articoli di esempio sulla migrazione

Questa sezione fornisce esempi di diversi scenari comuni di migrazione. Ogni esempio include informazioni generali e scenari di distribuzione dettagliati. Questi scenari illustrano come configurare un'infrastruttura di migrazione e valutare l'idoneità delle risorse locali per la migrazione. Verranno aggiunti altri articoli in futuro in questa sezione.

Diagramma che mostra le categorie di progetti di migrazione e modernizzazione.

Questa serie è incentrata su ogni scenario di migrazione, basato su obiettivi aziendali leggermente diversi per determinare la strategia di migrazione. Per ogni scenario di distribuzione vengono fornite informazioni su:

  • Obiettivi e driver di business.
  • Architettura proposta.
  • Procedura per eseguire la migrazione.
  • Raccomandazioni per la pulizia e passaggi successivi da eseguire al termine della migrazione.

Valutazione

Articolo Dettagli
Valutare le risorse locali per la migrazione ad Azure Questo articolo nella metodologia di pianificazione illustra come eseguire una valutazione di un'applicazione locale in esecuzione in VMware. Nell'articolo un'organizzazione di esempio valuta le macchine virtuali dell'applicazione usando Azure Migrate e il database di SQL Server dell'applicazione usando Data Migration Assistant.

Infrastruttura

Articolo Dettagli
Distribuire l'infrastruttura di Azure Questo articolo illustra il modo in cui un'organizzazione può preparare la propria infrastruttura locale e l'infrastruttura di Azure per la migrazione. L'esempio di infrastruttura definito in questo articolo viene usato come riferimento negli altri esempi forniti in questa sezione.

Carichi di lavoro di Windows Server

Articolo Dettagli
Eseguire il rehosting di un'applicazione in VM di Azure Questo articolo fornisce un esempio di migrazione di macchine virtuali di applicazioni locali a macchine virtuali di Azure con Azure Migrate.

Carichi di lavoro di SQL Server

Articolo Dettagli
Eseguire la migrazione di database di SQL Server ad Azure Questo articolo illustra in che modo la società fittizia Contoso valuta, pianifica ed esegue la migrazione dei vari database di SQL Server locali ad Azure.
Eseguire il rehosting di un'applicazione in una macchina virtuale di Azure e in Istanza gestita di SQL Questo articolo fornisce un esempio di migrazione in modalità lift-and-shift di un'applicazione locale ad Azure. Questo processo comporta la migrazione della macchina virtuale front-end dell'applicazione usando Azure Migrate e del database dell'applicazione a Istanza gestita di SQL tramite Servizio Migrazione del database di Azure.
Eseguire il rehosting di un'applicazione in macchine virtuali di Azure usando i gruppi di disponibilità AlwaysOn di SQL Server Questo esempio illustra come eseguire la migrazione di un'applicazione e dei dati usando macchine virtuali di SQL Server ospitate in Azure. Viene usato Azure Migrate per la migrazione delle macchine virtuali dell'applicazione e Servizio Migrazione del database di Azure per la migrazione del database dell'applicazione a un cluster di SQL Server protetto da un gruppo di disponibilità AlwaysOn.

Database Linux e open source

Articolo Dettagli
Eseguire la migrazione di database open source ad Azure Questo articolo illustra in che modo la società fittizia Contoso valuta, pianifica ed esegue la migrazione dei vari database open source locali ad Azure.
Eseguire la migrazione di MySQL ad Azure Questo articolo illustra in che modo la società fittizia Contoso pianifica ed esegue la migrazione di una piattaforma di database open source MySQL ad Azure.
Eseguire la migrazione di PostgreSQL ad Azure Questo articolo illustra in che modo la società fittizia Contoso pianifica ed esegue la migrazione di una piattaforma di database open source PostgreSQL locale ad Azure.
Eseguire la migrazione di MariaDB ad Azure Questo articolo illustra in che modo la società fittizia Contoso pianifica ed esegue la migrazione di una piattaforma di database open source MariaDB ad Azure.
Eseguire il rehosting di un'applicazione Linux in VM di Azure e Database di Azure per MySQL Questo articolo fornisce un esempio di migrazione di un'applicazione ospitata in Linux a macchine virtuali di Azure con Azure Migrate. Viene eseguita la migrazione del database dell'applicazione a Database di Azure per MySQL tramite Servizio Migrazione del database di Azure.
Eseguire il rehosting di un'applicazione Linux in VM di Azure Questo esempio illustra come completare una migrazione in modalità lift-and-shift di un'applicazione basata su Linux a macchine virtuali di Azure con Azure Migrate.

Carichi di lavoro di sviluppo/test

Articolo Dettagli
Eseguire la migrazione di ambienti di sviluppo/test all'infrastruttura distribuita come servizio di Azure Questo articolo illustra in che modo Contoso esegue il rehosting dell'ambiente di sviluppo/test per due applicazioni in esecuzione in VM VMware eseguendo la migrazione a macchine virtuali di Azure.
Eseguire la migrazione ad Azure DevTest Labs Questo articolo illustra in che modo Contoso sposta i carichi di lavoro di sviluppo/test in Azure usando DevTest Labs.

App Web ASP.NET e PHP

Articolo Dettagli
Eseguire il refactoring di un'applicazione Windows usando servizio app e database SQL Questo esempio illustra come eseguire la migrazione di un'applicazione basata su Windows locale a un'app Web di Azure. Illustra anche come eseguire la migrazione del database dell'applicazione a un'istanza del server di database di Azure SQL usando Servizio Migrazione del database.
Eseguire il refactoring di un'applicazione Windows usando servizio app e Istanza gestita di SQL Questo esempio illustra come eseguire la migrazione di un'applicazione basata su Windows locale a un'app Web di Azure. Illustra anche come eseguire la migrazione del database dell'applicazione a Istanza gestita di SQL usando Servizio Migrazione del database.
Effettuare il refactoring di un'applicazione Linux in più aree usando servizio app, Gestione traffico di Azure e Database di Azure per MySQL Questo esempio illustra come eseguire la migrazione di un'applicazione locale basata su Linux a un'app Web di Azure in più aree di Azure con Gestione traffico di Azure, con l'integrazione con GitHub per la distribuzione continua. Viene eseguita la migrazione del database dell'applicazione a un'istanza di Database di Azure per MySQL.
Ricompilare un'applicazione in Azure Questo articolo fornisce un esempio di ricompilazione di un'applicazione locale usando una gamma di funzionalità e servizi gestiti di Azure. Queste funzionalità e servizi includono servizio app, servizio Azure Kubernetes, Funzioni di Azure, Servizi cognitivi di Azure e Azure Cosmos DB.
Effettuare il refactoring di Team Foundation Server in Azure DevOps Services Questo articolo illustra una migrazione di esempio di una distribuzione di Team Foundation Server locale ad Azure DevOps Services in Azure.

SAP

Articolo Dettagli
Guida alla migrazione SAP Indicazioni pratiche per spostare i carichi di lavoro SAP locali nel cloud.
Eseguire la migrazione di applicazioni SAP ad Azure White paper e roadmap per il percorso di SAP verso il cloud.
Metodologie di migrazione per SAP in Azure Panoramica delle varie opzioni di migrazione per spostare le applicazioni SAP in Azure.

Carichi di lavoro specializzati

Articolo Dettagli
Spostare l'infrastruttura VMware locale in Azure Questo articolo fornisce un esempio di spostamento di macchine virtuali VMware locali in Azure usando la soluzione Azure VMware.
Azure NetApp Files Archiviazione di file aziendali, basata su NetApp. Eseguire carichi di lavoro di file Linux e Windows in Azure.
Oracle in Azure Eseguire database Oracle e applicazioni aziendali in Azure e in Oracle Cloud Infrastructure.
Cray in Azure High Performance Computing con Cray in Azure. Un supercomputer dedicato nella rete virtuale.

VDI

Articolo Dettagli
Spostare l'ambiente Servizi Desktop remoto locale in Desktop virtuale Azure Questo articolo illustra come eseguire la migrazione di Servizi Desktop remoto a Desktop virtuale Azure.

Ridimensionamento della migrazione

Articolo Dettagli
Passare a una migrazione completa ad Azure Questo articolo illustra in che modo un'organizzazione di esempio prepara il passaggio a una migrazione completa ad Azure.

Applicazioni demo

Gli articoli di esempio forniti in questa sezione usano due applicazioni demo: SmartHotel360 e osTicket.

SmartHotel360: questa applicazione di test è stata sviluppata da Microsoft per l'uso in Azure. Viene fornita con una licenza open source ed è possibile scaricarla da GitHub. Si tratta di un'applicazione ASP.NET connessa a un database di SQL Server. Negli scenari illustrati in questi articoli la versione corrente di questa applicazione viene distribuita in due macchine virtuali VMware che eseguono Windows Server 2008 R2 e SQL Server 2008 R2. Le macchine virtuali dell'applicazione sono ospitate in locale e gestite da un server vCenter.

osTicket: questa applicazione open source di creazione di ticket per service desk viene eseguita in Linux. È possibile scaricarlo da GitHub. Negli scenari illustrati in questi articoli la versione corrente di questa applicazione viene distribuita in locale in due macchine virtuali VMware che eseguono Ubuntu 16.04 LTS, con Apache 2, PHP 7.0 e MySQL 5.7.