Estrategias de copia de seguridad para Oracle Database en una máquina virtual Azure Linux

Precaución

En este artículo se hace referencia a CentOS, una distribución de Linux que está cerca de su estado Final de ciclo vida (EOL). Tenga en cuenta su uso y planifique en consecuencia. Para más información, consulte la Guía de fin de ciclo de vida de CentOS.

Se aplica a: ✔️ Máquinas virtuales Linux

Las copias de seguridad de la base de datos ayudan a protegerla contra la pérdida de datos debida a fallos de los componentes de almacenamiento y del centro de datos. También pueden ser un medio de recuperación de errores humanos y una manera de clonar una base de datos con fines de desarrollo o pruebas.

En Azure, todo el almacenamiento es altamente redundante. La pérdida de uno o más discos no provocará una interrupción de la base de datos. Las copias de seguridad se utilizan con mayor frecuencia para protegerse contra errores humanos, para facilitar las operaciones de clonación o para preservar los datos con fines normativos.

Las copias de seguridad también ayudan a protegerse contra interrupciones regionales cuando no se utiliza una tecnología de recuperación de desastres como DataGuard. En este caso, las copias de seguridad deben almacenarse en diferentes regiones de Azure mediante replicación con redundancia geográfica, para que estén disponibles fuera de la región de la base de datos principal.

Azure Storage

Los servicios Azure Storage son la solución en la nube de Microsoft para escenarios modernos de almacenamiento de datos. Azure Storage ofrece servicios que puede utilizar para montar almacenamiento externo en una máquina virtual (VM) Azure Linux, que es adecuada como medio de copia de seguridad para instancias de Oracle Database. Se requiere una herramienta de copia de seguridad como Oracle Recovery Manager (RMAN) para iniciar una operación de copia de seguridad o restauración, y para copiar la copia de seguridad a o desde Azure Storage.

Los servicios de Azure Storage ofrecen las siguientes ventajas:

  • Duradero y altamente disponible. La redundancia ayuda a mantener los datos seguros durante errores de hardware transitorios. El almacenamiento se realiza en triple réplica de manera predeterminada. También puede optar por replicar los datos entre centros de datos o regiones geográficas para una mayor protección frente a catástrofes locales o desastres naturales. Los datos replicados de esta manera permanecen con una alta disponibilidad en caso de una interrupción inesperada.

  • Seguro: Azure Storage cifra todos los datos escritos en una cuenta de almacenamiento. Azure Storage le ofrece un control detallado sobre quién tiene acceso a sus datos.

  • Escalable: Azure Storage es masivamente escalable para satisfacer las necesidades de almacenamiento de datos y rendimiento de las aplicaciones actuales.

  • Administrado: Azure se encarga del mantenimiento del hardware, las actualizaciones y los problemas críticos por usted.

  • Accesible: Los datos en Azure Storage son accesibles desde cualquier parte del mundo a través de HTTP o HTTPS. Microsoft proporciona bibliotecas de clientes para Azure Storage en varios lenguajes, como .NET, Java, Node.js, Python, PHP, Ruby y Go. Microsoft también proporciona una API de REST madura.

    Azure Storage admite la escritura en Azure PowerShell o la CLI de Azure. El Azure Portal y Azure Storage Explorer ofrecen soluciones visuales para trabajar con sus datos.

La plataforma Azure Storage incluye los siguientes servicios de datos que son adecuados para utilizar como medios de copia de seguridad para Oracle Database:

  • Azure Blob Storage: Un almacén de objetos para datos de texto y binarios. También incluye soporte para análisis de macrodatos a través de Azure Data Lake Storage Gen2.

  • Azure NetApp Files: solución completa de almacenamiento en red, que incluye funcionalidades avanzadas de administración de datos para tomar instantáneas, y clonar y replicar volúmenes de base de datos.

  • Azure Files: recursos compartidos de archivos administrados para implementaciones locales y en la nube.

  • Azure Disk Storage: volúmenes de almacenamiento de nivel de bloque para máquinas virtuales de Azure.

Montaje de almacenamiento entre regiones

La capacidad de acceder al almacenamiento de copias de seguridad en todas las regiones es un aspecto importante de la continuidad empresarial y recuperación ante desastres (BCDR). También es útil para clonar bases de datos a partir de copias de seguridad en diferentes regiones geográficas. El almacenamiento en la nube de Azure proporciona cinco niveles de redundancia:

Almacenamiento de archivos y bloques

Cuando se utiliza Azure Files con el protocolo Server Message Block (SMB) o el protocolo Network File System (NFS) 4.1 para montar como almacenamiento de copia de seguridad, Azure Files no admite RA-GRS o RA-GZRS.

El almacenamiento de copia de seguridad de Azure Files puede escalar verticalmente hasta 100 (TiB), con compatibilidad con las opciones de redundancia LRS, GRS y GZRS.

Azure Blob Storage montado a través del protocolo NFS 3.0 actualmente solo admite redundancia LRS y ZRS. Azure Blob Storage configurado con cualquier opción de redundancia se puede montar a través de Blobfuse.

Almacén de Recovery Services

Una almacén de Recovery Services es una entidad de administración que almacena puntos de recuperación creados a lo largo del tiempo. Proporciona una interfaz para realizar operaciones relacionadas con las copias de seguridad Entre dichas operaciones se incluye realizar copias de seguridad a petición, realizar restauraciones y crear directivas de copia de seguridad.

Azure Backup administra automáticamente el almacenamiento para el almacén. Es necesario especificar cómo se replica ese almacenamiento en el momento de la creación. No puede cambiar la replicación después de que los elementos estén protegidos en el almacén. Para la redundancia regional, elija la configuración con redundancia geográfica.

Si desea restaurar a una Región emparejada de Azure secundaria, active la función Restauración entre regiones. Al activar la restauración entre regiones, el almacenamiento de copia de seguridad se mueve de GRS a RA-GRS.

Azure Blob Storage

Azure Blob Storage es un servicio basado en la nube para almacenar grandes cantidades de datos no estructurados y es adecuado para las copias de seguridad de Oracle Database. Puede montar Azure Blob Storage en máquinas virtuales Azure Linux utilizando Blobfuse (Linux FUSE) o el protocolo NFS v3.0.

Blobfuse

Blobfuse es un proyecto de código abierto que proporciona un sistema de archivos virtual respaldado por Azure Blob Storage. Utiliza la biblioteca de código abierto libfuse para comunicarse con el módulo del núcleo FUSE de Linux. Implementa las operaciones del sistema de archivos mediante las API de REST de Azure Blob Storage.

Blobfuse está disponible actualmente para las distribuciones Ubuntu y Centos/RedHat. También está disponible para Kubernetes a través del controlador CSI.

Blobfuse es omnipresente en todas las regiones de Azure y funciona con todos los tipos de cuentas de almacenamiento, incluidas las de uso general v1/v2 y Azure Data Lake Storage Gen2. Pero su rendimiento no es tan bueno como el de otros protocolos alternativos. Por su idoneidad como medio de copia de seguridad de bases de datos, recomendamos utilizar el protocolo SMB o NFS para montar Azure Blob Storage.

NFS v3.0

Azure ofrece soporte para el protocolo NFS v3.0. La compatibilidad con NFS permite a los clientes Windows y Linux montar un contenedor Azure Blob Storage en una máquina virtual Azure.

Para garantizar la seguridad de la red, la cuenta de almacenamiento que utilice para el montaje NFS debe estar contenida dentro de una red virtual. La seguridad de Microsoft Entra y las listas de control de acceso (ACL) no se admiten todavía en cuentas que tienen habilitada la compatibilidad con el protocolo NFS 3.0.

Azure Files

Azure Files es un sistema de archivos distribuido basado en la nube y totalmente administrado. Puede montarlo en clientes Windows, Linux o macOS locales o basados en la nube.

Azure Files ofrece recursos compartidos de archivos multiplataforma totalmente administrados en la nube a los que se puede acceder a través de los protocolos SMB y NFS. Azure Files no admite actualmente el acceso mediante varios protocolos, por lo que un recurso compartido sólo puede ser un recurso compartido NFS o un recurso compartido SMB. Le recomendamos que determine qué protocolo se adapta mejor a sus necesidades antes de crear recursos compartidos de archivos Azure.

También puede ayudar a proteger los recursos compartidos de archivos de Azure mediante el uso de Azure Backup para un almacén de Recovery Services. Este enfoque proporciona otra capa de protección a las copias de seguridad de Oracle RMAN.

Azure Files con NFS v4.1

Puede montar recursos compartidos de archivos Azure en distribuciones Linux utilizando el protocolo NFS v4.1. Existen limitaciones en cuanto a las característica admitidas. Para obtener más información, consulte Compatibilidad con las características de Azure Storage.

Los recursos compartidos de archivos NFS de Azure se admiten en las mismas regiones que admiten el almacenamiento de archivos Prémium.

Para obtener la lista más actualizada, consulte la entrada Premium Files Storage en la página Productos de Azure disponibles por región.

Azure Files con SMB 3.0

Puede montar recursos compartidos de archivos Azure en distribuciones Linux mediante el cliente de núcleo SMB. El protocolo del Sistema Común de Archivos de Internet (CIFS), disponible en las distribuciones de Linux, es un dialecto de SMB. Cuando se monta un recurso compartido de archivos Azure en máquinas virtuales Linux mediante SMB, se monta como un sistema de archivos de tipo CIFS, y el paquete CIFS debe estar instalado.

La capacidad de montar recursos compartidos de archivos Azure a través de SMB está generalmente disponible en todas las regiones Azure. Presenta las mismas características de rendimiento que los protocolos NFS v3.0 y v4.1, por lo que actualmente lo recomendamos como método para proporcionar medios de almacenamiento de copia de seguridad a las máquinas virtuales Azure Linux.

Existen dos versiones compatibles de SMB: SMB 2.1 y SMB 3.0. Recomendamos SMB 3.0 porque admite el cifrado en tránsito. Sin embargo, las versiones del kernel de Linux tienen diferente compatibilidad con SMB 2.1 y 3.0. Para asegurarse de que su aplicación es compatible con SMB 3.0, consulte Montar un recurso compartido de archivos SMB Azure en Linux.

Dado que Azure Files es un servicio de archivos compartidos multiusuario, debe ajustar ciertas características para que sea más adecuado como medio de almacenamiento de copias de seguridad. Recomendamos desactivar el almacenamiento en caché y configurar los ID de usuario y grupo para los archivos creados.

Azure NetApp Files

El servicio Azure NetApp Files es una solución completa de almacenamiento para Oracle Database en máquinas virtuales Azure. Basado en el almacenamiento de archivos medido, admite cualquier tipo de carga de trabajo y está altamente disponible de forma predeterminada. Junto con el controlador Oracle Direct NFS, Azure NetApp Files proporciona una capa de almacenamiento altamente optimizada para Oracle Database.

Azure NetApp Files proporciona instantáneas eficientes basadas en el sistema de almacenamiento subyacente que utiliza un mecanismo de redirección en escritura. Aunque las instantáneas son rápidas de tomar y restaurar, solo sirven como primera línea de defensa. Pueden representar la mayor parte de las operaciones de restauración requeridas por cualquier organización, que a menudo forman parte de la recuperación tras un error humano.

Sin embargo, las instantáneas no son una copia de seguridad completa. Para cubrir todos los requisitos de copia de seguridad y restauración, debe crear réplicas externas de instantáneas u otras cámaras acorazadas de copia de seguridad en una geografía remota para ayudar a protegerse contra interrupciones regionales. Más información sobre cómo funcionan las instantáneas de Azure NetApp Files.

Para garantizar la creación de instantáneas coherentes con la base de datos, el proceso de copia de seguridad debe orquestarse entre la base de datos y el almacenamiento. La herramienta de línea de comandos Azure Application Consistent Snapshot (AzAcSnap) permite la protección de datos para bases de datos de terceros. Esta herramienta se encarga de toda la orquestación necesaria para poner las bases de datos en un estado coherente con la aplicación antes de tomar una instantánea del almacenamiento. Después, devuelve las bases de datos a un estado operativo. Las instancias de Oracle Database son compatibles con AzAcSnap desde versión 5.1.

Para más información sobre el uso de Azure NetApp Files para Oracle Database en Azure, consulte Arquitecturas de soluciones que utilizan Azure NetApp Files.

Servicio Azure Backup

Azure Backup es una solución de plataforma como servicio (PaaS) totalmente administrada para realizar copias de seguridad de sus datos y recuperarlos desde la nube de Microsoft Azure. Azure Backup puede realizar copias de seguridad y restaurar clientes locales, máquinas virtuales de Azure y recursos compartidos de archivos de Azure. También puede realizar copias de seguridad de bases de datos de SQL Server, Oracle, MySQL, PostgreSQL y SAP HANA en máquinas virtuales de Azure.

Azure Backup proporciona copias de seguridad independientes y aisladas para evitar la destrucción accidental de datos originales. Las copias de seguridad se almacenan en un almacén de Recovery Services con administración integrada de puntos de recuperación.

Azure Backup utiliza la nube de Azure para ofrecer alta disponibilidad sin sobrecarga de mantenimiento o supervisión. No limita la cantidad de datos entrantes o salientes que se transfieren, y no cobra por los datos que se transfieren. Los datos están protegidos en tránsito y en reposo.

Azure Backup ofrece varios tipos de replicación para mantener sus datos de copia de seguridad altamente disponibles:

  • LRS replica sus datos tres veces (es decir, crea tres copias de sus datos) en una unidad de almacenamiento a escala en un centro de datos.
  • GRS es la opción de replicación predeterminada y recomendada. GRS replica sus datos en una región secundaria, a cientos de kilómetros de distancia de la ubicación primaria de los datos de origen.

Un almacén creado con redundancia GRS incluye la opción de configurar la función Restauración entre regiones. Puede utilizar esta función para restaurar datos en una región secundaria emparejada de Azure.

El servicio Azure Backup proporciona un marco para lograr la coherencia de la aplicación durante las copias de seguridad de máquinas virtuales Windows y Linux para varias aplicaciones como Oracle, MySQL, Mongo DB, SAP HANA y PostgreSQL: instantáneas consistentes entre apps. Este marco implica la invocación de pre-scripts (para silenciar las aplicaciones) antes de tomar una instantánea de los discos. Invoca post-scripts (comandos para descongelar las aplicaciones) una vez finalizada la instantánea, para devolver las aplicaciones al modo normal.

Aunque puede encontrar ejemplos de pre-scripts y post-scripts en GitHub, usted es responsable de crear y mantener estos scripts. En el caso de Oracle, la base de datos debe estar en modo de registro de archivo para permitir las copias de seguridad en línea. Debe crear y mantener los comandos adecuados de inicio y finalización de la copia de seguridad de la base de datos que se ejecutan en los pre-scripts y post-scripts.

Azure Backup proporciona un marco mejorado de pre-scripts y post-scripts en el que proporciona pre-scripts y post-scripts empaquetados para aplicaciones seleccionadas. Basta con nombrar la aplicación para que Azure Backup invoque automáticamente los pre-scripts y post-scripts correspondientes. Microsoft administra los pre-scripts y post-scripts empaquetados, por lo que puede estar seguro del soporte, la propiedad y la validez de estos scripts.

Actualmente, las aplicaciones compatibles con el marco mejorado son Oracle 12.1 o posterior y MySQL. La instantánea es una copia completa del almacenamiento y no una instantánea incremental o de copia en escritura, por lo que es un medio eficaz para restaurar la base de datos.

Consideraciones de VLDB

Las estrategias de copia de seguridad para bases de datos de gran tamaño (VLDB) requieren una consideración cuidadosa debido a su tamaño. El uso de RMAN para realizar copias de seguridad en Azure Blob Storage o Azure Files podría no proporcionar el rendimiento necesario para realizar copias de seguridad de una VLDB en el plazo de tiempo objetivo.

Puede utilizar la copia de seguridad incremental de RMAN para reducir el tamaño de las copias de seguridad. Este enfoque podría permitir el uso de Azure Storage como medio de copia de seguridad para VLDB. Sin embargo, podría no ser eficaz para VLDB que tienen grandes volúmenes de cambios.

Le recomendamos que utilice los servicios de Azure que proporcionan capacidades de instantáneas, como Azure Backup o Azure NetApp Files, para VLDB. Las instantáneas consistentes entre apps, en las que las bases de datos se colocan automáticamente dentro y fuera del modo de copia de seguridad, tardan solo unos segundos en crearse, independientemente del tamaño de la base de datos.

La estrategia de copia de seguridad también puede estar vinculada a la solución de almacenamiento general que la organización utiliza para Oracle Database. Las cargas de trabajo de bases de datos que tienen un rendimiento de E/S extremo suelen utilizar Azure NetApp Files o soluciones de terceros de Azure Marketplace como Silk para respaldar los requisitos de rendimiento e IOPS del almacenamiento de bases de datos. Estas soluciones también proporcionan instantáneas consistente entre apps para operaciones rápidas de copia de seguridad y restauración de bases de datos.

Pasos siguientes