Buenas!!,
hace rato que no escrito nada en el post pero hace poco realice una
configuración muy interesante en un equipo en Oracle OCI y se me dificulto
buscar información concreta.
Como todos
saben hoy Oracle, ofrece servicios de DB en la nube que tienen muchísimas
ventajas y automatizaciones. Servicios como DBCS, ADB, EXACS… pero también
podríamos tener una Instancia Linux con un motor de Oracle Database
administrado por nosotros en la nube. Y
para este último caso, les cuento que es posible hacer uso de algunas de las
ventajas que tenemos en la nube, como por ejemplo realizar los backups de
archive y de la db con rman directamente en objects storage utilizando la tool
de Cloud Backup de Oracle. Esta configuración nos va a permitir bajar los
costos de storage para el almacenamiento de los mismos y no preocuparnos por el
espacio que estemos utilizando ya que lo resolveríamos directamente en OCI.
Para
realizar esta tarea vamos a ver los siguientes pasos:
- Descarga e instalación de Oracle
Database Cloud Backups Module.
- Instalación de JAVA
- Creación del Objects-Storage
- Recompilación de información en OCI
para la configuración
- Creación de PareKey en Oracle Home.
- Ejecución
- Configuraciones Particulares de RMAN
La
actividad se realizo sobre un Oracle Linux 7.9 y un Oracle Database 19c.
Tips:
- No
me funciono con jdk 18, se instalo una versión particular que vemos más
adelante.
- Si no encuentran los objetos desde la consola de oci pero en RMAN funciona todo
bien, seguramente falto el parámetro que indica el nombre del Objects-Storage
- En
la documentación van a ver que se hace referencia a distintos valores como
UOCID, TOCID, etc.. En oci siempre es el valor OCID (Id del recurso), pero se
hace referencia como por ejemplo el User OCID -> UOCID. En conclusión cuando
buscan la información en OCI todos tienen el mismo nombre: OCID.
- El Bucket hay que crearlo tipo Standard, sino da error: ORA-27192: skgfcls: sbtclose2 KBHS-00719: Error 'NotRestored'; The object is in Archive tier and needs to be restored.
- Es obligatorio activar la encriptación.
1. Software
Bajar de
OTN Oracle Cloud Backup Module
https://www.oracle.com/database/technologies/oracle-cloud-backup-downloads.html
Hacemos
click en “All Supported Platforms” y descargamos el file “opc_installer.zip”
Dejamos el
.zip en /home/oracle por ejemplo y lo descomprimimos.
2. Instalación JAVA
https://www.oracle.com/java/technologies/javase/javase8u211-later-archive-downloads.html
cd /u01/java tar zxvf jre-8u331-linux-x64.tar.gz Agregar las variables al .bashrc file y volver a loguearnos vi .bashrc # User specific aliases and functions export JAVA_HOME=/u01/java/jre1.8.0_331 export PATH=$JAVA_HOME/bin:$PATH - Volver a loguearnos para que tome las variables $ java -version java version "1.8.0_331" Java(TM) SE Runtime Environment (build 1.8.0_331-b09) Java HotSpot(TM) 64-Bit Server VM (build 25.331-b09, mixed mode) |
3. Creación de Buckets
Es
necesario loguearnos en OCI dentro del compartment que seleccionemos en base al
entorno o ubicación de la db que vayamos a backupear.
Para
crearlo vamos a Storage y luego en Buckets
Dejar el tipo "Standard".
4. Obtener la información necesario de OCI
TOCID:
Es el
Tenancy ID y lo obtenemos visualizando el detalle del mismo, dentro de
Governance & Administration -> Tenancy Details
COCID:
El compartment
ID donde creamos nuestro Buckets.
Para
obtenerlo vamos al menú identity y luego al sub menú compartment:
Luego seleccionamos el compartment donde creamos nuestro bucket y copiamos el OCID:
UOCID:
El user ID,
este usuario tiene que tener acceso al Bucket que creamos, también pude ser un
usuario de servicio creado en OCI. En otro post voy a explicar como crear un
usuario y darle los permisos mínimos. Por el momento lo voy a mostrar con mi
usuario:
Logueados
en OCI vamos a nuestro profile:
Objects-Storage URL
El Listado
de url para el objects-storage lo podemos obtener del siguiente links:
https://docs.oracle.com/en-us/iaas/api/#/en/objectstorage/20160918/
En particular
en mi caso voy a utilizar el de la región de SapPAulo.
-host https://objectstorage.sa-saopaulo-1.oraclecloud.com
5. Creación de Keys al usuario
Es
necesario crear un par de keys para la segura conexión al Buckets, para esto lo
podemos hacer en forma automática desde la misma tools de Oracle.
Validar Variable ORACLE_HOME: $ echo $ORACLE_HOME /u01/app/oracle/product/19.0.0/dbhome_1 $ cd /home/oracle/opc_installer/oci_installer $ java -jar oci_install.jar -newrsakeypair -walletDir $ORACLE_HOME/dbs/opc_wallet Oracle Database Cloud Backup Module Install Tool, build 19.3.0.0.0DBBKPCSBP_2019-10-16 OCI API signing keys are created: PRIVATE KEY --> /u01/app/oracle/product/19.0.0/dbhome_1/dbs/opc_wallet/oci_pvt PUBLIC KEY --> /u01/app/oracle/product/19.0.0/dbhome_1/dbs/opc_wallet/oci_pub Please upload the public key in the OCI console. |
Dentro de
la consola de OCI, en el profile del usuario que se va a conectar con el
Bucket, es necesario pegar la key que generamos en el paso anterior.
Vamos a
profile y abajo a la izquierda en la lista de recursos seleccionamos API Keys y
click en ADD.
Dentro
pegamos la public key que creamos en el paso anterior:
Luego hacer
click en ADD y nos va a mostrar la información para el /oci/config file
En este
paso obtenemos el fingerprint para la linea de ejecución.
cd (vamos al home) mkdir ~/.oci cd .oci vi config [DEFAULT] user=ocid1.user.oc1..aaaaaaaa47izg2ornzi56cu6bl6stmtyqcuwfkllaoq7nyi4f2k7du7z3kkq fingerprint=ec:6d:5b:51:18:ee:ff:26:91:df:ad:fc:94:22:6b:6d tenancy=ocid1.tenancy.oc1..aaaaaaaayu7yg6vebcjpmx7xjkfp34osppv4oewvayazvze5eix3sygbgfzq region=sa-saopaulo-1 key_file=/u01/app/oracle/product/19.0.0/dbhome_1/dbs/opc_wallet/oci_pvt |
6. Ejecución
Ya estamos
en condiciones de ejecutar el comando de instalación de las librerías de backup
Revisión
de Parámetros:
java -jar oci_install.jar -host https://objectstorage.sa-saopaulo-1.oraclecloud.com
-pvtKeyFile
$ORACLE_HOME/dbs/opc_wallet/oci_pvt
-pubFingerPrint
ec:7d:3h:51:18:ee:ff:11:91:df:ad:fc:94:13:6b:8d
-tOCID
ocid1.tenancy.oc1..aaaaaaaayu7y************************************ygbgfzq
-uOCID ocid1.user.oc1..aaaaaaa****************************************k7du7z3kkq
-libDir $ORACLE_HOME/lib
-walletDir
$ORACLE_HOME/dbs/opc_wallet
-bucket bucket-name
Ejecución
java -jar oci_install.jar -host
https://objectstorage.sa-saopaulo-1.oraclecloud.com -pvtKeyFile
$ORACLE_HOME/dbs/opc_wallet/oci_pvt -pubFingerPrint
ec:6d:5b:51:18:ee:ff:26:91:df:ad:fc:94:22:6b:6d -tOCID
ocid1.tenancy.oc1..aaaaaaaay**************************************gfzq
-uOCID
ocid1.user.oc1..a********************************u7z3kkq
-libDir $ORACLE_HOME/lib -walletDir $ORACLE_HOME/dbs/opc_wallet -bucket
bucket-name Oracle Database Cloud Backup Module Install Tool, build 19.3.0.0.0DBBKPCSBP_2019-10-16 Oracle
Database Cloud Backup Module credentials are valid. Backups would
be sent to bucket bucket-name. Oracle
Database Cloud Backup Module wallet created in directory
/u01/app/oracle/product/19.0.0/dbhome_1/dbs/opc_wallet. Oracle Database
Cloud Backup Module initialization file /u01/app/oracle/product/19.0.0/dbhome_1/dbs/opccdbdb.ora
created. Downloading
Oracle Database Cloud Backup Module Software Library from Oracle Cloud
Infrastructure. Download complete. |
7. Configure
RMAN
Recovery Manager: Release 19.0.0.0.0 - Production on Tue Apr 12 22:11:10 2022
Copyright (c) 1982, 2019, Oracle and/or its affiliates. All rights reserved. connected to target database: DBNAME (DBID=2396711937)
using target database control file instead of recovery catalog
executing command: SET encryption
|
RMAN> backup current controlfile; Starting backup at 12-APR-22 using channel ORA_SBT_TAPE_1 channel ORA_SBT_TAPE_1: starting full datafile backup set channel ORA_SBT_TAPE_1: specifying datafile(s) in backup set including current control file in backup set channel ORA_SBT_TAPE_1: starting piece 1 at 12-APR-22 channel ORA_SBT_TAPE_1: finished piece 1 at 12-APR-22 piece handle=040qpsal_4_1_1 tag=TAG20220412T221653 comment=API Version 2.0,MMS Version 21.0.0.1 channel ORA_SBT_TAPE_1: backup set complete, elapsed time: 00:00:03 Finished backup at 12-APR-22 Starting Control File and SPFILE Autobackup at 12-APR-22 piece handle=c-2396793937-20220412-01 comment=API Version 2.0,MMS Version 21.0.0.1 Finished Control File and SPFILE Autobackup at 12-APR-22 |
No hay comentarios.:
Publicar un comentario