Condividi tramite


Strategie di backup per Oracle Database in una macchina virtuale Linux di Azure

Si applica a: ✔️ macchine virtuali di Linux

I backup del database consentono di proteggere il database dalla perdita di dati dovuta a un errore del componente di archiviazione e a un errore del data center. Possono anche essere un mezzo di recupero dall'errore umano e un modo per clonare un database a scopo di sviluppo o test.

In Azure tutte le risorse di archiviazione sono altamente ridondanti. La perdita di uno o più dischi non comporta un'interruzione del database. I backup vengono usati più spesso per proteggersi da errori umani, per facilitare le operazioni di clonazione o per conservare i dati a scopo normativo.

I backup consentono anche di proteggersi da interruzioni a livello di area quando non è in uso una tecnologia di ripristino di emergenza come DataGuard. In questo caso, i backup devono essere archiviati in aree di Azure diverse tramite la replica con ridondanza geografica, in modo che siano disponibili all'esterno dell'area del database primario.

Archiviazione di Azure

I servizi di archiviazione di Azure sono la soluzione cloud di Microsoft per scenari moderni di archiviazione dei dati. Archiviazione di Azure offre servizi che è possibile usare per montare l'archiviazione esterna in una macchina virtuale Linux di Azure, adatta come supporto di backup per le istanze di Oracle Database. È necessario uno strumento di backup come Oracle Recovery Manager (RMAN) per avviare un'operazione di backup o ripristino e per copiare il backup da o verso Archiviazione di Azure.

I servizi di Archiviazione di Azure offrono i vantaggi seguenti:

  • Durabilità e disponibilità elevata. La ridondanza consente di proteggere i dati durante gli errori hardware temporanei. Per impostazione predefinita, tutte le risorse di archiviazione sono con mirroring triplo. È anche possibile scegliere di replicare i dati tra data center o aree geografiche per una maggiore protezione da catastrofi locali o calamità naturali. Con questo tipo di replica, i dati mantengono disponibilità elevata in caso di interruzioni impreviste.

  • Sicuro: Archiviazione di Azure crittografa tutti i dati scritti in un account di archiviazione. Archiviazione di Azure offre un controllo dettagliato su chi può accedere ai dati.

  • Scalabile: Archiviazione di Azure è scalabile in modo massiccio per soddisfare le esigenze di archiviazione e prestazioni dei dati delle applicazioni attuali.

  • Gestito: Azure gestisce automaticamente la manutenzione, gli aggiornamenti e i problemi critici dell'hardware.

  • Accessibile: i dati in Archiviazione di Azure sono accessibili da qualsiasi parte del mondo tramite HTTP o HTTPS. Microsoft offre librerie client per Archiviazione di Azure in diversi linguaggi, tra cui .NET, Java, Node.js, Python, PHP, Ruby e Go. Microsoft offre anche un'API REST matura.

    Archiviazione di Azure supporta l'esecuzione di script in Azure PowerShell o nell'interfaccia della riga di comando di Azure. Il portale di Azure e Azure Storage Explorer offrono soluzioni visive per l'uso dei dati.

La piattaforma di archiviazione di Azure include i servizi dati seguenti che sono adatti per l'uso come supporto di backup per Oracle Database:

  • Archivio BLOB di Azure: archivio oggetti per dati di testo e binari. Include anche il supporto per l'analisi dei Big Data tramite Azure Data Lake Storage Gen2.

  • Azure NetApp Files: soluzione di archiviazione con rete completa, tra cui funzionalità avanzate di gestione dei dati per l'acquisizione di snapshot, la clonazione e la replica dei volumi di database.

  • File di Azure: condivisioni file gestite per distribuzioni cloud o locali.

  • Archiviazione su disco di Azure: volumi di archiviazione a livello di blocco per le macchine virtuali di Azure.

Montaggio di archiviazione tra aree

La possibilità di accedere all'archiviazione di backup tra aree è un aspetto importante della continuità aziendale e del ripristino di emergenza (BCDR). È utile anche per clonare i database dai backup in aree geografiche diverse. Archiviazione cloud di Azure offre cinque livelli di ridondanza:

Archivio BLOB e file

Quando si usa File di Azure con il protocollo SMB (Server Message Block) o il protocollo NFS (Network File System) 4.1 da montare come archiviazione di backup, File di Azure non supporta l'archiviazione con ridondanza geografica e accesso in lettura né l'archiviazione con ridondanza geografica della zona e accesso in lettura.

File di Azure l'archiviazione di backup può aumentare fino a 100 (TiB), con il supporto per le opzioni di ridondanza con

Archivio BLOB di Azure montata tramite il protocollo NFS 3.0 supporta attualmente solo l'archiviazione con ridondanza locale e archiviazione con ridondanza della zona. Archivio BLOB di Azure configurata con qualsiasi opzione di ridondanza può essere montata tramite Blobfuse.

Insieme di credenziali di Servizi di ripristino

Un insieme di credenziali di Servizi di ripristino è un'entità di gestione che archivia i punti di ripristino creati nel tempo. Fornisce un'interfaccia per eseguire operazioni correlate al backup. Queste operazioni includono l'esecuzione di backup su richiesta, l'esecuzione di ripristini e la creazione di criteri di backup.

Backup di Azure gestisce automaticamente l'archiviazione per l'insieme di credenziali. È necessario specificare la modalità di replica dell'archiviazione al momento della creazione. Non è possibile modificare la replica dopo che gli elementi sono protetti nell'insieme di credenziali. Per ridondanza a livello di area, scegliere l'impostazione con ridondanza geografica.

Se si intende eseguire il ripristino in un'area secondaria associata di Azure, abilitare la funzionalità di ripristino tra aree. Quando si abilita il ripristino tra aree, l'archiviazione di backup viene spostata dall'archiviazione con ridondanza geografica all'archiviazione con ridondanza geografica e accesso in lettura.

Archiviazione BLOB di Azure

Archivio BLOB di Azure è un servizio basato sul cloud per l'archiviazione di grandi quantità di dati non strutturati ed è adatto per i backup di Oracle Database. È possibile montare l'Archivio BLOB di Azure in macchine virtuali Linux di Azure usando Blobfuse (Linux FUSE) o il protocollo NFS v3.0.

Blobfuse

Blobfuse è un progetto open source che fornisce un file system virtuale supportato da Archivio BLOB di Azure. Usa la libreria open source libfuse per comunicare con il modulo kernel FUSE linux. Implementa le operazioni del file system usando le API REST di Archivio BLOB di Azure.

Blobfuse è attualmente disponibile per le distribuzioni Ubuntu e RedHat. È disponibile anche per Kubernetes tramite il driver CSI.

Blobfuse è onnipresente nelle aree di Azure e funziona con tutti i tipi di account di archiviazione, tra cui utilizzo generico v1/v2 e Azure Data Lake Storage Gen2. Tuttavia, non funziona così come protocolli alternativi. Per l'idoneità come supporto di backup del database, è consigliabile usare il protocollo SMB o NFS per montare Archivio BLOB di Azure.

NFS v3.0

È disponibile il supporto di Azure per il protocollo NFS v3.0. Il supporto NFS consente ai client Windows e Linux di montare un contenitore di Archivio BLOB di Azure in una macchina virtuale di Azure.

Per garantire la sicurezza di rete, l'account di archiviazione usato per il montaggio NFS deve essere contenuto all'interno di una rete virtuale. Gli elenchi di controllo di accesso e sicurezza di Microsoft Entra non sono ancora supportati negli account con supporto del protocollo NFS 3.0 abilitato.

File di Azure

File di Azure è un file system distribuito completamente gestito basato sul cloud. È possibile montarlo in client Windows, Linux o macOS locali o basati sul cloud.

File di Azure offre condivisioni file multipiattaforma completamente gestite nel cloud accessibili tramite i protocolli SMB e NFS. File di Azure attualmente non supporta l'accesso a più protocolli, quindi una condivisione può essere solo una condivisione NFS o una condivisione SMB. È consigliabile determinare il protocollo più adatto alle proprie esigenze prima di creare condivisioni file di Azure.

È anche possibile proteggere le condivisioni file di Azure usando Backup di Azure per un insieme di credenziali di Servizi di ripristino. Questo approccio offre un altro livello di protezione per i backup di Oracle RMAN.

File di Azure con NFS v4.1

È possibile montare condivisioni file di Azure nelle distribuzioni Linux usando il protocollo NFS v4.1. Esistono limitazioni per le funzionalità supportate. Per altre informazioni, vedere Supporto per le funzionalità di Archiviazione di Azure.

Le condivisioni file NFS di Azure sono supportate in tutte le stesse aree che supportano l'archiviazione file Premium.

Per l'elenco più aggiornato, vedere la voce Archiviazione file Premium nella pagina per i prodotti Azure disponibili in base all'area.

File di Azure con SMB 3.0

È possibile montare condivisioni file di Azure nelle distribuzioni Linux usando il client kernel SMB. Il protocollo CIFS (Common Internet File System), disponibile nelle distribuzioni Linux, è un dialetto di SMB. Quando si monta una condivisione file di Azure in macchine virtuali Linux usando SMB, viene montata come file system di tipo CIFS e il pacchetto CIFS deve essere installato.

La possibilità di montare condivisioni file di Azure tramite SMB è disponibile a livello generale in tutte le aree di Azure. Mostra le stesse caratteristiche di prestazioni dei protocolli NFS v3.0 e v4.1, pertanto è attualmente consigliabile usare il metodo per fornire supporti di archiviazione di backup alle macchine virtuali Linux di Azure.

Sono disponibili due versioni supportate di SMB: SMB 2.1 e SMB 3.0. È consigliabile usare SMB 3.0, perché supporta la crittografia in transito. Tuttavia, le versioni del kernel Linux hanno un supporto diverso per SMB 2.1 e 3.0. Per assicurarsi che l'applicazione supporti SMB 3.0, vedere Montare una condivisione file di Azure SMB in Linux.

Poiché File di Azure è un servizio di condivisione file multiutente, è consigliabile ottimizzare determinate caratteristiche per renderlo più adatto come supporto di archiviazione di backup. È consigliabile disattivare la memorizzazione nella cache e impostare gli ID utente e gruppo per i file creati.

Azure NetApp Files

Il servizio Azure NetApp Files è una soluzione di archiviazione completa per Oracle Database in macchine virtuali di Azure. Basato sull'archiviazione file a consumo, supporta qualsiasi tipo di carico di lavoro ed è a disponibilità elevata per impostazione predefinita. Insieme al driver Oracle Direct NFS, Azure NetApp Files offre un livello di archiviazione altamente ottimizzato per Oracle Database.

Azure NetApp Files offre snapshot efficienti basati sull'archiviazione nel sistema di archiviazione sottostante che usa un meccanismo di reindirizzamento in scrittura. Anche se gli snapshot sono veloci da acquisire e ripristinare, servono solo come prima linea di difesa. Possono tenere conto della maggior parte delle operazioni di ripristino necessarie di qualsiasi organizzazione, che spesso fanno parte del ripristino dall'errore umano.

Tuttavia, gli snapshot non sono un backup completo. Per soddisfare tutti i requisiti di backup e ripristino, è necessario creare repliche snapshot esterne o altri insiemi di credenziali di backup in un'area geografica remota per proteggersi dalle interruzioni a livello di area. Altre informazioni sul funzionamento degli snapshot di Azure NetApp Files.

Per garantire la creazione di snapshot coerenti con il database, il processo di backup deve essere orchestrato tra il database e l'archiviazione. Lo strumento da riga di comando AzAcSnap (Snapshot coerente con l'applicazione di Azure) abilita la protezione dei dati per i database di terze parti. Gestisce tutte le orchestrazioni necessarie per inserire tali database in uno stato coerente con l'applicazione prima di acquisire uno snapshot di archiviazione. Successivamente, restituisce i database a uno stato operativo. Le istanze di Database Oracle sono supportate con AzAcSnap a partire dalla versione 5.1.

Per altre informazioni sull'uso di Azure NetApp Files per Oracle Database in Azure, vedere Architetture di soluzioni con Azure NetApp Files.

Servizio Backup di Azure

Backup di Azure è una soluzione PaaS (Platform as a Service) completamente gestita per il backup dei dati e il ripristino dal cloud di Microsoft Azure. Backup di Azure può eseguire il backup e il ripristino di client locali, macchine virtuali di Azure e condivisioni file di Azure. Può anche eseguire il backup di database SQL Server, Oracle, MySQL, PostgreSQL e SAP HANA nelle macchine virtuali di Azure.

Backup di Azure fornisce backup indipendenti e isolati per salvaguardare dalla distruzione accidentale dei dati originali. I backup vengono archiviati in un insieme di credenziali di Servizi di ripristino con la gestione predefinita dei punti di ripristino.

Backup di Azure usa il cloud di Azure per offrire disponibilità elevata senza costi di manutenzione o monitoraggio. Non limita la quantità di dati in ingresso o in uscita trasferiti e non vengono addebitati i dati trasferiti. I dati sono protetti in transito e inattivi.

Backup di Azure offre più tipi di replica per mantenere i dati di backup a disponibilità elevata:

  • Archiviazione con ridondanza locale replica i dati tre volte (ovvero crea tre copie dei dati) in un'unità di scala di archiviazione in un data center.
  • Archiviazione con ridondanza geografica è l'opzione di replica predefinita e consigliata. L'archiviazione con ridondanza geografica replica i dati in un'area secondaria a centinaia di chilometri di distanza dalla posizione primaria dei dati di origine.

Un insieme di credenziali creato con ridondanza geografica include l'opzione per configurare la funzionalità ripristino tra aree. È possibile usare questa funzionalità per ripristinare i dati in un'area associata di Azure secondaria.

Il servizio Backup di Azure offre un framework per ottenere la coerenza delle applicazioni durante i backup di macchine virtuali Windows e Linux per varie applicazioni come Oracle, MySQL, Mongo DB, SAP HANA e PostgreSQL: snapshot coerenti con l'applicazione. Questo framework comporta la chiamata di pre-script (per disattivare le applicazioni) prima di creare uno snapshot dei dischi. Chiama post-script (comandi per sbloccare le applicazioni) dopo il completamento dello snapshot, per restituire le applicazioni alla modalità normale.

Anche se è possibile trovare pre-script di esempio e post-script in GitHub, si è responsabili della creazione e della gestione di questi script. Nel caso di Oracle, il database deve essere in modalità di log di archiviazione per consentire i backup online. È necessario creare e gestire i comandi di backup appropriati che iniziano e terminano i comandi di backup eseguiti negli script di pre-script e post-script.

Backup di Azure offre un framework di pre-script e post-script avanzato in cui fornisce pre-script e post-script in pacchetto per le applicazioni selezionate. È sufficiente assegnare un nome all'applicazione e quindi Backup di Azure richiama automaticamente gli script pre-script e post-script pertinenti. Microsoft gestisce gli script di pre-script e post-script in pacchetto, in modo da poter essere certi del supporto, della proprietà e della validità di questi script.

Attualmente, le applicazioni supportate per il framework avanzato sono Oracle 12.1 o versione successiva e MySQL. Lo snapshot è una copia completa dell'archiviazione e non uno snapshot incrementale o di copia su scrittura, quindi è un supporto efficace per ripristinare il database.

Considerazioni su VLDB

Le strategie di backup per database di dimensioni molto grandi richiedono un'attenta considerazione a causa delle dimensioni. L'uso di RMAN per eseguire il backup nell'Archivio BLOB di Azure o in File di Azure potrebbe non fornire la velocità effettiva necessaria per eseguire il backup di un database VLDB nell'intervallo di tempo di destinazione.

È possibile usare il backup incrementale RMAN per ridurre le dimensioni dei backup. Questo approccio potrebbe consentire l'uso di Archiviazione di Azure come supporto di backup per le VLDB. Tuttavia, potrebbe non essere efficace per i VLDB con volumi elevati di modifiche.

È consigliabile usare i servizi di Azure che forniscono funzionalità di snapshot, ad esempio Backup di Azure o Azure NetApp Files, per le VLDB. Gli snapshot coerenti con l'applicazione, in cui i database vengono inseriti automaticamente in modalità di backup, richiedono solo secondi per creare indipendentemente dalle dimensioni del database.

La strategia di backup potrebbe essere associata anche alla soluzione di archiviazione complessiva usata dall'organizzazione per Oracle Database. I carichi di lavoro di database con velocità effettiva di I/O estrema spesso usano Azure NetApp Files o soluzioni di Azure Marketplace di terze parti, ad esempio Silk, per soddisfare i requisiti di velocità effettiva e operazioni di I/O al secondo di archiviazione del database. Queste soluzioni forniscono anche snapshot coerenti con l'applicazione per operazioni rapide di backup e ripristino del database.

Passaggi successivi