Implantación de la replicación del sistema de archivos (DBFS) de Oracle Database
Cualquier replicación en espera implica dos pasos en este modelo: desde la carpeta de origen de la base de datos primaria hasta el montaje de DBFS intermedio y, a continuación, en la ubicación secundaria, desde el montaje de DBFS hasta la carpeta de destino de la base de datos en espera. Las copias intermedias se realizan mediante rsync. Como se trata de una copia rsync local y de baja latencia, algunos de los problemas que surgen en una operación de copia rsync remota se evitan con este modelo.
Note:
Este método no está soportado con Oracle Autonomous Database, que no permite conexiones DBFS.réplica-mid-tier-dbfs-oracle.zip
Las ventajas de implementar la réplica de nivel medio con DBFS son:
- Este método aprovecha la solidez de la réplica de Oracle Data Guard.
- El almacenamiento de nivel medio real puede permanecer montado en los nodos secundarios. No hay pasos adicionales para conectar o montar el almacenamiento en el secundario en cada operación de switchover o failover.
Las siguientes son consideraciones para implementar la réplica de nivel medio con DBFS:
- Este método requiere Oracle Database con Oracle Data Guard.
- Los hosts de nivel medio necesitan el cliente de Oracle Database para montar el DBFS.
- El uso de DBFS para la replicación tiene implicaciones desde la perspectiva de la configuración, el almacenamiento de la base de datos y el ciclo de vida. Requiere una instalación del cliente de Oracle Database en los hosts de nivel medio, cierto mantenimiento de la base de datos (para limpiar, comprimir y reducir el almacenamiento de tablas) y un buen conocimiento del comportamiento de los puntos de montaje DBFS.
- Los directorios DBFS solo se pueden montar si la base de datos está abierta. Cuando Oracle Data Guard no es un Active Data Guard, la base de datos en espera está en estado de montaje. Por lo tanto, para acceder al montaje de DBFS en la ubicación secundaria, debe convertir la base de datos en una instantánea en espera. Cuando se utiliza Active Data Guard, el sistema de archivos se puede montar para lecturas y no es necesario realizar la transición a una instantánea.
- No se recomienda utilizar DBFS como solución de uso general para replicar todos los artefactos (especialmente los archivos de tiempo de ejecución) en la base de datos en espera. El uso de DBFS para replicar los binarios es excesivo. Sin embargo, este enfoque es adecuado para replicar algunos artefactos, como la configuración, cuando otros métodos, como la replicación de almacenamiento o
rsync, no se ajustan a las necesidades del sistema. - Es responsabilidad del usuario crear los scripts personalizados para cada entorno y ejecutarlos periódicamente.
- Es responsabilidad del usuario implementar una forma de revertir la dirección de la réplica.
Configurar replicación para sistema de archivos de base de datos
Esta implantación utiliza la tecnología rsync y sigue el modelo de peer a peer. En este modelo, la copia se realiza directamente entre los hosts pares de capa media. Cada nodo tiene conectividad SSH con su par y utiliza comandos rsync a través de SSH para replicar los artefactos de archivo de nivel medio principales.
Se necesita lo siguiente para implementar la réplica de nivel medio con DBFS:
- Instalación de un cliente de Oracle Database en los hosts de nivel medio que realizan la copia, tanto en el principal como en el secundario.
- Un sistema de archivos DBFS creado en la base de datos.
- Un montaje de DBFS en los hosts de capa media que realizan las copias, tanto en el primario como en el secundario. Esto monta el sistema de archivos DBFS de la base de datos. Este sistema de archivos se puede montar en más de un host, ya que DBFS es un sistema de archivos que se puede compartir.
- Scripts que copian los artefactos de archivo de nivel medio en el montaje de DBFS en el sitio principal.
- Scripts que copian los artefactos de archivo de nivel medio del montaje de DBFS en las carpetas del sitio secundario. Según la implementación, este método puede requerir conectividad SQL*net entre los hosts de capa media y la base de datos remota para operaciones de base de datos, como conversiones de roles.
- Una forma de gestionar la información específica del sitio, ya sea excluyendo esa información de la copia o actualizándola con la información adecuada después de la réplica.
- Programe estos scripts para que se ejecuten de forma continua.
- Un mecanismo para cambiar la dirección de la réplica después de una operación de switchover o failover.
Note:
El siguiente ejemplo se aplica a los Sistemas Oracle WebLogic. Puede utilizarlo como referencia para copiar otras carpetas del sistema de nivel medio mediante DBFS, pero en este ejemplo concreto se utiliza un script que replica la carpeta de dominio del administrador WebLogic en la secundaria mediante DBFS.En este ejemplo se muestra cómo replicar la carpeta de dominio del host de administración WebLogic mediante DBFS. El contenido ubicado fuera de la carpeta de dominio, así como el contenido de otros hosts, no se incluye en este ejemplo. La carpeta de dominio no reside directamente en DBFS; el montaje de DBFS es solo una carpeta temporal intermedia para almacenar una copia de la carpeta de dominio.
En este ejemplo, se proporciona un script para realizar estas acciones, que se deben ejecutar periódicamente en las ubicaciones principal y en espera. Este script copia la carpeta de dominio de administración WebLogic, omitiendo algunos elementos como los archivos tmp, .lck, .state y tnsnames.ora. El procedimiento consiste en lo siguiente:
- Cuando el script se ejecuta en el host de administración WebLogic del sitio principal, el script copia la carpeta de dominio WebLogic en la carpeta DBFS.
- Los archivos copiados en el DBFS, a medida que se almacenan en la base de datos, se transfieren automáticamente a la base de datos en espera mediante Oracle Data Guard.
- Cuando la secuencia de comandos se ejecuta en el host de administración WebLogic del sitio secundario:
- La secuencia de comandos convierte la base de datos en espera en una instantánea en espera.
- A continuación, monta el sistema de archivos DBFS desde la base de datos en espera.
- La carpeta de dominio replicado ahora está disponible en esta carpeta DBFS. El script lo copia desde el montaje DBFS a la carpeta de dominio real.
- Por último, la secuencia de comandos vuelve a convertir la base de datos en espera en una base de datos física en espera.
- En caso de un cambio de rol, la secuencia de comandos adapta automáticamente la ejecución al nuevo rol. Recopila el rol real del sitio comprobando el rol de la base de datos.
Esta secuencia de comandos solo replica la carpeta de dominio del host de administración WebLogic. El contenido de la carpeta DOMAIN_HOME/config se copia automáticamente en todos los demás nodos que forman parte del dominio WebLogic cuando se inician los servidores gestionados. Los archivos fuera de esta carpeta y los archivos ubicados en otros hosts no se replican y se deben sincronizar por separado.
Para las operaciones de despliegue de la aplicación, utilice la opción de despliegue Cargar archivos en la consola de administración WebLogic. De esta forma, los archivos desplegados se colocan en el directorio de carga del servidor de administración ($DOMAIN_HOME/servers/admin_server_name/upload) y el script de réplica de configuración los sincroniza con la ubicación en espera.
En este ejemplo, se proporciona otra secuencia de comandos para instalar el cliente de base de datos y configurar un montaje de DBFS en los hosts de capa media. La imagen es un ejemplo de un sistema Oracle WebLogic Server for OCI con replicación de DBFS.
wls-dbfs-replication-oracle.zip
Realice lo siguiente para utilizar el método DBFS para replicar el dominio WebLogic:
Validar replicación para sistema de archivos de base de datos
En una operación de switchover o failover, la información replicada debe estar disponible y utilizarse en la ubicación en espera antes de que se inicien los procesos. Esto también es necesario al validar el sistema secundario (abriendo la base de datos en espera en modo de instantánea).
En esta implantación, el almacenamiento siempre está disponible en la base de datos en espera; no es necesario asociar ni montar ningún volumen. La única acción que necesita es asegurarse de que contiene la última versión del contenido.
Realice lo siguiente para utilizar el contenido replicado en espera:
Replicación continua para el sistema de archivos de base de datos
Ejecute el script de replicación periódicamente para mantener el dominio secundario sincronizado con el principal.
rsync desde los hosts de nivel medio:
- Utilice crontab del sistema operativo u otra herramienta de programación para programar replicación. Debe permitir que las secuencias de comandos completen la replicación. De lo contrario, los trabajos posteriores pueden superponerse.
- Mantenga los procesos de nivel medio detenidos en la ubicación en espera. Si los servidores están activos en la ubicación en espera mientras se replican los cambios, estos se aplicarán la próxima vez que se inicien. Inícelos solo al validar la ubicación en espera o durante el procedimiento de switchover o failover.
- Mantenga la información específica de cada sitio y manténgala actualizada. Por ejemplo, omita
tnsnames.orade la copia para que cada sistema tenga sus detalles de conectividad. Si realiza un cambio entnsnames.oraen el nodo principal (por ejemplo, agregando un nuevo alias), actualice manualmentetnsnames.oraen el secundario según corresponda. - Después de una operación de switchover o failover, invierta la dirección de la réplica. Esto depende de la implementación específica. Los scripts pueden utilizar una comprobación dinámica para identificar quién es el sitio activo o puede realizar un cambio manual después de una operación de switchover o failover (por ejemplo, desactivar y activar los scripts adecuados). En el ejemplo proporcionado, el script
config_replica.shadapta automáticamente la ejecución al rol real del sitio comprobando el rol de la base de datos local.

