TR-4979: Oracle semplificato e autogestito in VMware Cloud su AWS con FSx ONTAP montato su guest
Allen Cao, Niyaz Mohamed, NetApp
Questa soluzione fornisce una panoramica e dettagli per la distribuzione e la protezione di Oracle in VMware Cloud in AWS con FSx ONTAP come storage del database primario e database Oracle configurato in ReStart autonomo utilizzando asm come gestore dei volumi.
Scopo
Da decenni le aziende utilizzano Oracle su VMware nei data center privati. VMware Cloud (VMC) su AWS offre una soluzione immediata per portare il software Software-Defined Data Center (SDDC) di classe enterprise di VMware sull'infrastruttura bare-metal dedicata ed elastica di AWS Cloud. AWS FSx ONTAP offre storage premium a VMC SDDC e un data fabric che consente ai clienti di eseguire applicazioni business-critical come Oracle in ambienti cloud privati, pubblici e ibridi basati su vSphere, con accesso ottimizzato ai servizi AWS. Che si tratti di un carico di lavoro Oracle nuovo o esistente, VMC su AWS fornisce un ambiente Oracle familiare, semplificato e autogestito su VMware con tutti i vantaggi del cloud AWS, delegando al contempo a VMware tutta la gestione e l'ottimizzazione della piattaforma.
Questa documentazione illustra la distribuzione e la protezione di un database Oracle in un ambiente VMC con Amazon FSx ONTAP come storage del database primario. Il database Oracle può essere distribuito su VMC su storage FSx come LUN montate direttamente su guest VM o dischi datastore VMware VMDK montati su NFS. Questo rapporto tecnico si concentra sulla distribuzione del database Oracle come storage FSx montato direttamente sugli ospiti nelle VM nel cluster VMC con il protocollo iSCSI e Oracle ASM. Mostreremo inoltre come utilizzare lo strumento NetApp SnapCenter UI per eseguire il backup, il ripristino e la clonazione di un database Oracle per lo sviluppo/test o altri casi d'uso per operazioni di database efficienti in termini di storage nella VMC su AWS.
Questa soluzione affronta i seguenti casi d'uso:
-
Distribuzione del database Oracle in VMC su AWS con Amazon FSx ONTAP come storage del database primario
-
Backup e ripristino del database Oracle in VMC su AWS utilizzando lo strumento NetApp SnapCenter
-
Clone del database Oracle per sviluppo/test o altri casi d'uso in VMC su AWS utilizzando lo strumento NetApp SnapCenter
Pubblico
Questa soluzione è destinata alle seguenti persone:
-
Un DBA che vorrebbe distribuire Oracle in VMC su AWS con Amazon FSx ONTAP
-
Un architetto di soluzioni di database che vorrebbe testare i carichi di lavoro Oracle in VMC sul cloud AWS
-
Un amministratore di storage che desidera distribuire e gestire un database Oracle distribuito su VMC su AWS con Amazon FSx ONTAP
-
Un proprietario di un'applicazione che vorrebbe creare un database Oracle in VMC sul cloud AWS
Ambiente di test e convalida della soluzione
I test e la convalida di questa soluzione sono stati eseguiti in un ambiente di laboratorio con VMC su AWS che potrebbe non corrispondere all'ambiente di distribuzione finale. Per ulteriori informazioni, consultare la sezione Fattori chiave per la considerazione dell'implementazione .
Architettura
Componenti hardware e software
Hardware |
||
Archiviazione FSx ONTAP |
Versione attuale offerta da AWS |
Un cluster FSx ONTAP HA nella stessa VPC e zona di disponibilità della VMC |
Cluster VMC SDDC |
Nodo singolo Amazon EC2 i3.metal/CPU Intel Xeon E5-2686, 36 core/512G RAM |
10,37 TB di spazio di archiviazione vSAN |
Software |
||
RedHat Linux |
Kernel RHEL-8.6, 4.18.0-372.9.1.el8.x86_64 |
Abbonamento RedHat distribuito per i test |
Server Windows |
Standard 2022, 10.0.20348 Build 20348 |
Hosting del server SnapCenter |
Infrastruttura Oracle Grid |
Versione 19.18 |
Patch RU applicata p34762026_190000_Linux-x86-64.zip |
Database Oracle |
Versione 19.18 |
Patch RU applicata p34765931_190000_Linux-x86-64.zip |
Oracle OPatch |
Versione 12.2.0.1.36 |
Ultima patch p6880880_190000_Linux-x86-64.zip |
Server SnapCenter |
Versione 4.9P1 |
Distribuzione del gruppo di lavoro |
BlueXP backup and recovery per VM |
Versione 1.0 |
Distribuito come VM del plugin ova vSphere |
VMware vSphere |
Versione 8.0.1.00300 |
VMware Tools, versione: 11365 - Linux, 12352 - Windows |
Apri JDK |
Versione java-1.8.0-openjdk.x86_64 |
Requisiti del plugin SnapCenter sulle VM DB |
Configurazione del database Oracle in VMC su AWS
Server |
Banca dati |
Archiviazione DB |
ora_01 |
cdb1(cdb1_pdb1,cdb1_pdb2,cdb1_pdb3) |
Archivio dati VMDK su FSx ONTAP |
ora_01 |
cdb2(cdb2_pdb) |
Archivio dati VMDK su FSx ONTAP |
ora_02 |
cdb3(cdb3_pdb1,cdb3_pdb2,cdb3_pdb3) |
FSx ONTAP montato direttamente dall'ospite |
ora_02 |
cdb4(cdb4_pdb) |
FSx ONTAP montato direttamente dall'ospite |
Fattori chiave per la considerazione dell'implementazione
-
Connettività da FSx a VMC. Quando distribuisci il tuo SDDC su VMware Cloud su AWS, questo viene creato all'interno di un account AWS e di una VPC dedicata alla tua organizzazione e gestita da VMware. È inoltre necessario connettere l'SDDC a un account AWS di tua proprietà, denominato account AWS del cliente. Questa connessione consente al tuo SDDC di accedere ai servizi AWS appartenenti al tuo account cliente. FSx ONTAP è un servizio AWS distribuito nel tuo account cliente. Una volta che VMC SDDC è connesso al tuo account cliente, lo storage FSx è disponibile per le VM in VMC SDDC per il montaggio guest diretto.
-
Distribuzione di cluster HA di storage FSx a zona singola o multizona. In questi test e convalide, abbiamo distribuito un cluster FSx HA in una singola zona di disponibilità AWS. NetApp consiglia inoltre di distribuire FSx ONTAP e VMware Cloud su AWS nella stessa zona di disponibilità per ottenere prestazioni migliori ed evitare costi di trasferimento dati tra zone di disponibilità.
-
Dimensionamento del cluster di archiviazione FSx. Un file system di storage Amazon FSx ONTAP fornisce fino a 160.000 IOPS SSD raw, fino a 4 GBps di throughput e una capacità massima di 192 TiB. Tuttavia, è possibile dimensionare il cluster in termini di IOPS forniti, velocità effettiva e limite di archiviazione (minimo 1.024 GiB) in base alle esigenze effettive al momento della distribuzione. La capacità può essere regolata dinamicamente al volo senza compromettere la disponibilità dell'applicazione.
-
Layout dei dati e dei log di Oracle. Nei nostri test e nelle nostre convalide, abbiamo distribuito due gruppi di dischi ASM rispettivamente per i dati e i log. All'interno del gruppo di dischi asm +DATA, abbiamo predisposto quattro LUN in un volume di dati. All'interno del gruppo di dischi asm +LOGS, abbiamo predisposto due LUN in un volume di registro. In generale, più LUN disposte all'interno di un volume Amazon FSx ONTAP garantiscono prestazioni migliori.
-
Configurazione iSCSI. Le VM del database in VMC SDDC si connettono allo storage FSx tramite il protocollo iSCSI. È importante valutare il requisito di throughput I/O di picco del database Oracle analizzando attentamente il report Oracle AWR per determinare i requisiti di throughput del traffico iSCSI e dell'applicazione. NetApp consiglia inoltre di allocare quattro connessioni iSCSI a entrambi gli endpoint iSCSI FSx con multipath configurato correttamente.
-
Livello di ridondanza di Oracle ASM da utilizzare per ogni gruppo di dischi Oracle ASM creato. Poiché FSx ONTAP esegue già il mirroring dello storage a livello di cluster FSx, è necessario utilizzare la ridondanza esterna, il che significa che l'opzione non consente a Oracle ASM di eseguire il mirroring del contenuto del gruppo di dischi.
-
Backup del database. NetApp fornisce una suite SnapCenter software per il backup, il ripristino e la clonazione del database con un'interfaccia utente intuitiva. NetApp consiglia di implementare tale strumento di gestione per ottenere un backup SnapShot rapido (meno di un minuto), un ripristino rapido del database (in pochi minuti) e una clonazione del database.
Distribuzione della soluzione
Le sezioni seguenti forniscono procedure dettagliate per la distribuzione di Oracle 19c in VMC su AWS con storage FSx ONTAP montato direttamente sulla VM DB in un singolo nodo. Riavviare la configurazione con Oracle ASM come gestore dei volumi del database.
Prerequisiti per la distribuzione
Details
Per la distribuzione sono richiesti i seguenti prerequisiti.
-
È stato creato un data center definito dal software (SDDC) utilizzando VMware Cloud su AWS. Per istruzioni dettagliate su come creare un SDDC in VMC, fare riferimento alla documentazione VMware"Introduzione a VMware Cloud su AWS"
-
È stato configurato un account AWS e sono stati creati i segmenti di rete e VPC necessari all'interno del tuo account AWS. L'account AWS è collegato al tuo VMC SDDC.
-
Dalla console AWS EC2, distribuzione di cluster HA di storage Amazon FSx ONTAP per ospitare i volumi del database Oracle. Se non hai familiarità con la distribuzione dell'archiviazione FSx, consulta la documentazione"Creazione di file system FSx ONTAP" per istruzioni dettagliate.
-
Il passaggio precedente può essere eseguito utilizzando il seguente toolkit di automazione Terraform, che crea un'istanza EC2 come host jump per SDDC nell'accesso VMC tramite SSH e un file system FSx. Prima dell'esecuzione, rivedere attentamente le istruzioni e modificare le variabili in base all'ambiente.
git clone https://github.com/NetApp-Automation/na_aws_fsx_ec2_deploy.git
-
Crea VM in VMware SDDC su AWS per ospitare il tuo ambiente Oracle da distribuire in VMC. Nella nostra dimostrazione, abbiamo creato due VM Linux come server Oracle DB, un server Windows per il server SnapCenter e un server Linux opzionale come controller Ansible per l'installazione o la configurazione automatizzata di Oracle, se desiderato. Di seguito è riportata un'istantanea dell'ambiente di laboratorio per la convalida della soluzione.
-
Facoltativamente, NetApp fornisce anche diversi toolkit di automazione per eseguire la distribuzione e la configurazione di Oracle, ove applicabile.
|
Assicurati di aver allocato almeno 50 G nel volume root di Oracle VM per avere spazio sufficiente per organizzare i file di installazione di Oracle. |
Configurazione del kernel della VM DB
Details
Una volta soddisfatti i prerequisiti, accedi alla Oracle VM come utente amministratore tramite SSH e digita sudo come utente root per configurare il kernel Linux per l'installazione di Oracle. I file di installazione di Oracle possono essere archiviati in un bucket AWS S3 e trasferiti nella VM.
-
Creare una directory di staging
/tmp/archive
cartella e impostare il777
permesso.mkdir /tmp/archive
chmod 777 /tmp/archive
-
Scaricare e mettere in scena i file di installazione binaria di Oracle e altri file rpm richiesti su
/tmp/archive
elenco.Vedere il seguente elenco di file di installazione da indicare in
/tmp/archive
sulla VM del database.[admin@ora_02 ~]$ ls -l /tmp/archive/ total 10539364 -rw-rw-r--. 1 admin admin 19112 Oct 4 17:04 compat-libcap1-1.10-7.el7.x86_64.rpm -rw-rw-r--. 1 admin admin 3059705302 Oct 4 17:10 LINUX.X64_193000_db_home.zip -rw-rw-r--. 1 admin admin 2889184573 Oct 4 17:11 LINUX.X64_193000_grid_home.zip -rw-rw-r--. 1 admin admin 589145 Oct 4 17:04 netapp_linux_unified_host_utilities-7-1.x86_64.rpm -rw-rw-r--. 1 admin admin 31828 Oct 4 17:04 oracle-database-preinstall-19c-1.0-2.el8.x86_64.rpm -rw-rw-r--. 1 admin admin 2872741741 Oct 4 17:12 p34762026_190000_Linux-x86-64.zip -rw-rw-r--. 1 admin admin 1843577895 Oct 4 17:13 p34765931_190000_Linux-x86-64.zip -rw-rw-r--. 1 admin admin 124347218 Oct 4 17:13 p6880880_190000_Linux-x86-64.zip -rw-rw-r--. 1 admin admin 257136 Oct 4 17:04 policycoreutils-python-utils-2.9-9.el8.noarch.rpm [admin@ora_02 ~]$
-
Installare Oracle 19c preinstall RPM, che soddisfa la maggior parte dei requisiti di configurazione del kernel.
yum install /tmp/archive/oracle-database-preinstall-19c-1.0-2.el8.x86_64.rpm
-
Scarica e installa il file mancante
compat-libcap1
in Linux 8.yum install /tmp/archive/compat-libcap1-1.10-7.el7.x86_64.rpm
-
Da NetApp, scarica e installa le utility host NetApp .
yum install /tmp/archive/netapp_linux_unified_host_utilities-7-1.x86_64.rpm
-
Installare
policycoreutils-python-utils
.yum install /tmp/archive/policycoreutils-python-utils-2.9-9.el8.noarch.rpm
-
Installare la versione 1.8 di Open JDK.
yum install java-1.8.0-openjdk.x86_64
-
Installare le utilità dell'iniziatore iSCSI.
yum install iscsi-initiator-utils
-
Installa sg3_utils.
yum install sg3_utils
-
Installa device-mapper-multipath.
yum install device-mapper-multipath
-
Disattiva le pagine enormi trasparenti nel sistema attuale.
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo never > /sys/kernel/mm/transparent_hugepage/defrag
-
Aggiungere le seguenti righe in
/etc/rc.local
disabilitaretransparent_hugepage
dopo il riavvio.vi /etc/rc.local
# Disable transparent hugepages if test -f /sys/kernel/mm/transparent_hugepage/enabled; then echo never > /sys/kernel/mm/transparent_hugepage/enabled fi if test -f /sys/kernel/mm/transparent_hugepage/defrag; then echo never > /sys/kernel/mm/transparent_hugepage/defrag fi
-
Disabilitare selinux modificando
SELINUX=enforcing
ASELINUX=disabled
. Per rendere effettiva la modifica è necessario riavviare l'host.vi /etc/sysconfig/selinux
-
Aggiungere le seguenti righe a
limit.conf
per impostare il limite del descrittore di file e la dimensione dello stack.vi /etc/security/limits.conf
* hard nofile 65536 * soft stack 10240
-
Aggiungere spazio di swap alla VM DB se non è configurato alcuno spazio di swap con questa istruzione:"Come posso allocare memoria da utilizzare come spazio di swap in un'istanza Amazon EC2 utilizzando un file di swap?" La quantità esatta di spazio da aggiungere dipende dalla dimensione della RAM, fino a 16 GB.
-
Modifica
node.session.timeo.replacement_timeout
neliscsi.conf
file di configurazione da 120 a 5 secondi.vi /etc/iscsi/iscsid.conf
-
Abilitare e avviare il servizio iSCSI sull'istanza EC2.
systemctl enable iscsid
systemctl start iscsid
-
Recupera l'indirizzo dell'iniziatore iSCSI da utilizzare per la mappatura LUN del database.
cat /etc/iscsi/initiatorname.iscsi
-
Aggiungere i gruppi asm per l'utente di gestione asm (Oracle).
groupadd asmadmin
groupadd asmdba
groupadd asmoper
-
Modificare l'utente Oracle per aggiungere gruppi ASM come gruppi secondari (l'utente Oracle avrebbe dovuto essere creato dopo l'installazione di Oracle Preinstall RPM).
usermod -a -G asmadmin oracle
usermod -a -G asmdba oracle
usermod -a -G asmoper oracle
-
Arrestare e disattivare il firewall Linux se è attivo.
systemctl stop firewalld
systemctl disable firewalld
-
Abilita sudo senza password per l'utente amministratore rimuovendo il commento
# %wheel ALL=(ALL) NOPASSWD: ALL
riga nel file /etc/sudoers. Cambiare i permessi del file per effettuare la modifica.chmod 640 /etc/sudoers
vi /etc/sudoers
chmod 440 /etc/sudoers
-
Riavviare l'istanza EC2.
Fornire e mappare le LUN FSx ONTAP alla VM del database
Details
Eseguire il provisioning di tre volumi dalla riga di comando effettuando l'accesso al cluster FSx come utente fsxadmin tramite ssh e l'IP di gestione del cluster FSx. Creare LUN all'interno dei volumi per ospitare i file binari, di dati e di registro del database Oracle.
-
Accedere al cluster FSx tramite SSH come utente fsxadmin.
ssh fsxadmin@10.49.0.74
-
Eseguire il seguente comando per creare un volume per il binario Oracle.
vol create -volume ora_02_biny -aggregate aggr1 -size 50G -state online -type RW -snapshot-policy none -tiering-policy snapshot-only
-
Eseguire il seguente comando per creare un volume per i dati Oracle.
vol create -volume ora_02_data -aggregate aggr1 -size 100G -state online -type RW -snapshot-policy none -tiering-policy snapshot-only
-
Eseguire il seguente comando per creare un volume per i log di Oracle.
vol create -volume ora_02_logs -aggregate aggr1 -size 100G -state online -type RW -snapshot-policy none -tiering-policy snapshot-only
-
Convalidare i volumi creati.
vol show ora*
Output del comando:
FsxId0c00cec8dad373fd1::> vol show ora* Vserver Volume Aggregate State Type Size Available Used% --------- ------------ ------------ ---------- ---- ---------- ---------- ----- nim ora_02_biny aggr1 online RW 50GB 22.98GB 51% nim ora_02_data aggr1 online RW 100GB 18.53GB 80% nim ora_02_logs aggr1 online RW 50GB 7.98GB 83%
-
Creare un LUN binario all'interno del volume binario del database.
lun create -path /vol/ora_02_biny/ora_02_biny_01 -size 40G -ostype linux
-
Creare LUN di dati all'interno del volume di dati del database.
lun create -path /vol/ora_02_data/ora_02_data_01 -size 20G -ostype linux
lun create -path /vol/ora_02_data/ora_02_data_02 -size 20G -ostype linux
lun create -path /vol/ora_02_data/ora_02_data_03 -size 20G -ostype linux
lun create -path /vol/ora_02_data/ora_02_data_04 -size 20G -ostype linux
-
Creare LUN di registro all'interno del volume dei registri del database.
lun create -path /vol/ora_02_logs/ora_02_logs_01 -size 40G -ostype linux
lun create -path /vol/ora_02_logs/ora_02_logs_02 -size 40G -ostype linux
-
Creare un igroup per l'istanza EC2 con l'iniziatore recuperato dal passaggio 14 della configurazione del kernel EC2 sopra.
igroup create -igroup ora_02 -protocol iscsi -ostype linux -initiator iqn.1994-05.com.redhat:f65fed7641c2
-
Mappare i LUN sull'igroup creato sopra. Incrementare l'ID LUN in sequenza per ogni LUN aggiuntivo.
lun map -path /vol/ora_02_biny/ora_02_biny_01 -igroup ora_02 -vserver svm_ora -lun-id 0 lun map -path /vol/ora_02_data/ora_02_data_01 -igroup ora_02 -vserver svm_ora -lun-id 1 lun map -path /vol/ora_02_data/ora_02_data_02 -igroup ora_02 -vserver svm_ora -lun-id 2 lun map -path /vol/ora_02_data/ora_02_data_03 -igroup ora_02 -vserver svm_ora -lun-id 3 lun map -path /vol/ora_02_data/ora_02_data_04 -igroup ora_02 -vserver svm_ora -lun-id 4 lun map -path /vol/ora_02_logs/ora_02_logs_01 -igroup ora_02 -vserver svm_ora -lun-id 5 lun map -path /vol/ora_02_logs/ora_02_logs_02 -igroup ora_02 -vserver svm_ora -lun-id 6
-
Convalidare la mappatura LUN.
mapping show
Si prevede che ciò restituisca:
FsxId0c00cec8dad373fd1::> mapping show (lun mapping show) Vserver Path Igroup LUN ID Protocol ---------- ---------------------------------------- ------- ------ -------- nim /vol/ora_02_biny/ora_02_u01_01 ora_02 0 iscsi nim /vol/ora_02_data/ora_02_u02_01 ora_02 1 iscsi nim /vol/ora_02_data/ora_02_u02_02 ora_02 2 iscsi nim /vol/ora_02_data/ora_02_u02_03 ora_02 3 iscsi nim /vol/ora_02_data/ora_02_u02_04 ora_02 4 iscsi nim /vol/ora_02_logs/ora_02_u03_01 ora_02 5 iscsi nim /vol/ora_02_logs/ora_02_u03_02 ora_02 6 iscsi
Configurazione dell'archiviazione DB VM
Details
Ora, importa e configura lo storage FSx ONTAP per l'infrastruttura Oracle Grid e l'installazione del database sulla VM del database VMC.
-
Accedere alla VM del database tramite SSH come utente amministratore utilizzando Putty dal jump server di Windows.
-
Scopri gli endpoint iSCSI FSx utilizzando l'indirizzo IP iSCSI SVM. Modifica l'indirizzo del portale specifico del tuo ambiente.
sudo iscsiadm iscsiadm --mode discovery --op update --type sendtargets --portal 10.49.0.12
-
Stabilire sessioni iSCSI effettuando l'accesso a ciascuna destinazione.
sudo iscsiadm --mode node -l all
L'output previsto dal comando è:
[ec2-user@ip-172-30-15-58 ~]$ sudo iscsiadm --mode node -l all Logging in to [iface: default, target: iqn.1992-08.com.netapp:sn.1f795e65c74911edb785affbf0a2b26e:vs.3, portal: 10.49.0.12,3260] Logging in to [iface: default, target: iqn.1992-08.com.netapp:sn.1f795e65c74911edb785affbf0a2b26e:vs.3, portal: 10.49.0.186,3260] Login to [iface: default, target: iqn.1992-08.com.netapp:sn.1f795e65c74911edb785affbf0a2b26e:vs.3, portal: 10.49.0.12,3260] successful. Login to [iface: default, target: iqn.1992-08.com.netapp:sn.1f795e65c74911edb785affbf0a2b26e:vs.3, portal: 10.49.0.186,3260] successful.
-
Visualizza e convalida un elenco di sessioni iSCSI attive.
sudo iscsiadm --mode session
Restituisce le sessioni iSCSI.
[ec2-user@ip-172-30-15-58 ~]$ sudo iscsiadm --mode session tcp: [1] 10.49.0.186:3260,1028 iqn.1992-08.com.netapp:sn.545a38bf06ac11ee8503e395ab90d704:vs.3 (non-flash) tcp: [2] 10.49.0.12:3260,1029 iqn.1992-08.com.netapp:sn.545a38bf06ac11ee8503e395ab90d704:vs.3 (non-flash)
-
Verificare che i LUN siano stati importati nell'host.
sudo sanlun lun show
Verrà restituito un elenco di Oracle LUN da FSx.
[admin@ora_02 ~]$ sudo sanlun lun show controller(7mode/E-Series)/ device host lun vserver(cDOT/FlashRay) lun-pathname filename adapter protocol size product ------------------------------------------------------------------------------------------------------------------------------- nim /vol/ora_02_logs/ora_02_u03_02 /dev/sdo host34 iSCSI 20g cDOT nim /vol/ora_02_logs/ora_02_u03_01 /dev/sdn host34 iSCSI 20g cDOT nim /vol/ora_02_data/ora_02_u02_04 /dev/sdm host34 iSCSI 20g cDOT nim /vol/ora_02_data/ora_02_u02_03 /dev/sdl host34 iSCSI 20g cDOT nim /vol/ora_02_data/ora_02_u02_02 /dev/sdk host34 iSCSI 20g cDOT nim /vol/ora_02_data/ora_02_u02_01 /dev/sdj host34 iSCSI 20g cDOT nim /vol/ora_02_biny/ora_02_u01_01 /dev/sdi host34 iSCSI 40g cDOT nim /vol/ora_02_logs/ora_02_u03_02 /dev/sdh host33 iSCSI 20g cDOT nim /vol/ora_02_logs/ora_02_u03_01 /dev/sdg host33 iSCSI 20g cDOT nim /vol/ora_02_data/ora_02_u02_04 /dev/sdf host33 iSCSI 20g cDOT nim /vol/ora_02_data/ora_02_u02_03 /dev/sde host33 iSCSI 20g cDOT nim /vol/ora_02_data/ora_02_u02_02 /dev/sdd host33 iSCSI 20g cDOT nim /vol/ora_02_data/ora_02_u02_01 /dev/sdc host33 iSCSI 20g cDOT nim /vol/ora_02_biny/ora_02_u01_01 /dev/sdb host33 iSCSI 40g cDOT
-
Configurare il
multipath.conf
file con le seguenti voci predefinite e della blacklist.sudo vi /etc/multipath.conf
Aggiungere le seguenti voci:
defaults { find_multipaths yes user_friendly_names yes } blacklist { devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^hd[a-z]" devnode "^cciss.*" }
-
Avviare il servizio multipath.
sudo systemctl start multipathd
Ora i dispositivi multipath appaiono nel
/dev/mapper
elenco.[ec2-user@ip-172-30-15-58 ~]$ ls -l /dev/mapper total 0 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e68512d -> ../dm-0 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e685141 -> ../dm-1 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e685142 -> ../dm-2 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e685143 -> ../dm-3 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e685144 -> ../dm-4 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e685145 -> ../dm-5 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e685146 -> ../dm-6 crw------- 1 root root 10, 236 Mar 21 18:19 control
-
Accedi al cluster FSx ONTAP come utente fsxadmin tramite SSH per recuperare il numero seriale esadecimale per ogni LUN che inizia con 6c574xxx…; il numero esadecimale inizia con 3600a0980, che è l'ID del fornitore AWS.
lun show -fields serial-hex
e restituire come segue:
FsxId02ad7bf3476b741df::> lun show -fields serial-hex vserver path serial-hex ------- ------------------------------- ------------------------ svm_ora /vol/ora_02_biny/ora_02_biny_01 6c574235472455534e68512d svm_ora /vol/ora_02_data/ora_02_data_01 6c574235472455534e685141 svm_ora /vol/ora_02_data/ora_02_data_02 6c574235472455534e685142 svm_ora /vol/ora_02_data/ora_02_data_03 6c574235472455534e685143 svm_ora /vol/ora_02_data/ora_02_data_04 6c574235472455534e685144 svm_ora /vol/ora_02_logs/ora_02_logs_01 6c574235472455534e685145 svm_ora /vol/ora_02_logs/ora_02_logs_02 6c574235472455534e685146 7 entries were displayed.
-
Aggiorna il
/dev/multipath.conf
file per aggiungere un nome di facile utilizzo per il dispositivo multipath.sudo vi /etc/multipath.conf
con le seguenti voci:
multipaths { multipath { wwid 3600a09806c574235472455534e68512d alias ora_02_biny_01 } multipath { wwid 3600a09806c574235472455534e685141 alias ora_02_data_01 } multipath { wwid 3600a09806c574235472455534e685142 alias ora_02_data_02 } multipath { wwid 3600a09806c574235472455534e685143 alias ora_02_data_03 } multipath { wwid 3600a09806c574235472455534e685144 alias ora_02_data_04 } multipath { wwid 3600a09806c574235472455534e685145 alias ora_02_logs_01 } multipath { wwid 3600a09806c574235472455534e685146 alias ora_02_logs_02 } }
-
Riavviare il servizio multipath per verificare che i dispositivi in
/dev/mapper
sono stati modificati in nomi LUN anziché in ID esadecimali seriali.sudo systemctl restart multipathd
Controllo
/dev/mapper
per tornare come segue:[ec2-user@ip-172-30-15-58 ~]$ ls -l /dev/mapper total 0 crw------- 1 root root 10, 236 Mar 21 18:19 control lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_02_biny_01 -> ../dm-0 lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_02_data_01 -> ../dm-1 lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_02_data_02 -> ../dm-2 lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_02_data_03 -> ../dm-3 lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_02_data_04 -> ../dm-4 lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_02_logs_01 -> ../dm-5 lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_02_logs_02 -> ../dm-6
-
Partizionare la LUN binaria con una singola partizione primaria.
sudo fdisk /dev/mapper/ora_02_biny_01
-
Formattare il LUN binario partizionato con un file system XFS.
sudo mkfs.xfs /dev/mapper/ora_02_biny_01p1
-
Montare il LUN binario su
/u01
.sudo mkdir /u01
sudo mount -t xfs /dev/mapper/ora_02_biny_01p1 /u01
-
Modifica
/u01
la proprietà del punto di montaggio spetta all'utente Oracle e al gruppo primario associato.sudo chown oracle:oinstall /u01
-
Trova l'UUI del LUN binario.
sudo blkid /dev/mapper/ora_02_biny_01p1
-
Aggiungi un punto di montaggio a
/etc/fstab
.sudo vi /etc/fstab
Aggiungere la seguente riga.
UUID=d89fb1c9-4f89-4de4-b4d9-17754036d11d /u01 xfs defaults,nofail 0 2
-
Come utente root, aggiungere la regola udev per i dispositivi Oracle.
vi /etc/udev/rules.d/99-oracle-asmdevices.rules
Includi le seguenti voci:
ENV{DM_NAME}=="ora*", GROUP:="oinstall", OWNER:="oracle", MODE:="660"
-
Come utente root, ricaricare le regole udev.
udevadm control --reload-rules
-
Come utente root, attiva le regole udev.
udevadm trigger
-
Come utente root, ricaricare multipathd.
systemctl restart multipathd
-
Riavviare l'host dell'istanza EC2.
Installazione dell'infrastruttura Oracle Grid
Details
-
Accedi alla VM del DB come utente amministratore tramite SSH e abilita l'autenticazione tramite password rimuovendo il commento
PasswordAuthentication yes
e poi commentandoPasswordAuthentication no
.sudo vi /etc/ssh/sshd_config
-
Riavviare il servizio sshd.
sudo systemctl restart sshd
-
Reimposta la password utente Oracle.
sudo passwd oracle
-
Accedere come utente proprietario del software Oracle Restart (oracle). Creare una directory Oracle come segue:
mkdir -p /u01/app/oracle
mkdir -p /u01/app/oraInventory
-
Modificare l'impostazione dei permessi della directory.
chmod -R 775 /u01/app
-
Crea una directory home della griglia e accedi ad essa.
mkdir -p /u01/app/oracle/product/19.0.0/grid
cd /u01/app/oracle/product/19.0.0/grid
-
Decomprimere i file di installazione della griglia.
unzip -q /tmp/archive/LINUX.X64_193000_grid_home.zip
-
Dalla griglia iniziale, elimina il
OPatch
elenco.rm -rf OPatch
-
Dalla griglia iniziale, decomprimi
p6880880_190000_Linux-x86-64.zip
.unzip -q /tmp/archive/p6880880_190000_Linux-x86-64.zip
-
Dalla griglia di casa, rivedere
cv/admin/cvu_config
, rimuovi il commento e sostituisciCV_ASSUME_DISTID=OEL5
conCV_ASSUME_DISTID=OL7
.vi cv/admin/cvu_config
-
Preparare un
gridsetup.rsp
file per l'installazione silenziosa e posizionare il file rsp nel/tmp/archive
elenco. Il file rsp dovrebbe comprendere le sezioni A, B e G con le seguenti informazioni:INVENTORY_LOCATION=/u01/app/oraInventory oracle.install.option=HA_CONFIG ORACLE_BASE=/u01/app/oracle oracle.install.asm.OSDBA=asmdba oracle.install.asm.OSOPER=asmoper oracle.install.asm.OSASM=asmadmin oracle.install.asm.SYSASMPassword="SetPWD" oracle.install.asm.diskGroup.name=DATA oracle.install.asm.diskGroup.redundancy=EXTERNAL oracle.install.asm.diskGroup.AUSize=4 oracle.install.asm.diskGroup.disks=/dev/mapper/ora_02_data_01,/dev/mapper/ora_02_data_02,/dev/mapper/ora_02_data_03,/dev/mapper/ora_02_data_04 oracle.install.asm.diskGroup.diskDiscoveryString=/dev/mapper/* oracle.install.asm.monitorPassword="SetPWD" oracle.install.asm.configureAFD=true
-
Accedi all'istanza EC2 come utente root e imposta
ORACLE_HOME
EORACLE_BASE
.export ORACLE_HOME=/u01/app/oracle/product/19.0.0/
export ORACLE_BASE=/tmp
cd /u01/app/oracle/product/19.0.0/grid/bin
-
Inizializza i dispositivi disco per l'utilizzo con il driver del filtro Oracle ASM.
./asmcmd afd_label DATA01 /dev/mapper/ora_02_data_01 --init
./asmcmd afd_label DATA02 /dev/mapper/ora_02_data_02 --init
./asmcmd afd_label DATA03 /dev/mapper/ora_02_data_03 --init
./asmcmd afd_label DATA04 /dev/mapper/ora_02_data_04 --init
./asmcmd afd_label LOGS01 /dev/mapper/ora_02_logs_01 --init
./asmcmd afd_label LOGS02 /dev/mapper/ora_02_logs_02 --init
-
Installare
cvuqdisk-1.0.10-1.rpm
.rpm -ivh /u01/app/oracle/product/19.0.0/grid/cv/rpm/cvuqdisk-1.0.10-1.rpm
-
Non impostato
$ORACLE_BASE
.unset ORACLE_BASE
-
Accedi all'istanza EC2 come utente Oracle ed estrai la patch in
/tmp/archive
cartella.unzip -q /tmp/archive/p34762026_190000_Linux-x86-64.zip -d /tmp/archive
-
Dalla home della griglia /u01/app/oracle/product/19.0.0/grid e come utente Oracle, avviare
gridSetup.sh
per l'installazione dell'infrastruttura di rete../gridSetup.sh -applyRU /tmp/archive/34762026/ -silent -responseFile /tmp/archive/gridsetup.rsp
-
Come utente root, eseguire i seguenti script:
/u01/app/oraInventory/orainstRoot.sh
/u01/app/oracle/product/19.0.0/grid/root.sh
-
Come utente root, ricaricare multipathd.
systemctl restart multipathd
-
Come utente Oracle, esegui il seguente comando per completare la configurazione:
/u01/app/oracle/product/19.0.0/grid/gridSetup.sh -executeConfigTools -responseFile /tmp/archive/gridsetup.rsp -silent
-
Come utente Oracle, creare il gruppo di dischi LOGS.
bin/asmca -silent -sysAsmPassword 'yourPWD' -asmsnmpPassword 'yourPWD' -createDiskGroup -diskGroupName LOGS -disk 'AFD:LOGS*' -redundancy EXTERNAL -au_size 4
-
Come utente Oracle, convalidare i servizi della griglia dopo la configurazione dell'installazione.
bin/crsctl stat res -t
[oracle@ora_02 grid]$ bin/crsctl stat res -t -------------------------------------------------------------------------------- Name Target State Server State details -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.DATA.dg ONLINE ONLINE ora_02 STABLE ora.LISTENER.lsnr ONLINE INTERMEDIATE ora_02 Not All Endpoints Re gistered,STABLE ora.LOGS.dg ONLINE ONLINE ora_02 STABLE ora.asm ONLINE ONLINE ora_02 Started,STABLE ora.ons OFFLINE OFFLINE ora_02 STABLE -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.cssd 1 ONLINE ONLINE ora_02 STABLE ora.diskmon 1 OFFLINE OFFLINE STABLE ora.driver.afd 1 ONLINE ONLINE ora_02 STABLE ora.evmd 1 ONLINE ONLINE ora_02 STABLE --------------------------------------------------------------------------------
-
Convalida lo stato del driver del filtro ASM.
[oracle@ora_02 grid]$ export ORACLE_HOME=/u01/app/oracle/product/19.0.0/grid [oracle@ora_02 grid]$ export ORACLE_SID=+ASM [oracle@ora_02 grid]$ export PATH=$PATH:$ORACLE_HOME/bin [oracle@ora_02 grid]$ asmcmd ASMCMD> lsdg State Type Rebal Sector Logical_Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 512 4096 4194304 81920 81780 0 81780 0 N DATA/ MOUNTED EXTERN N 512 512 4096 4194304 40960 40852 0 40852 0 N LOGS/ ASMCMD> afd_state ASMCMD-9526: The AFD state is 'LOADED' and filtering is 'ENABLED' on host 'ora_02' ASMCMD> exit [oracle@ora_02 grid]$
-
Convalida lo stato del servizio HA.
[oracle@ora_02 bin]$ ./crsctl check has CRS-4638: Oracle High Availability Services is online
Installazione del database Oracle
Details
-
Accedi come utente Oracle e deseleziona
$ORACLE_HOME
E$ORACLE_SID
se è impostato.unset ORACLE_HOME
unset ORACLE_SID
-
Creare la directory home di Oracle DB e modificarne la directory.
mkdir /u01/app/oracle/product/19.0.0/cdb3
cd /u01/app/oracle/product/19.0.0/cdb3
-
Decomprimere i file di installazione di Oracle DB.
unzip -q /tmp/archive/LINUX.X64_193000_db_home.zip
-
Dalla home del DB, eliminare il
OPatch
elenco.rm -rf OPatch
-
Dalla home page del DB, decomprimi
p6880880_190000_Linux-x86-64.zip
.unzip -q /tmp/archive/p6880880_190000_Linux-x86-64.zip
-
Da DB home, rivedere
cv/admin/cvu_config
e rimuovi il commento e sostituisciCV_ASSUME_DISTID=OEL5
conCV_ASSUME_DISTID=OL7
.vi cv/admin/cvu_config
-
Dal
/tmp/archive
directory, decomprimere la patch DB 19.18 RU.unzip -q /tmp/archive/p34765931_190000_Linux-x86-64.zip -d /tmp/archive
-
Preparare il file rsp di installazione silenziosa del DB in
/tmp/archive/dbinstall.rsp
directory con i seguenti valori:oracle.install.option=INSTALL_DB_SWONLY UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/u01/app/oraInventory ORACLE_HOME=/u01/app/oracle/product/19.0.0/cdb3 ORACLE_BASE=/u01/app/oracle oracle.install.db.InstallEdition=EE oracle.install.db.OSDBA_GROUP=dba oracle.install.db.OSOPER_GROUP=oper oracle.install.db.OSBACKUPDBA_GROUP=oper oracle.install.db.OSDGDBA_GROUP=dba oracle.install.db.OSKMDBA_GROUP=dba oracle.install.db.OSRACDBA_GROUP=dba oracle.install.db.rootconfig.executeRootScript=false
-
Dalla home di cdb3 /u01/app/oracle/product/19.0.0/cdb3, eseguire l'installazione silenziosa del DB solo software.
./runInstaller -applyRU /tmp/archive/34765931/ -silent -ignorePrereqFailure -responseFile /tmp/archive/dbinstall.rsp
-
Come utente root, eseguire il comando
root.sh
script dopo l'installazione del solo software./u01/app/oracle/product/19.0.0/db1/root.sh
-
Come utente Oracle, crea il
dbca.rsp
file con le seguenti voci:gdbName=cdb3.demo.netapp.com sid=cdb3 createAsContainerDatabase=true numberOfPDBs=3 pdbName=cdb3_pdb useLocalUndoForPDBs=true pdbAdminPassword="yourPWD" templateName=General_Purpose.dbc sysPassword="yourPWD" systemPassword="yourPWD" dbsnmpPassword="yourPWD" datafileDestination=+DATA recoveryAreaDestination=+LOGS storageType=ASM diskGroupName=DATA characterSet=AL32UTF8 nationalCharacterSet=AL16UTF16 listeners=LISTENER databaseType=MULTIPURPOSE automaticMemoryManagement=false totalMemory=8192
-
Come utente Oracle, avvia la creazione del DB con dbca.
bin/dbca -silent -createDatabase -responseFile /tmp/archive/dbca.rsp
produzione:
Prepare for db operation 7% complete Registering database with Oracle Restart 11% complete Copying database files 33% complete Creating and starting Oracle instance 35% complete 38% complete 42% complete 45% complete 48% complete Completing Database Creation 53% complete 55% complete 56% complete Creating Pluggable Databases 60% complete 64% complete 69% complete 78% complete Executing Post Configuration Actions 100% complete Database creation complete. For details check the logfiles at: /u01/app/oracle/cfgtoollogs/dbca/cdb3. Database Information: Global Database Name:cdb3.vmc.netapp.com System Identifier(SID):cdb3 Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/cdb3/cdb3.log" for further details.
-
Ripetere le stesse procedure dal passaggio 2 per creare un database contenitore cdb4 in un ORACLE_HOME /u01/app/oracle/product/19.0.0/cdb4 separato con un singolo PDB.
-
Come utente Oracle, convalidare i servizi Oracle Restart HA dopo la creazione del DB affinché tutti i database (cdb3, cdb4) siano registrati con i servizi HA.
/u01/app/oracle/product/19.0.0/grid/crsctl stat res -t
produzione:
[oracle@ora_02 bin]$ ./crsctl stat res -t -------------------------------------------------------------------------------- Name Target State Server State details -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.DATA.dg ONLINE ONLINE ora_02 STABLE ora.LISTENER.lsnr ONLINE INTERMEDIATE ora_02 Not All Endpoints Re gistered,STABLE ora.LOGS.dg ONLINE ONLINE ora_02 STABLE ora.asm ONLINE ONLINE ora_02 Started,STABLE ora.ons OFFLINE OFFLINE ora_02 STABLE -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.cdb3.db 1 ONLINE ONLINE ora_02 Open,HOME=/u01/app/o racle/product/19.0.0 /cdb3,STABLE ora.cdb4.db 1 ONLINE ONLINE ora_02 Open,HOME=/u01/app/o racle/product/19.0.0 /cdb4,STABLE ora.cssd 1 ONLINE ONLINE ora_02 STABLE ora.diskmon 1 OFFLINE OFFLINE STABLE ora.driver.afd 1 ONLINE ONLINE ora_02 STABLE ora.evmd 1 ONLINE ONLINE ora_02 STABLE --------------------------------------------------------------------------------
-
Imposta l'utente Oracle
.bash_profile
.vi ~/.bash_profile
Aggiungere le seguenti voci:
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/db3 export ORACLE_SID=db3 export PATH=$PATH:$ORACLE_HOME/bin alias asm='export ORACLE_HOME=/u01/app/oracle/product/19.0.0/grid;export ORACLE_SID=+ASM;export PATH=$PATH:$ORACLE_HOME/bin' alias cdb3='export ORACLE_HOME=/u01/app/oracle/product/19.0.0/cdb3;export ORACLE_SID=cdb3;export PATH=$PATH:$ORACLE_HOME/bin' alias cdb4='export ORACLE_HOME=/u01/app/oracle/product/19.0.0/cdb4;export ORACLE_SID=cdb4;export PATH=$PATH:$ORACLE_HOME/bin'
-
Convalida il CDB/PDB creato per cdb3.
cdb3
[oracle@ora_02 ~]$ sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Mon Oct 9 08:19:20 2023 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 from v$database; NAME OPEN_MODE --------- -------------------- CDB3 READ WRITE SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 CDB3_PDB1 READ WRITE NO 4 CDB3_PDB2 READ WRITE NO 5 CDB3_PDB3 READ WRITE NO SQL> SQL> select name from v$datafile; NAME -------------------------------------------------------------------------------- +DATA/CDB3/DATAFILE/system.257.1149420273 +DATA/CDB3/DATAFILE/sysaux.258.1149420317 +DATA/CDB3/DATAFILE/undotbs1.259.1149420343 +DATA/CDB3/86B637B62FE07A65E053F706E80A27CA/DATAFILE/system.266.1149421085 +DATA/CDB3/86B637B62FE07A65E053F706E80A27CA/DATAFILE/sysaux.267.1149421085 +DATA/CDB3/DATAFILE/users.260.1149420343 +DATA/CDB3/86B637B62FE07A65E053F706E80A27CA/DATAFILE/undotbs1.268.1149421085 +DATA/CDB3/06FB206DF15ADEE8E065025056B66295/DATAFILE/system.272.1149422017 +DATA/CDB3/06FB206DF15ADEE8E065025056B66295/DATAFILE/sysaux.273.1149422017 +DATA/CDB3/06FB206DF15ADEE8E065025056B66295/DATAFILE/undotbs1.271.1149422017 +DATA/CDB3/06FB206DF15ADEE8E065025056B66295/DATAFILE/users.275.1149422033 NAME -------------------------------------------------------------------------------- +DATA/CDB3/06FB21766256DF9AE065025056B66295/DATAFILE/system.277.1149422033 +DATA/CDB3/06FB21766256DF9AE065025056B66295/DATAFILE/sysaux.278.1149422033 +DATA/CDB3/06FB21766256DF9AE065025056B66295/DATAFILE/undotbs1.276.1149422033 +DATA/CDB3/06FB21766256DF9AE065025056B66295/DATAFILE/users.280.1149422049 +DATA/CDB3/06FB22629AC1DFD7E065025056B66295/DATAFILE/system.282.1149422049 +DATA/CDB3/06FB22629AC1DFD7E065025056B66295/DATAFILE/sysaux.283.1149422049 +DATA/CDB3/06FB22629AC1DFD7E065025056B66295/DATAFILE/undotbs1.281.1149422049 +DATA/CDB3/06FB22629AC1DFD7E065025056B66295/DATAFILE/users.285.1149422063 19 rows selected. SQL>
-
Convalida il CDB/PDB creato per cdb4.
cdb4
[oracle@ora_02 ~]$ sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Mon Oct 9 08:20:26 2023 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 from v$database; NAME OPEN_MODE --------- -------------------- CDB4 READ WRITE SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 CDB4_PDB READ WRITE NO SQL> SQL> select name from v$datafile; NAME -------------------------------------------------------------------------------- +DATA/CDB4/DATAFILE/system.286.1149424943 +DATA/CDB4/DATAFILE/sysaux.287.1149424989 +DATA/CDB4/DATAFILE/undotbs1.288.1149425015 +DATA/CDB4/86B637B62FE07A65E053F706E80A27CA/DATAFILE/system.295.1149425765 +DATA/CDB4/86B637B62FE07A65E053F706E80A27CA/DATAFILE/sysaux.296.1149425765 +DATA/CDB4/DATAFILE/users.289.1149425015 +DATA/CDB4/86B637B62FE07A65E053F706E80A27CA/DATAFILE/undotbs1.297.1149425765 +DATA/CDB4/06FC3070D5E12C23E065025056B66295/DATAFILE/system.301.1149426581 +DATA/CDB4/06FC3070D5E12C23E065025056B66295/DATAFILE/sysaux.302.1149426581 +DATA/CDB4/06FC3070D5E12C23E065025056B66295/DATAFILE/undotbs1.300.1149426581 +DATA/CDB4/06FC3070D5E12C23E065025056B66295/DATAFILE/users.304.1149426597 11 rows selected.
-
Accedere a ciascun cdb come sysdba con sqlplus e impostare la dimensione della destinazione di ripristino del DB sulla dimensione del gruppo di dischi +LOGS per entrambi i cdb.
alter system set db_recovery_file_dest_size = 40G scope=both;
-
Accedere a ciascun cdb come sysdba con sqlplus e abilitare la modalità di registro di archivio con i seguenti comandi impostati in sequenza.
sqlplus /as sysdba
shutdown immediate;
startup mount;
alter database archivelog;
alter database open;
Questo completa la distribuzione di Oracle 19c versione 19.18 Restart su uno storage Amazon FSx ONTAP e una VM VMC DB. Se lo si desidera, NetApp consiglia di spostare il file di controllo Oracle e i file di registro online nel gruppo di dischi +LOGS.
Backup, ripristino e clonazione di Oracle con SnapCenter
Configurazione SnapCenter
Details
SnapCenter si basa su un plug-in lato host sulla macchina virtuale del database per eseguire attività di gestione della protezione dei dati basate sulle applicazioni. Per informazioni dettagliate sul plugin NetApp SnapCenter per Oracle, fare riferimento a questa documentazione"Cosa puoi fare con il plug-in per Oracle Database" . Di seguito sono riportati i passaggi principali per configurare SnapCenter per il backup, il ripristino e la clonazione del database Oracle.
-
Scarica l'ultima versione del SnapCenter software dal sito di supporto NetApp :"Download del supporto NetApp" .
-
Come amministratore, installa l'ultimo Java JDK da"Ottieni Java per le applicazioni desktop" sull'host Windows del server SnapCenter .
Se il server Windows è distribuito in un ambiente di dominio, aggiungere un utente di dominio al gruppo di amministratori locali del server SnapCenter ed eseguire l'installazione SnapCenter con l'utente di dominio. -
Accedi all'interfaccia utente SnapCenter tramite la porta HTTPS 8846 come utente di installazione per configurare SnapCenter per Oracle.
-
Aggiornamento
Hypervisor Settings
in contesti globali. -
Creare policy di backup del database Oracle. L'ideale sarebbe creare una policy di backup separata per i registri di archivio, per consentire intervalli di backup più frequenti e ridurre al minimo la perdita di dati in caso di errore.
-
Aggiungi server di database
Credential
per l'accesso SnapCenter alla VM DB. Le credenziali devono avere privilegi sudo su una macchina virtuale Linux o privilegi di amministratore su una macchina virtuale Windows. -
Aggiungere il cluster di archiviazione FSx ONTAP a
Storage Systems
con IP di gestione del cluster e autenticato tramite ID utente fsxadmin. -
Aggiungere la VM del database Oracle in VMC a
Hosts
con le credenziali del server create nel passaggio 6 precedente.
|
Assicurarsi che il nome del server SnapCenter possa essere risolto nell'indirizzo IP della VM DB e che il nome della VM DB possa essere risolto nell'indirizzo IP del server SnapCenter . |
Backup del database
Details
SnapCenter sfrutta lo snapshot del volume FSx ONTAP per un backup, un ripristino o una clonazione del database molto più rapidi rispetto alla metodologia tradizionale basata su RMAN. Gli snapshot sono coerenti con l'applicazione poiché il database viene messo in modalità di backup Oracle prima di uno snapshot.
-
Dal
Resources
scheda, tutti i database sulla VM vengono rilevati automaticamente dopo che la VM è stata aggiunta a SnapCenter. Inizialmente, lo stato del database viene visualizzato comeNot protected
. -
Creare un gruppo di risorse per eseguire il backup del database in un raggruppamento logico, ad esempio per DB VM ecc. In questo esempio, abbiamo creato un gruppo ora_02_data per eseguire un backup completo del database online per tutti i database sulla VM ora_02. Il gruppo di risorse ora_02_log esegue il backup dei log archiviati solo sulla VM. La creazione di un gruppo di risorse definisce anche una pianificazione per l'esecuzione del backup.
-
Il backup del gruppo di risorse può anche essere attivato manualmente facendo clic su
Back up Now
ed eseguendo il backup con la policy definita nel gruppo di risorse. -
Il processo di backup può essere monitorato al
Monitor
scheda cliccando sul lavoro in esecuzione. -
Dopo un backup riuscito, lo stato del database mostra lo stato del processo e l'ora del backup più recente.
-
Fare clic sul database per esaminare i set di backup per ciascun database.
Recupero del database
Details
SnapCenter offre numerose opzioni di ripristino e recupero per i database Oracle dal backup snapshot. In questo esempio, mostriamo un ripristino puntuale per recuperare una tabella eliminata per errore. Sulla VM ora_02, due database cdb3 e cdb4 condividono gli stessi gruppi di dischi +DATA e +LOGS. Il ripristino di un database non influisce sulla disponibilità dell'altro database.
-
Per prima cosa, crea una tabella di prova e inserisci una riga nella tabella per convalidare un ripristino puntuale.
[oracle@ora_02 ~]$ sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Fri Oct 6 14:15:21 2023 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 from v$database; NAME OPEN_MODE --------- -------------------- CDB3 READ WRITE SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 CDB3_PDB1 READ WRITE NO 4 CDB3_PDB2 READ WRITE NO 5 CDB3_PDB3 READ WRITE NO SQL> SQL> alter session set container=cdb3_pdb1; Session altered. SQL> create table test (id integer, dt timestamp, event varchar(100)); Table created. SQL> insert into test values(1, sysdate, 'test oracle recovery on guest mounted fsx storage to VMC guest vm ora_02'); 1 row created. SQL> commit; Commit complete. SQL> select * from test; ID ---------- DT --------------------------------------------------------------------------- EVENT -------------------------------------------------------------------------------- 1 06-OCT-23 03.18.24.000000 PM test oracle recovery on guest mounted fsx storage to VMC guest vm ora_02 SQL> select current_timestamp from dual; CURRENT_TIMESTAMP --------------------------------------------------------------------------- 06-OCT-23 03.18.53.996678 PM -07:00
-
Eseguiamo un backup manuale degli snapshot da SnapCenter. Poi lascia cadere il tavolo.
SQL> drop table test; Table dropped. SQL> commit; Commit complete. SQL> select current_timestamp from dual; CURRENT_TIMESTAMP --------------------------------------------------------------------------- 06-OCT-23 03.26.30.169456 PM -07:00 SQL> select * from test; select * from test * ERROR at line 1: ORA-00942: table or view does not exist
-
Dal set di backup creato nell'ultimo passaggio, prendere nota del numero SCN del backup del log. Clicca su
Restore
per avviare il flusso di lavoro di ripristino-recupero. -
Selezionare l'ambito di ripristino.
-
Selezionare l'ambito di ripristino fino al registro SCN dall'ultimo backup completo del database.
-
Specificare eventuali pre-script facoltativi da eseguire.
-
Specificare eventuali script successivi facoltativi da eseguire.
-
Se lo desideri, invia un rapporto sul lavoro.
-
Rivedi il riepilogo e clicca su
Finish
per avviare il restauro e il recupero. -
Dal controllo della griglia di riavvio di Oracle, osserviamo che mentre cdb3 è in fase di ripristino e recupero, cdb4 è online e disponibile.
-
Da
Monitor
scheda, apri il lavoro per rivedere i dettagli. -
Da DB VM ora_02, convalidare che la tabella eliminata venga recuperata dopo un ripristino riuscito.
[oracle@ora_02 bin]$ sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Fri Oct 6 17:01:28 2023 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 from v$database; NAME OPEN_MODE --------- -------------------- CDB3 READ WRITE SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 CDB3_PDB1 READ WRITE NO 4 CDB3_PDB2 READ WRITE NO 5 CDB3_PDB3 READ WRITE NO SQL> alter session set container=CDB3_PDB1; Session altered. SQL> select * from test; ID ---------- DT --------------------------------------------------------------------------- EVENT -------------------------------------------------------------------------------- 1 06-OCT-23 03.18.24.000000 PM test oracle recovery on guest mounted fsx storage to VMC guest vm ora_02 SQL> select current_timestamp from dual; CURRENT_TIMESTAMP --------------------------------------------------------------------------- 06-OCT-23 05.02.20.382702 PM -07:00 SQL>
Clonazione del database
Details
In questo esempio, gli stessi set di backup vengono utilizzati per clonare un database sulla stessa VM in un ORACLE_HOME diverso. Le procedure sono ugualmente applicabili per clonare un database dal backup a una VM separata in VMC, se necessario.
-
Aprire l'elenco di backup del database cdb3. Da un backup dei dati di tua scelta, clicca su
Clone
pulsante per avviare il flusso di lavoro di clonazione del database. -
Assegnare un nome al SID del database clone.
-
Selezionare una VM in VMC come host del database di destinazione. Sull'host avrebbe dovuto essere installata e configurata una versione identica di Oracle.
-
Selezionare l'ORACLE_HOME, l'utente e il gruppo corretti sull'host di destinazione. Mantieni le credenziali predefinite.
-
Modificare i parametri del database clone per soddisfare i requisiti di configurazione o di risorse del database clone.
-
Scegli l'ambito di ripristino.
Until Cancel
recupera il clone fino all'ultimo file di registro disponibile nel set di backup. -
Rivedi il riepilogo e avvia il processo di clonazione.
-
Monitorare l'esecuzione del lavoro di clonazione da
Monitor
scheda. -
Il database clonato viene immediatamente registrato in SnapCenter.
-
Da DB VM ora_02, il database clonato viene registrato anche in Oracle Restart Grid Control e la tabella di test eliminata viene recuperata nel database clonato cdb3tst come mostrato di seguito.
[oracle@ora_02 ~]$ /u01/app/oracle/product/19.0.0/grid/bin/crsctl stat res -t -------------------------------------------------------------------------------- Name Target State Server State details -------------------------------------------------------------------------------- Local Resources -------------------------------------------------------------------------------- ora.DATA.dg ONLINE ONLINE ora_02 STABLE ora.LISTENER.lsnr ONLINE INTERMEDIATE ora_02 Not All Endpoints Re gistered,STABLE ora.LOGS.dg ONLINE ONLINE ora_02 STABLE ora.SC_2090922_CDB3TST.dg ONLINE ONLINE ora_02 STABLE ora.asm ONLINE ONLINE ora_02 Started,STABLE ora.ons OFFLINE OFFLINE ora_02 STABLE -------------------------------------------------------------------------------- Cluster Resources -------------------------------------------------------------------------------- ora.cdb3.db 1 ONLINE ONLINE ora_02 Open,HOME=/u01/app/o racle/product/19.0.0 /cdb3,STABLE ora.cdb3tst.db 1 ONLINE ONLINE ora_02 Open,HOME=/u01/app/o racle/product/19.0.0 /cdb4,STABLE ora.cdb4.db 1 ONLINE ONLINE ora_02 Open,HOME=/u01/app/o racle/product/19.0.0 /cdb4,STABLE ora.cssd 1 ONLINE ONLINE ora_02 STABLE ora.diskmon 1 OFFLINE OFFLINE STABLE ora.driver.afd 1 ONLINE ONLINE ora_02 STABLE ora.evmd 1 ONLINE ONLINE ora_02 STABLE -------------------------------------------------------------------------------- [oracle@ora_02 ~]$ export ORACLE_HOME=/u01/app/oracle/product/19.0.0/cdb4 [oracle@ora_02 ~]$ export ORACLE_SID=cdb3tst [oracle@ora_02 ~]$ sqlplus / as sysdba SQL*Plus: Release 19.0.0.0.0 - Production on Sat Oct 7 08:04:51 2023 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 from v$database; NAME OPEN_MODE --------- -------------------- CDB3TST READ WRITE SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED READ ONLY NO 3 CDB3_PDB1 READ WRITE NO 4 CDB3_PDB2 READ WRITE NO 5 CDB3_PDB3 READ WRITE NO SQL> alter session set container=CDB3_PDB1; Session altered. SQL> select * from test; ID ---------- DT --------------------------------------------------------------------------- EVENT -------------------------------------------------------------------------------- 1 06-OCT-23 03.18.24.000000 PM test oracle recovery on guest mounted fsx storage to VMC guest vm ora_02 SQL>
Questo completa la dimostrazione del backup, del ripristino e della clonazione di SnapCenter del database Oracle in VMC SDDC su AWS.
Dove trovare ulteriori informazioni
Per saperne di più sulle informazioni descritte nel presente documento, consultare i seguenti documenti e/o siti web:
-
Documentazione di VMware Cloud su AWS
-
Installazione di Oracle Grid Infrastructure per un server autonomo con una nuova installazione del database
-
Installazione e configurazione del database Oracle tramite file di risposta
-
Amazon FSx ONTAP