Migrazione di database Oracle ad Azure

Load Balancer
ExpressRoute
Gateway VPN

Idea della soluzione

Se si desidera vedere questo articolo con altre informazioni, ad esempio potenziali casi d'uso, servizi alternativi, considerazioni sull'implementazione o linee guida sui prezzi, è possibile inviare commenti e suggerimenti GitHub!

Oracle DB le migrazioni possono essere completate in diversi modi. Questa soluzione illustra una di queste opzioni, in cui oracle Active Data Guard viene usato per eseguire la migrazione del database. Si presuppone che Oracle Data Guard (o Active Data Guard) sia usato per scopi di ripristino di emergenza/a lungo/ a lungo. A seconda dell'applicazione, è possibile eseguire prima la migrazione dell'applicazione o il database. In questo caso, viene eseguita la migrazione dell'applicazione ad Azure usando Azure Load Balancer. In questo modo è possibile suddividere il traffico tra l'ambiente locale e Azure, consentendo di eseguire gradualmente la migrazione del livello applicazione. La migrazione del database viene eseguita in più passaggi. Come primo passaggio, Oracle Data Guard viene usato per configurare un database secondario/standby in Azure. In questo modo è possibile eseguire la migrazione dei dati in Azure. Quando il database secondario in Azure è sincronizzato con il database primario, è possibile impostare il database in Azure come database primario mantenendo il database secondario in locale. Come passaggio successivo, è possibile configurare un database secondario in una zona di disponibilità (o area) diversa per scopi di disponibilità elevata/ripristino di emergenza. A questo punto, è possibile rimuovere le autorizzazioni dell'ambiente locale. Tutto il traffico dati tra l'ambiente locale e Azure Azure ExpressRoute o la connettività VPN da sito a sito.

Architecture

Diagramma dell'architettura

Flusso di dati

  1. Connessione'ambiente Azure con la rete locale tramite VPN da sito a sito o ExpressRoute.
  2. Usare DataGuard per contrassegnare OracleDB1 in Azure come stand-by attivo.
  3. Impostare OracleDB1 in Azure come primario e configurare OracleDB2 in Azure come standby per completare la migrazione.

Nota

  • Questo metodo funziona solo quando si esegue la migrazione da e verso la stessa versione del sistema operativo e della stessa versione del database.
  • Presupposto: si usa DataGuard in locale.

Componenti

Alternativi

Se il database è di oltre 2 TB, è possibile usare Oracle Data Guard con Oracle Gestione ripristino (RMAN) oppure usare Data Pump per replicare le modifiche dopo un trasferimento di dati in blocco iniziale, che consente una migrazione con tempi di inattività minimi.

Considerazioni

Migrazione

È possibile eseguire la migrazione dell'intero database Oracle da locale a una macchina virtuale di Azure con tempi di inattività minimi usando Oracle Gestione ripristino (RMAN) e Oracle Data Guard. Usare RMAN per ripristinare il database nella macchina virtuale di Azure di standby di destinazione, usando il metodo di backup/ripristino o il metodo di database duplicato. È quindi possibile configurare il database di destinazione come database di standby fisico con Oracle Data Guard, consentendo tutte le modifiche dei dati di transazione/ripristino dal database primario locale al database di standby. Quando il database Oracle locale primario è sincronizzato con il database di standby di destinazione nell'istanza di macchina virtuale di Azure, è possibile passare al database di destinazione, che lo convertirà in un database di lettura/scrittura. È quindi possibile puntare le connessioni dell'applicazione al nuovo database primario. Questa opzione consente un tempo di inattività minimo durante la migrazione del database ad Azure.

L'utilità Oracle Data Pump viene utilizzata per esportare e importare dati e metadati da o verso database Oracle. È possibile eseguire l'esportazione/importazione di Data Pump in un intero database, in schemi selettivi, spazi di tabella o in oggetti di database. Data Pump è lo strumento consigliato per la migrazione dei dati in Azure, per database di grandi dimensioni di dimensioni da 10 GB a 20 TB. Consente un elevato grado di parallelismo, opzioni di estrazione dei dati flessibili e operazioni scalabili, che consentono lo spostamento ad alta velocità di dati e metadati da un database di origine al database di destinazione. Oracle Data Pump supporta anche la crittografia e la compressione durante l'esportazione dei dati in file di dump dei dati. È possibile usare Oracle Data Pump con Oracle Data Guard o Golden Gate per gestire il trasferimento iniziale dei dati per database di grandi dimensioni. Si noti che Data Pump è disponibile solo in Oracle Database 10g versione 1 (10.1) e successive.

Considerazioni relative alla progettazione

Dimensioni di VM

Prendere in considerazione l'uso di una macchina virtuale ottimizzata per la memoria con hyperthreading con cpu virtuali core vincolate per la macchina virtuale Oracle Database, per risparmiare sui costi di licenza e ottimizzare le prestazioni. Oracle garantisce la mobilità delle licenze da locale ad Azure. Vedere le domande frequenti relative al rapporto Oracle-Azure.

Archiviazione

Usare più dischi Premium o Ultra (dischi gestiti) per prestazioni e disponibilità nel database Oracle. Quando si usano dischi gestiti, il nome del disco/dispositivo può cambiare al riavvio. È consigliabile usare l'UUID del dispositivo anziché il nome, per garantire che i montamenti permangono tra i riavvii. È consigliabile usare Oracle Automatic Archiviazione Management (ASM) per semplificare la gestione dell'archiviazione per il database.

Test e ottimizzazione

È consigliabile eseguire i test seguenti per convalidare l'applicazione rispetto al nuovo database Oracle:

  • Eseguire test delle prestazioni per assicurarsi che soddisfino le aspettative aziendali.
  • Testare il failover, il ripristino e il ripristino del database per assicurarsi di soddisfare i requisiti RPO e RTO.
  • Elencare tutti i processi e i report critici ed eseguirli nella nuova istanza di Oracle per valutarne le prestazioni rispetto ai contratti di servizio.
  • Infine, quando si esegue la migrazione o si creano applicazioni per il cloud, è importante modificare il codice dell'applicazione per aggiungere modelli nativi del cloud, ad esempio il modello di ripetizione dei tentativi e il modello a interruttore. Modelli aggiuntivi definiti nella guida Cloud Design Patterns (Modelli di progettazione cloud) possono aiutare l'applicazione a essere più resiliente.

Licenze Oracle

Se si usa la tecnologia abilitata per l'hyperthreading nelle macchine virtuali di Azure, contare due vC CPU come equivalenti a una licenza del processore Oracle. Per informazioni dettagliate, vedere Licensing Oracle Software in the Cloud Computing Environment (Licenze di Oracle Software nell'ambiente cloud computing).

Strategia di backup

Una strategia di backup consiste nell'usare Oracle Gestione ripristino (RMAN) e Backup di Azure per i backup coerenti con l'applicazione. È anche possibile usare il metodo di backup di Azure.

Facoltativamente, usare Azure Blob Fuse per montare un account Archiviazione BLOB di Azure con ridondanza elevata e scrivere i backup RMAN in esso per una maggiore resilienza.

Continuità aziendale e ripristino di emergenza

Per la continuità aziendale e il ripristino di emergenza, è consigliabile distribuire il software seguente:

  • Oracle Data Guard Fast-Start Failover (FSFO) per la disponibilità del database
  • Oracle Data Guard Far Sync per una protezione senza perdita di dati.
  • Oracle GoldenGate per la modalità multi-primaria o attiva-attiva nel set di disponibilità o nella zona di disponibilità di Azure dipende dai requisiti del contratto di servizio.

Usare zone di disponibilità per ottenere la disponibilità elevata nell'area. Per altre informazioni, vedere Architetture di riferimento per database Oracle in Azure.

È possibile ottenere una disponibilità del tempo di attività del 99,99% per il livello di database usando una combinazione di zone di disponibilità di Azure e Oracle Active DataGuard con FSFO.

È consigliabile usare i gruppi di posizionamento di prossimità per ridurre la latenza tra l'applicazione e il livello di database.

Monitoraggio

Configurare Oracle Enterprise Manager per la gestione, il monitoraggio e la registrazione.

Passaggi successivi

Per informazioni di supporto, vedere gli articoli seguenti:

Altre informazioni sui vari componenti dell'architettura: