TR-4988: Backup, recovery e cloning di database Oracle su ANF con SnapCenter
Allen Cao, Niyaz Mohamed, NetApp
Questa soluzione fornisce panoramica e dettagli per la distribuzione automatizzata di Oracle in Microsoft Azure NetApp Files come storage di database primario con protocollo NFS e il database Oracle viene implementato come database container con DNFS abilitato. I database implementati in Azure sono protetti con il tool dell'interfaccia utente di SnapCenter per una gestione semplificata del database.
Scopo
Il software NetApp SnapCenter è una piattaforma aziendale di facile utilizzo per coordinare e gestire in modo sicuro la protezione dei dati tra applicazioni, database e file system. Semplifica backup, ripristino e Lifecycle management dei cloni scaricando questi task ai proprietari delle applicazioni senza sacrificare la capacità di sovrintendere e regolamentare l'attività nei sistemi storage. Sfruttando la gestione dei dati basata su storage, consente di aumentare performance e disponibilità, nonché di ridurre i tempi richiesti per test e sviluppo.
In TR-4987, "Implementazione semplificata e automatizzata di Oracle su Azure NetApp Files con NFS", Dimostriamo la distribuzione automatizzata di Oracle su Azure NetApp Files (ANF) nel cloud Azure. In questa documentazione, presenteremo la protezione e la gestione dei database Oracle su ANF nel cloud Azure con un tool dell'interfaccia utente SnapCenter molto intuitivo.
Questa soluzione risolve i seguenti casi di utilizzo:
-
Backup e recovery di database Oracle implementati in ANF nel cloud Azure con SnapCenter.
-
Gestisci snapshot del database e copie clonate per accelerare lo sviluppo applicativo e migliorare la gestione del ciclo di vita dei dati.
Pubblico
Questa soluzione è destinata alle seguenti persone:
-
Un DBA che vorrebbe implementare i database Oracle su Azure NetApp Files.
-
Un Solution Architect per database che vorrebbe testare i carichi di lavoro Oracle su Azure NetApp Files.
-
Un amministratore dello storage che desidera implementare e gestire i database Oracle su Azure NetApp Files.
-
Un proprietario di applicazioni che desidera creare un database Oracle su Azure NetApp Files.
Ambiente di test e convalida della soluzione
Il test e la convalida di questa soluzione sono stati eseguiti in un laboratorio che potrebbe non corrispondere all'ambiente di distribuzione finale. Vedere la sezione Fattori chiave per l'implementazione per ulteriori informazioni.
Architettura
Componenti hardware e software
Hardware |
||
Azure NetApp Files |
Attuale offerta in Azure di Microsoft |
Pool di capacità con livello di servizio Premium |
Azure VM per server DB |
Standard_B4ms - 4 vCPU, 16GiB |
Due istanze di macchine virtuali Linux |
Azure VM per SnapCenter |
Standard_B4ms - 4 vCPU, 16GiB |
Una istanza di macchina virtuale Windows |
Software |
||
RedHat Linux |
RHEL Linux 8,6 (LVM) - x64 Gen2 |
Implementazione dell'abbonamento a RedHat per il test |
Server Windows |
2022 DataCenter; AE HotPatch - x64 Gen2 |
Server SnapCenter di hosting |
Database Oracle |
Versione 19.18 |
Patch p34765931_190000_Linux-x86-64.zip |
Oracle OPatch |
Versione 12.2.0.1.36 |
Patch p6880880_190000_Linux-x86-64.zip |
Server SnapCenter |
Versione 5,0 |
Distribuzione di gruppi di lavoro |
Aprire JDK |
Versione java-11-openjdk |
Requisito del plugin SnapCenter per macchine virtuali DB |
NFS |
Versione 3.0 |
Oracle DNFS abilitato |
Ansible |
nucleo 2.16.2 |
Python 3.6.8 |
Configurazione del database Oracle nell'ambiente di laboratorio
Server |
Database |
Archiviazione DB |
ora-01 |
NTAP1 (NTAP1_PDB1,NTAP1_PDB2,NTAP1_PDB3) |
/U01, /U02, /U03 montaggi NFS su pool di capacità ANF |
ora-02 |
NTAP2 (NTAP2_PDB1,NTAP2_PDB2,NTAP2_PDB3) |
/U01, /U02, /U03 montaggi NFS su pool di capacità ANF |
Fattori chiave per l'implementazione
-
Distribuzione SnapCenter. SnapCenter può essere distribuito in un dominio Windows o in un ambiente workgroup. Per la distribuzione basata sul dominio, l'account utente del dominio deve essere un account amministratore del dominio o l'utente del dominio appartiene al gruppo dell'amministratore locale sul server host SnapCenter.
-
Risoluzione del nome. il server SnapCenter deve risolvere il nome all'indirizzo IP per ogni host del server del database di destinazione gestito. Ciascun host del server di database di destinazione deve risolvere il nome del server SnapCenter all'indirizzo IP. Se un server DNS non è disponibile, aggiungere la denominazione ai file host locali per la risoluzione.
-
Configurazione del gruppo di risorse. il gruppo di risorse in SnapCenter è un raggruppamento logico di risorse simili che possono essere sottoposte a backup insieme. In questo modo, semplifica e riduce il numero di processi di backup in un ambiente di database di grandi dimensioni.
-
Backup completo del database e del log di archivio. il backup completo del database include snapshot di gruppo coerenti dei volumi di dati e di registro. Una snapshot frequente e completa del database implica un maggiore consumo dello storage, ma migliora l'RTO. Un'alternativa è rappresentata da snapshot di database completi meno frequenti e backup dei registri di archivio più frequenti, che consumano meno storage e migliorano l'RPO ma possono estendere l'RTO. Durante la configurazione dello schema di backup, tieni in considerazione gli obiettivi di RTO e RPO. Esiste anche un limite (1023) del numero di backup snapshot su un volume.
-
Delega dei privilegi. sfruttare il controllo dell'accesso basato sui ruoli integrato nell'interfaccia utente di SnapCenter per delegare i privilegi ai team di applicazioni e database, se lo si desidera.
Implementazione della soluzione
Le seguenti sezioni forniscono procedure passo per passo per implementazione di SnapCenter, configurazione e backup, recovery e cloning dei database Oracle in Azure NetApp Files nel cloud Azure.
Prerequisiti per l'implementazione
Details
L'implementazione richiede database Oracle esistenti in esecuzione su ANF in Azure. In caso contrario, attenersi alla procedura riportata di seguito per creare due database Oracle da convalidare con la soluzione. Per informazioni dettagliate sull'implementazione del database Oracle in ANF nel cloud Azure con automazione, fare riferimento al documento TR-4987: "Implementazione semplificata e automatizzata di Oracle su Azure NetApp Files con NFS"
-
È stato configurato un account Azure e all'interno dell'account Azure sono stati creati i segmenti di rete e VNET necessari.
-
Dal portale cloud Azure, implementa le macchine virtuali Azure Linux come server Oracle DB. Creare un pool di capacità Azure NetApp Files e volumi di database per il database Oracle. Abilitare l'autenticazione a chiave privata/pubblica SSH VM per azureuser nei server DB. Per ulteriori informazioni sulla configurazione dell'ambiente, fare riferimento al diagramma dell'architettura riportato nella sezione precedente. A cui si fa anche riferimento "Procedure di implementazione Oracle dettagliate su Azure VM e Azure NetApp Files" per informazioni dettagliate.
Per le macchine virtuali Azure distribuite con ridondanza del disco locale, assicurarsi di aver allocato almeno 128G GB nel disco principale della macchina virtuale in modo da avere spazio sufficiente per preparare i file di installazione di Oracle e aggiungere il file di swap del sistema operativo. Espandere di conseguenza la partizione del sistema operativo /tmplv e /rootlv. Assicurarsi che la denominazione del volume del database sia conforme alle convenzioni VMname-U01, VMname-U02 e VMname-U03. sudo lvresize -r -L +20G /dev/mapper/rootvg-rootlv
sudo lvresize -r -L +10G /dev/mapper/rootvg-tmplv
-
Dal portale cloud Azure, eseguire il provisioning di un server Windows per eseguire lo strumento UI di NetApp SnapCenter con la versione più recente. Fare riferimento al seguente link per i dettagli: "Installare il server SnapCenter".
-
Esegui il provisioning di una VM Linux come nodo di controller Ansible con l'ultima versione di Ansible e Git installata. Fare riferimento al seguente link per i dettagli: "Introduzione all'automazione delle soluzioni NetApp" nella sezione -
Setup the Ansible Control Node for CLI deployments on RHEL / CentOS
oppure
Setup the Ansible Control Node for CLI deployments on Ubuntu / Debian
.Il nodo del controller Ansible può individuare on-premise o nel cloud Azure, nella misura in cui può raggiungere le VM di Azure DB tramite la porta ssh. -
Clona una copia del toolkit di automazione dell'implementazione Oracle di NetApp per NFS. Seguire le istruzioni riportate in "TR-4887" per eseguire i playbook.
git clone https://bitbucket.ngage.netapp.com/scm/ns-bb/na_oracle_deploy_nfs.git
-
Fase successiva ai file di installazione di Oracle 19c nella directory Azure DB VM /tmp/archive con autorizzazione 777.
installer_archives: - "LINUX.X64_193000_db_home.zip" - "p34765931_190000_Linux-x86-64.zip" - "p6880880_190000_Linux-x86-64.zip"
-
Guarda il seguente video:
Backup, ripristino e cloning di database Oracle su ANF con SnapCenter -
Esaminare
Get Started
menu online.
Installazione e configurazione di SnapCenter
Details
Si consiglia di accedere online "Documentazione del software SnapCenter" Prima di procedere all'installazione e alla configurazione di SnapCenter: . Di seguito viene fornito un riepilogo ad alto livello dei passaggi per l'installazione e la configurazione del software SnapCenter per Oracle su Azure ANF.
-
Dal server SnapCenter Windows, scaricare e installare l'ultima versione di java JDK dal sito Web "Scarica Java per le applicazioni desktop".
-
Dal server Windows SnapCenter, scaricare e installare la versione più recente (attualmente 5,0) del file eseguibile di installazione SnapCenter dal sito di supporto NetApp: "NetApp | Assistenza".
-
Dopo l'installazione del server SnapCenter, avviare il browser per accedere a SnapCenter con le credenziali dell'utente amministratore locale o dell'utente di dominio Windows tramite la porta 8146.
-
Revisione
Get Started
menu online. -
Poll
Settings-Global Settings
, controlloHypervisor Settings
E fare clic su Aggiorna. -
Se necessario, regolare
Session Timeout
Per l'interfaccia utente di SnapCenter all'intervallo desiderato. -
Se necessario, aggiungere altri utenti a SnapCenter.
-
Il
Roles
Elenca i ruoli incorporati che possono essere assegnati a diversi utenti SnapCenter. I ruoli personalizzati possono anche essere creati dall'utente amministratore con i privilegi desiderati. -
Da
Settings-Credential
, Creare le credenziali per gli obiettivi di gestione SnapCenter. In questo caso di utilizzo dimostrativo, sono utenti linux per l'accesso ad Azure VM e credenziali ANF per l'accesso al pool di capacità. -
Da
Storage Systems
scheda, aggiungiAzure NetApp Files
con la credenziale creata in precedenza. -
Da
Hosts
Tab, Aggiungi Azure DB VM, che installa il plug-in SnapCenter per Oracle su Linux. -
Una volta installato il plug-in host sulla VM del server DB, i database sull'host vengono rilevati automaticamente e visibili in
Resources
scheda. Torna a.Settings-Polices
, Creare criteri di backup per il backup online completo del database Oracle e il backup solo dei registri di archivio. Consultare questo documento "Creare policy di backup per i database Oracle" per le procedure dettagliate.
Backup del database
Details
Il backup di uno snapshot NetApp crea un'immagine point-in-time dei volumi di database che è possibile utilizzare per il ripristino in caso di errore di sistema o perdita di dati. I backup di Snapshot richiedono pochissimo tempo, generalmente meno di un minuto. L'immagine di backup consuma uno spazio di storage minimo e subisce un overhead delle performance trascurabile poiché registra solo le modifiche ai file dall'ultima copia snapshot effettuata. Nella sezione seguente viene illustrata l'implementazione di snapshot per il backup del database Oracle in SnapCenter.
-
Navigazione verso
Resources
Che elenca i database rilevati dopo l'installazione del plugin SnapCenter sulla VM del database. Inizialmente, ilOverall Status
del database viene visualizzato comeNot protected
. -
Fare clic su
View
a discesa per passare a.Resource Group
. Fare clic suAdd
Accedere a destra per aggiungere un gruppo di risorse. -
Assegnare un nome al gruppo di risorse, ai tag e a qualsiasi denominazione personalizzata.
-
Aggiungere risorse al
Resource Group
. Il raggruppamento di risorse simili può semplificare la gestione dei database in un ambiente di grandi dimensioni. -
Selezionare il criterio di backup e impostare una pianificazione facendo clic sul segno "+" in
Configure Schedules
. -
Se la verifica del backup non è configurata nel criterio, lasciare la pagina di verifica così com'è.
-
Per inviare un report di backup e una notifica tramite e-mail, è necessario un server di posta SMTP nell'ambiente. Oppure lasciarla nera se un server di posta non è configurato.
-
Riepilogo del nuovo gruppo di risorse.
-
Ripetere le procedure descritte sopra per creare un backup solo del registro di archivio del database con i criteri di backup corrispondenti.
-
Fare clic su un gruppo di risorse per visualizzare le risorse incluse. Oltre al processo di backup pianificato, è possibile attivare un backup singolo facendo clic su
Backup Now
. -
Fare clic sul lavoro in esecuzione per aprire una finestra di monitoraggio che consente all'operatore di tenere traccia dell'avanzamento del lavoro in tempo reale.
-
Una volta completato un processo di backup, viene visualizzato un set di backup snapshot nella topologia del database. Un set di backup completo del database include uno snapshot dei volumi dei dati del database e uno snapshot dei volumi del log del database. Un backup di solo registro contiene solo uno snapshot dei volumi di registro del database.
Recovery del database
Details
Ripristino di database tramite SnapCenter consente di ripristinare una copia Snapshot point-in-time dell'immagine del volume di database. Il database viene quindi inoltrato a un punto desiderato da SCN/timestamp o da un punto come consentito dai log di archivio disponibili nel set di backup. Nella sezione seguente viene illustrato il flusso di lavoro di ripristino del database con l'interfaccia utente di SnapCenter.
-
Da
Resources
aprire il databasePrimary Backup(s)
pagina. Scegliere lo snapshot del volume di dati del database, quindi fare clic suRestore
per avviare il flusso di lavoro di ripristino del database. Se si desidera eseguire il ripristino da Oracle SCN o timestamp, annotare il numero SCN o l'indicatore data e ora nei set di backup. -
Selezionare
Restore Scope
. Per un database di container, SnapCenter è flessibile per eseguire un ripristino a livello di tablespace, database inseribili o database completo di container (tutti i file di dati). -
Selezionare
Recovery Scope
.All logs
significa applicare tutti i log di archivio disponibili nel set di backup. Sono disponibili anche il ripristino point-in-time da parte di SCN o timestamp. -
Il
PreOps
consente l'esecuzione di script sul database prima dell'operazione di ripristino/ripristino. -
Il
PostOps
consente l'esecuzione di script sul database dopo l'operazione di ripristino/ripristino. -
Notifica via e-mail, se lo si desidera.
-
Ripristinare il riepilogo del processo
-
Fare clic su processo in esecuzione per aprirlo
Job Details
finestra. Lo stato del lavoro può essere aperto e visualizzato anche daMonitor
scheda.
Clone del database
Details
Clone del database tramite SnapCenter viene ottenuto creando un nuovo volume da una snapshot di un volume. Il sistema utilizza le informazioni dello snapshot per clonare un nuovo volume utilizzando i dati sul volume quando è stata acquisita la snapshot. Cosa più importante, è rapida ed efficiente rispetto ad altri metodi per creare una copia clonata del database di produzione per supportare lo sviluppo o i test. Pertanto, migliora drasticamente la gestione del ciclo di vita delle applicazioni del database. Nella sezione seguente viene illustrato il flusso di lavoro del clone del database con interfaccia utente di SnapCenter.
-
Da
Resources
aprire il databasePrimary Backup(s)
pagina. Scegliere lo snapshot del volume di dati del database, quindi fare clic suclone
per avviare il flusso di lavoro dei cloni del database. -
Assegnare un nome al SID del database clone. In alternativa, per un database di container, il cloning può essere eseguito anche a livello di PDB.
-
Selezionare il server DB in cui si desidera collocare la copia del database clonata. Mantenere le posizioni predefinite dei file a meno che non si desideri assegnare loro un nome diverso.
-
Lo stack software Oracle identico a quello del database di origine deve essere installato e configurato sull'host DB clone. Mantenere la credenziale predefinita ma modificarla
Oracle Home Settings
Per la corrispondenza con le impostazioni sull'host DB clone. -
Il
PreOps
consente l'esecuzione degli script prima dell'operazione di clonazione. I parametri del database possono essere regolati per soddisfare le esigenze di un DB clone rispetto a un database di produzione, come una destinazione SGA ridotta. -
Il
PostOps
consente l'esecuzione di script sul database dopo l'operazione di clonazione. Il ripristino del database clone può essere basato su SCN, timestamp o fino a quando non viene annullato (rollforward del database all'ultimo log archiviato nel set di backup). -
Notifica via e-mail, se lo si desidera.
-
Clona riepilogo processi.
-
Fare clic su processo in esecuzione per aprirlo
Job Details
finestra. Lo stato del lavoro può essere aperto e visualizzato anche daMonitor
scheda. -
Il database clonato si registra immediatamente con SnapCenter.
-
Convalidare il database clone sull'host del server DB. Per un database di sviluppo clonato, la modalità di archiviazione dei database deve essere disattivata.
[azureuser@ora-02 ~]$ sudo su [root@ora-02 azureuser]# su - oracle Last login: Tue Feb 6 16:26:28 UTC 2024 on pts/0 [oracle@ora-02 ~]$ uname -a Linux ora-02 4.18.0-372.9.1.el8.x86_64 #1 SMP Fri Apr 15 22:12:19 EDT 2022 x86_64 x86_64 x86_64 GNU/Linux [oracle@ora-02 ~]$ df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 7.7G 0 7.7G 0% /dev tmpfs 7.8G 0 7.8G 0% /dev/shm tmpfs 7.8G 49M 7.7G 1% /run tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup /dev/mapper/rootvg-rootlv 22G 17G 5.6G 75% / /dev/mapper/rootvg-usrlv 10G 2.0G 8.1G 20% /usr /dev/mapper/rootvg-homelv 1014M 40M 975M 4% /home /dev/sda1 496M 106M 390M 22% /boot /dev/mapper/rootvg-varlv 8.0G 958M 7.1G 12% /var /dev/sda15 495M 5.9M 489M 2% /boot/efi /dev/mapper/rootvg-tmplv 12G 8.4G 3.7G 70% /tmp tmpfs 1.6G 0 1.6G 0% /run/user/54321 172.30.136.68:/ora-02-u03 250G 2.1G 248G 1% /u03 172.30.136.68:/ora-02-u01 100G 10G 91G 10% /u01 172.30.136.68:/ora-02-u02 250G 7.5G 243G 3% /u02 tmpfs 1.6G 0 1.6G 0% /run/user/1000 tmpfs 1.6G 0 1.6G 0% /run/user/0 172.30.136.68:/ora-01-u02-Clone-020624161543077 250G 8.2G 242G 4% /u02_ntap1dev [oracle@ora-02 ~]$ cat /etc/oratab # # This file is used by ORACLE utilities. It is created by root.sh # and updated by either Database Configuration Assistant while creating # a database or ASM Configuration Assistant while creating ASM instance. # A colon, ':', is used as the field terminator. A new line terminates # the entry. Lines beginning with a pound sign, '#', are comments. # # Entries are of the form: # $ORACLE_SID:$ORACLE_HOME:<N|Y>: # # The first and second fields are the system identifier and home # directory of the database respectively. The third field indicates # to the dbstart utility that the database should , "Y", or should not, # "N", be brought up at system boot time. # # Multiple entries with the same $ORACLE_SID are not allowed. # # NTAP2:/u01/app/oracle/product/19.0.0/NTAP2:Y # SnapCenter Plug-in for Oracle Database generated entry (DO NOT REMOVE THIS LINE) ntap1dev:/u01/app/oracle/product/19.0.0/NTAP2:N [oracle@ora-02 ~]$ export ORACLE_SID=ntap1dev [oracle@ora-02 ~]$ sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Tue Feb 6 16:29:02 2024 Version 19.18.0.0.0 Copyright (c) 1982, 2022, Oracle. All rights reserved. Connected to: Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.18.0.0.0 SQL> select name, open_mode, log_mode from v$database; NAME OPEN_MODE LOG_MODE --------- -------------------- ------------ NTAP1DEV READ WRITE ARCHIVELOG SQL> shutdown immediate; Database closed. Database dismounted. ORACLE instance shut down. SQL> startup mount; ORACLE instance started. Total System Global Area 3221223168 bytes Fixed Size 9168640 bytes Variable Size 654311424 bytes Database Buffers 2550136832 bytes Redo Buffers 7606272 bytes Database mounted. SQL> alter database noarchivelog; Database altered. SQL> alter database open; Database altered. SQL> select name, open_mode, log_mode from v$database; NAME OPEN_MODE LOG_MODE --------- -------------------- ------------ NTAP1DEV READ WRITE NOARCHIVELOG SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 NTAP1_PDB1 MOUNTED 4 NTAP1_PDB2 MOUNTED 5 NTAP1_PDB3 MOUNTED SQL> alter pluggable database all open;
Dove trovare ulteriori informazioni
Per ulteriori informazioni sulle informazioni descritte in questo documento, consultare i seguenti documenti e/o siti Web:
-
Azure NetApp Files
-
Documentazione del software SnapCenter
-
TR-4987: Implementazione di Oracle semplificata e automatizzata su Azure NetApp Files con NFS