Oracle Database Appliance (ODA): ODABR un utilitario para Backup / Restore de sistema

Por Y V Ravi Kumar , Pinto Das, Julio César Ayapán
Publicado en Diciembre 2019

Revisado por Junior Palomino

Introducción:

Parte del trabajo de un DBA consiste en tener procedimientos para realizar backups y restauraciones de una base de datos, cuando hablamos de una base de datos dentro de un ambiente ODA (Oracle Database Appliance), ya no es suficiente solo respaldar la base de datos sino debemos considerar todo el entorno en el que reside.

ODAB es un utilitario que vino a cubrir esta necesidad, proveyendo a los usuarios con la habilidad de crear un backup consistente de todo un nodo de sistema ODA con un solo comando, además:

  • La consistencia del backup es garantizada por la característica Linux LVN Snapshot.
  • El backup incremental es manejado automáticamente usando las características rsync de ODA.

ODABR utiliza la característica Linux LVM (Logical Volume Manager) Snapshot. Un LVM Snapshot es una copia consistente de un volumen lógico en un punto en el tiempo con todos los datos pertenecientes al volumen lógico original. Gracias a esta característica se pueden aprovechar las siguientes ventajas:

  • La creación del snapshot es instantánea, por lo que no hay necesidad de detener un ambiente productivo.
  • El snapshot es eficiente en cuanto a espacio utilizado, solo utiliza la diferencia entre los dos volúmenes lógicos acompañado de un rastreo de cambios entre el volumen lógico original y la copia resguardada.

Backup de sistema de un nodo ODA:

El backup de Sistema de un nodo ODA respalda:

  • El Sistema de archivos root (/)
  • La partición primaria (/boot)
  • El sistema de archivos opt: OAK/DCS, TFA, OWG, ASR (/opt)
  • El sistema de archivos u01: binarios de Grid Infrastructure y RDBMS
  • Archivo OCR de Grid Infrastructure

Nota: Para más detalles por favor consultar el Doc ID 2466177.1.

A continuación, vamos a manipular un ambiente ODA x7-2-HA para mostrar el comportamiento de la utilidad ODABR.

Detalles del ambiente:

[root@Node1b odabr]# sudo /opt/oracle/dcs/bin/odacli describe-component

System Version
--------------------
18.5.0.0.0

System node Name
-------------------------
Node1a

Local System Version
----------------------------
18.5.0.0.0

Component                                  Installed Version      Available Version
----------------------------------------   --------------------   --------------------
OAK                                         18.5.0.0.0              up-to-date
GI                                          18.5.0.0.190115         up-to-date
DB                                          12.1.0.2.190115         up-to-date
DCSAGENT                                    18.5.0.0.0              up-to-date
ILOM                                        4.0.4.21.r126801        up-to-date
BIOS                                        41040100                up-to-date
OS                                          6.10                    up-to-date
FIRMWARECONTROLLER                  13.00.00.00             up-to-date
FIRMWAREEXPANDER                             0309                 0306
FIRMWAREDISK {
[ c0d0,c0d1 ]                               0121                    0112
[ c1d0,c1d1,c1d2,c1d3,c1d4,c1d5,c1d6,        A170                    a122
c1d7,c1d8,c1d9,c1d10,c1d11,c1d12,c1d13,
c1d14,c1d15,c1d16,c1d17,c1d18,c1d19,
c1d20,c1d21,c1d22,c1d23,c2d0,c2d1,c2d2,
c2d3,c2d4,c2d5,c2d6,c2d7,c2d8,c2d9,
c2d10,c2d11,c2d12,c2d13,c2d14,c2d15,
c2d16,c2d17,c2d18,c2d19,c2d20,c2d21,
c2d22,c2d23 ]
}

System node Name
-------------------------
Node1b

Local System Version
----------------------------
18.5.0.0.0

Component                                  Installed Version      Available Version
----------------------------------------   ----------------------- -----------------------
OAK                                         18.5.0.0.0              up-to-date
GI                                          18.5.0.0.190115         up-to-date
DB                                          12.1.0.2.190115         up-to-date
DCSAGENT                                    18.5.0.0.0              up-to-date
ILOM                                        4.0.4.21.r126801        up-to-date
BIOS                                        41040100                up-to-date
OS                                          6.10                    up-to-date
FIRMWARECONTROLLER                  13.00.00.00             up-to-date
FIRMWAREEXPANDER                      0309                    0306
FIRMWAREDISK {
[ c0d0,c0d1 ]                               0121                    0112
[ c1d0,c1d1,c1d2,c1d3,c1d4,c1d5,c1d6,        A170                  a122
c1d7,c1d8,c1d9,c1d10,c1d11,c1d12,c1d13,
c1d14,c1d15,c1d16,c1d17,c1d18,c1d19,
c1d20,c1d21,c1d22,c1d23,c2d0,c2d1,c2d2,
c2d3,c2d4,c2d5,c2d6,c2d7,c2d8,c2d9,
c2d10,c2d11,c2d12,c2d13,c2d14,c2d15,
c2d16,c2d17,c2d18,c2d19,c2d20,c2d21,
c2d22,c2d23 ]
}
[root@Node1b odabr]#

Pasos para instalación y uso del utilitario ODABR:

Descargue el ultimo rpm disponible en Doc ID 2466177.1 e instálelo en ambos nodos.

[root@p2a tmp]# rpm -Uvh odabr-2.0.1-47.noarch.rpm
warning: odabr-2.0.1-47.noarch.rpm: Header V4 RSA/SHA1 Signature, key ID e7004b4d: NOKEY
Preparing...                ########################################### [100%]
   1:odabr                  ########################################### [100%]
ODABR has been installed on /opt/odabr succesfully!

Desinstalación de ODABR:

root@p2a tmp]# rpm -e odabr-2.0.1-47.noarch.rpm

Opciones disponibles con ODABR:

img1-5888344

Desplegar los detalles de cualquier backup disponible en Node1a:

[root@Node1a odabr]# ./odabr infosnap
----------------------------------------------------------------------------
odabr - ODA node Backup Restore
Author: Ruggero Citton <ruggero.citton@oracle.com>
RAC Pack, Cloud Innovation and Solution Engineering Team
Version: 2.0.1-47
----------------------------------------------------------------------------
LVM snap name             Status               COW Size                Data%
-------------            ------             ----------              -----
WARNING: 2019-10-01 11:00:39: LVM snapshot for 'root' does not exist
WARNING: 2019-10-01 11:00:39: LVM snapshot for 'opt' does not exist
WARNING: 2019-10-01 11:00:39: LVM snapshot for 'u01' does not exist
[root@Node1a odabr]#

Hasta ahora, no existen backups almacenados por lo que procederemos a crear uno desde cero.  
  </ruggero.citton@oracle.com>

Hasta ahora, no existen backups almacenados por lo que procederemos a crear uno desde cero.

Iniciamos sesión con usuario ‘root’ y creamos el directorio para que ODABR almacene los backups del nodo Node1a:

[root@Node1a ~]# cd /u01/app/oracle/admin/backup2
[root@Node1a backup2]# mkdir odabr_Node1a

Con el mismo usuario ‘root’ ejecutamos el comando backup -snap del utilitario ODABR en el nodo Node1a:

[root@Node1a ~]# cd /opt/odabr/

[root@Node1a odabr]# ./odabr backup -snap -destination /u01/app/oracle/admin/backup2/odabr_Node1a

INFO: 2019-10-01 12:33:22: Please check the logfile '/opt/odabr/out/log/odabr_71574.log' 
for more details
-----------------------------------------------------------------------------------------
odabr - ODA node Backup Restore
Author: Ruggero Citton <ruggero.citton@oracle.com>
RAC Pack, Cloud Innovation and Solution Engineering Team
Copyright Oracle, Inc. 2013, 2019
Version: 2.0.1-47
------------------------------------------------------------------------------------------
INFO: 2019-10-01 12:33:22: Checking superuser
INFO: 2019-10-01 12:33:22: Checking Bare Metal
INFO: 2019-10-01 12:33:22: Making a snapshot and rsync backup
INFO: 2019-10-01 12:33:22: Local destination is '/u01/app/oracle/admin/backup2/odabr_Node1a'

************************
 ODA System Node backup
************************
choose the filesystem to backup:
  0. All following filesystems
  1. /boot filesystem
  2. /     filesystem
  3. /opt  filesystem
  4. /u01  filesystem
  5. exit

Enter your choice: 0
INFO: 2019-10-01 12:33:24: Checking LVM size
INFO: 2019-10-01 12:33:24: Checking 'boot' device size
INFO: 2019-10-01 12:33:24: Checking 'root' device size
INFO: 2019-10-01 12:33:24: Checking 'opt' device size
INFO: 2019-10-01 12:33:24: Checking 'u01' device size
INFO: 2019-10-01 12:33:24: Destination needs 71 Gb free
INFO: 2019-10-01 12:33:24: Making boot device backup
INFO: 2019-10-01 12:33:24: ...getting boot device
INFO: 2019-10-01 12:33:24: ...making boot device backup
INFO: 2019-10-01 12:33:29: ...boot device backup saved as '/opt/odabr/out/hbi/boot.img'
INFO: 2019-10-01 12:33:29: Getting EFI device
INFO: 2019-10-01 12:33:29: ...making efi device backup
INFO: 2019-10-01 12:33:34: EFI device backup saved as '/opt/odabr/out/hbi/efi.img'
INFO: 2019-10-01 12:33:34: Making OCR backup
INFO: 2019-10-01 12:33:36: ...ocr backup saved as '/opt/odabr/out/hbi/ocrbackup_71574.bck'
INFO: 2019-10-01 12:33:36: Making LVM snapshot backup
SUCCESS: 2019-10-01 12:33:37: ...snapshot backup for 'opt' created successfully
SUCCESS: 2019-10-01 12:33:37: ...snapshot backup for 'u01' created successfully
SUCCESS: 2019-10-01 12:33:37: ...snapshot backup for 'root' created successfully
SUCCESS: 2019-10-01 12:33:37: LVM snapshots backup done successfully
INFO: 2019-10-01 12:33:37: Set backup location for '/opt'
SUCCESS: 2019-10-01 12:33:37: backup location for '/opt' done successfully
INFO: 2019-10-01 12:33:37: Set backup location for '/u01'
SUCCESS: 2019-10-01 12:33:37: backup location for '/u01' done successfully
INFO: 2019-10-01 12:33:37: Set backup location for 'root'
SUCCESS: 2019-10-01 12:33:37: backup location for 'root' done successfully
INFO: 2019-10-01 12:33:37: Making rsync boot backup, this may take a while
INFO: 2019-10-01 12:33:37: ...rsync log file at '/opt/odabr/out/log/rsync_71574.log'
SUCCESS: 2019-10-01 12:33:39: /boot filesystem backup done successfully
INFO: 2019-10-01 12:33:39: Making rsync opt backup, this may take a while
INFO: 2019-10-01 12:33:39: ...rsync log file at '/opt/odabr/out/log/rsync_71574.log'
SUCCESS: 2019-10-01 13:01:39: /opt filesystem backup done successfully
INFO: 2019-10-01 13:01:39: Making rsync u01 backup, this may take a while
INFO: 2019-10-01 13:01:39: ...rsync log file at '/opt/odabr/out/log/rsync_71574.log'
SUCCESS: 2019-10-01 13:47:29: /u01 filesystem backup done successfully
INFO: 2019-10-01 13:47:29: Making rsync root backup, this may take a while
INFO: 2019-10-01 13:47:29: ...rsync log file at '/opt/odabr/out/log/rsync_71574.log'
SUCCESS: 2019-10-01 14:01:45: root filesystem backup done successfully
SUCCESS: 2019-10-01 14:01:45: Filesystems backup done successfully

************************
 ODA System Node backup
************************
choose the filesystem to backup:
  0. All following filesystems
  1. /boot filesystem
  2. /     filesystem
  3. /opt  filesystem
  4. /u01  filesystem
  5. exit

Enter your choice: 5

[root@Node1a odabr]#
  </ruggero.citton@oracle.com>

Nuevamente, desplegamos detalles de cualquier backup disponible en el nodo Node1a:

[root@Node1a odabr]# ./odabr infosnap
-----------------------------------------------------------------------------
odabr - ODA node Backup Restore
Author: Ruggero Citton <ruggero.citton@oracle.com>
RAC Pack, Cloud Innovation and Solution Engineering Team
Copyright Oracle, Inc. 2013, 2019
Version: 2.0.1-47
-----------------------------------------------------------------------------
LVM snap name           Status                  COW Size                Data%
-------------           ----------              ----------              ------
root_snap               active                  30.00 GiB               0.30%
opt_snap                active                  60.00 GiB               0.49%
u01_snap                active                  100.00 GiB              0.21%
[root@Node1a odabr]#
  </ruggero.citton@oracle.com>

Podemos observar el detalle de backups tomados, tamaño y estado actual.

Ahora, desde el segundo nodo, iniciamos sesión con el usuario ‘root’ y creamos el directorio para que ODABR almacene los backups del nodo Node1b:

[root@Node1b ~]# cd /u01/app/oracle/admin/backup2
[root@Node1b backup2]# mkdir odabr_Node1b

Desplegamos detalles de cualquier backup disponible en el nodo Node1b:

[root@Node1b odabr]# ./odabr infosnap
----------------------------------------------------------------------------
odabr - ODA node Backup Restore
Author: Ruggero Citton <ruggero.citton@oracle.com>
RAC Pack, Cloud Innovation and Solution Engineering Team
Copyright Oracle, Inc. 2013, 2019
Version: 2.0.1-47
----------------------------------------------------------------------------
LVM snap name           Status                  COW Size                Data%
-------------           ----------              ----------              -----
WARNING: 2019-10-01 11:00:39: LVM snapshot for 'root' does not exist
WARNING: 2019-10-01 11:00:39: LVM snapshot for 'opt' does not exist
WARNING: 2019-10-01 11:00:39: LVM snapshot for 'u01' does not exist
[root@Node1b odabr]#  
  </ruggero.citton@oracle.com>

Ejecutamos el backup mediante el utilitario ODABR en Node1b:

[root@Node1b ~]# cd /opt/odabr/

[root@Node1b odabr]# ./odabr backup -snap -destination 
/u01/app/oracle/admin/backup2/odabr_Node1b

INFO: 2019-10-01 14:04:00: Please check the logfile '/opt/odabr/out/log/odabr_55286.log' 
for more details
-------------------------------------------------------------------------
odabr – ODA node Backup Restore
Author: Ruggero Citton <ruggero.citton@oracle.com>
RAC Pack, Cloud Innovation and Solution Engineering Team
Version: 2.0.1-47
-----------------------------------------------------------------------------
INFO: 2019-10-01 14:04:00: Checking superuser
INFO: 2019-10-01 14:04:00: Checking Bare Metal
INFO: 2019-10-01 14:04:00: Making a snapshot and rsync backup
INFO: 2019-10-01 14:04:00: Local destination is '/u01/app/oracle/admin/backup2/odabr_Node1b'

************************
 ODA System Node backup
************************
choose the filesystem to backup:
  0. All following filesystems
  1. /boot filesystem
  2. /     filesystem
  3. /opt  filesystem
  4. /u01  filesystem
  5. exit

Enter your choice: 0
INFO: 2019-10-01 14:04:02: Checking LVM size
INFO: 2019-10-01 14:04:02: Checking 'boot' device size
INFO: 2019-10-01 14:04:02: Checking 'root' device size
INFO: 2019-10-01 14:04:02: Checking 'opt' device size
INFO: 2019-10-01 14:04:02: Checking 'u01' device size
INFO: 2019-10-01 14:04:02: Destination needs 53 Gb free
INFO: 2019-10-01 14:04:02: Making boot device backup
INFO: 2019-10-01 14:04:02: ...getting boot device
INFO: 2019-10-01 14:04:02: ...making boot device backup
INFO: 2019-10-01 14:04:06: ...boot device backup saved as '/opt/odabr/out/hbi/boot.img'
INFO: 2019-10-01 14:04:06: Getting EFI device
INFO: 2019-10-01 14:04:06: ...making efi device backup
INFO: 2019-10-01 14:04:11: EFI device backup saved as '/opt/odabr/out/hbi/efi.img'
INFO: 2019-10-01 14:04:11: Making OCR backup
INFO: 2019-10-01 14:04:15: ...ocr backup saved as '/opt/odabr/out/hbi/ocrbackup_55286.bck'
INFO: 2019-10-01 14:04:15: Making LVM snapshot backup
SUCCESS: 2019-10-01 14:04:15: ...snapshot backup for 'opt' created successfully
SUCCESS: 2019-10-01 14:04:15: ...snapshot backup for 'u01' created successfully
SUCCESS: 2019-10-01 14:04:15: ...snapshot backup for 'root' created successfully
SUCCESS: 2019-10-01 14:04:15: LVM snapshots backup done successfully
INFO: 2019-10-01 14:04:15: Set backup location for '/opt'
SUCCESS: 2019-10-01 14:04:15: backup location for '/opt' done successfully
INFO: 2019-10-01 14:04:15: Set backup location for '/u01'
SUCCESS: 2019-10-01 14:04:15: backup location for '/u01' done successfully
INFO: 2019-10-01 14:04:15: Set backup location for 'root'
SUCCESS: 2019-10-01 14:04:15: backup location for 'root' done successfully
INFO: 2019-10-01 14:04:15: Making rsync boot backup, this may take a while
INFO: 2019-10-01 14:04:15: ...rsync log file at '/opt/odabr/out/log/rsync_55286.log'
SUCCESS: 2019-10-01 14:04:17: /boot filesystem backup done successfully
INFO: 2019-10-01 14:04:17: Making rsync opt backup, this may take a while
INFO: 2019-10-01 14:04:17: ...rsync log file at '/opt/odabr/out/log/rsync_55286.log'
SUCCESS: 2019-10-01 14:29:12: /opt filesystem backup done successfully
INFO: 2019-10-01 14:29:12: Making rsync u01 backup, this may take a while
INFO: 2019-10-01 14:29:12: ...rsync log file at '/opt/odabr/out/log/rsync_55286.log'
SUCCESS: 2019-10-01 14:58:49: /u01 filesystem backup done successfully
INFO: 2019-10-01 14:58:49: Making rsync root backup, this may take a while
INFO: 2019-10-01 14:58:49: ...rsync log file at '/opt/odabr/out/log/rsync_55286.log'
SUCCESS: 2019-10-01 15:11:17: root filesystem backup done successfully
SUCCESS: 2019-10-01 15:11:17: Filesystems backup done successfully

************************
 ODA System Node backup
************************
choose the filesystem to backup:
  0. All following filesystems
  1. /boot filesystem
  2. /     filesystem
  3. /opt  filesystem
  4. /u01  filesystem
  5. exit

Enter your choice: 5
[root@Node1b odabr]#
  </ruggero.citton@oracle.com>

Desplegamos detalles de cualquier backup existente en el nodo Node1b:

[root@Node1b odabr]# ./odabr infosnap
-----------------------------------------------------------------------------
odabr - ODA node Backup Restore
Author: Ruggero Citton <ruggero.citton@oracle.com>
RAC Pack, Cloud Innovation and Solution Engineering Team
Version: 2.0.1-47
-----------------------------------------------------------------------------
LVM snap name           Status                  COW Size                Data%
---------------------  ----------              ----------              ------
root_snap               active                  30.00 GiB               0.24%
opt_snap                active                  60.00 GiB               0.56%
u01_snap                active                  100.00 GiB              0.19%
[root@Node1b odabr]#  
  </ruggero.citton@oracle.com>

Resumen:

ODABR es una util herramienta diseñada para backups de sistema operativo y sistemas de archivos, a pesar de sus ventajas debemos tener en cuenta las siguientes limitaciones:

  • ODABR no debe ser utilizada para realizar respaldos de una base de datos o el contenido de una instancia ASM (Automatic Storage Management).
  • ODABR no debe ser utilizada como una herramienta para realizar un downgrade de Grid Infrastructure.
  • ODABR existe solo a nivel de appliance ODA.

YV Ravi Kumar  es un Oracle ACE Director y Oracle Certified Master (OCM) con 20 años de experiencia en Banca, Servicios financieros y seguros (BFSI) y ha ocupado varios puestos como Vise Presidente (IT), Senior Database Architect y Production DBA. Tambien es OCP en Oracle 8i, 9i, 10g, 11g y 12c y posee certificaciones en Golden Gate, RAC, Performance Tuning y Oracle Exadata. Ha publicado mas de 100 articulos para OTN-Español, OTN-Portugues, OTN-Ingles, TOAD World, UKOUG, OTech Magazine y Redgate. Ha sido speaker en @OOW, @NYOUG, @OTN, @AIOUG, Samgam y @IOUG. Diseñó, arquitectó e implementó la Base de Datos del Sistema Bancario Central (CBS) para los Bancos Centrales de dos países: India y Mahe, Seychelles. Es cofundador de OraWorld (www.oraworld.com). Aprenda mas sobre su perfil en LaseSoft.

Julio Ayapán es Ingeniero en Ciencias y Sistemas, Administrador de base de datos Oracle con más de 4 años de experiencia en proyectos de infraestructura, Bases de Datos Oracle 10g, 11g y 12c sobre Linux y Solaris. Posee la certificación “Oracle Certified Professional 11g y 12c” y Oracle ACE Associate. Ha sido Conferencista en OTN Tour Latinoamericano 2016 y 2017 en Guatemala. Es parte de la junta directiva del Grupo de Usuarios Oracle de Guatemala (GOUG). Actualmente es Consultor de Bases de datos Oracle en eProseed Central America. Publica artículos frecuentemente en su blog http://oraclehomegt.blogspot.com. Twitter @jayapangt.

Este artículo ha sido revisado por el equipo de productos Oracle y se encuentra en cumplimiento de las normas y prácticas para el uso de los productos Oracle.