Supervisión de copias de seguridad de Oracle Cloud Infrastructure con funciones y Autonomous JSON

Esta función inserta eventos de copia de seguridad de Oracle Cloud en una base de datos autónoma. En este ejemplo se utiliza, y Oracle recomienda usar JSON autónomo porque un evento en Oracle Cloud Infrastructure (OCI) es un texto JSON. Por ejemplo, con OCI File Storage, una instantánea (es decir, una copia de seguridad) creará un evento similar al siguiente:
```
{
  "eventType" : "com.oraclecloud.filestorage.createsnapshot",
  "cloudEventsVersion" : "0.1",
  "eventTypeVersion" : "2.0",
  "source" : "FileStorage",
  "eventTime" : "2022-11-23T21:30:20Z",
  "contentType" : "application/json",
  "data" : {
    "compartmentId" : "ocid1.compartment.oc1..********************",
    "compartmentName" : "ChristophePruvost",
    "resourceName" : "Snapshot-20221123-2130-10",
    "resourceId" : "ocid1.snapshot.oc1.********************",
    "availabilityDomain" : "AD2",
    "freeformTags" : { },
    "definedTags" : {
      "Mandatory_Tags" : {
        "Owner" : "oracleidentitycloudservice/firstname.name@company.com",
        "Schedule" : "OnDemand_UTC+1",
        "CreatedOn" : "2022-11-23T21:30:11.405Z"
      }
    },
    "additionalDetails" : {
      "X-Real-Port" : 60458
    }
  },
  "eventID" : "d520f88c-cd3d-4d1f-9a39-d935db5dcd8b",
  "extensions" : {
    "compartmentId" : "ocid1.compartment.oc1..*****************************"
  }
}
```

Después de insertar eventos en Autonomous JSON, puede crear fácilmente una aplicación APEX que supervisará todas sus copias de seguridad de OCI en un solo lugar. Además, como administrador de OCI, puede evitar un gran número de notificaciones de correo electrónico y puede utilizar APEX para crear informes de copia de seguridad eficientes. Para activarla, debe desactivar el componente Email Delivery que se muestra en el siguiente diagrama de arquitectura.

Arquitectura

En el siguiente diagrama se ilustra la arquitectura de referencia de esta solución.

A continuación se muestra la descripción de mon-bu-funs-auto-json-arch.png
Descripción de la ilustración mon-bu-funs-auto-json-arch.png

mon-bu-funs-auto-json-arch-oracle.zip

Nota:

La instantánea de almacenamiento de archivos y la copia de seguridad de DBCS son solo dos ejemplos de esta implantación. Se ejecutará de forma similar con todos los eventos de copia de seguridad en OCI, incluidos la copia de seguridad de almacenamiento de bloques, la copia de seguridad de almacenamiento de inicio, la copia de seguridad ExaCS, etc.

La arquitectura tiene los siguientes componentes:

  • Región

    Una región de Oracle Cloud Infrastructure es un área geográfica localizada que contiene uno o más centros de datos, denominados dominios de disponibilidad. Las regiones son independientes de otras regiones, y grandes distancias pueden separarlas (entre países o incluso continentes).

  • Red virtual en la nube (VCN) y subredes

    Una VCN es una red personalizable y definida por software que se configura en una región de Oracle Cloud Infrastructure. Al igual que las redes de los centros de datos tradicionales, las redes virtuales le proporcionan un control completo de su entorno de red. Una VCN puede tener varios bloques de CIDR no superpuestos que puede cambiar después de crear la VCN. Puede segmentar una VCN en subredes, las cuales se pueden acotar a una región o a un dominio de disponibilidad. Cada subred está formada por un rango contiguo de direcciones que no se solapan con las demás subredes de la VCN. Puede cambiar el tamaño de una subred después de la creación. Una subred puede ser pública o privada.

  • Almacenamiento de archivos

    El servicio Oracle Cloud Infrastructure File Storage proporciona un sistema de archivos de red duradero, ampliable, seguro y empresarial. Puede conectarse a un sistema de archivos del servicio de almacenamiento de archivos desde cualquier instancia con hardware dedicado, de máquina virtual o de contenedor. Una instantánea de almacenamiento de archivos es una copia de seguridad del sistema de archivos que puede utilizar si desea restaurarla mediante un clon.

  • Database Cloud Service (DBCS)

    DBCS es un servicio gestionado completo de Oracle Database. Una copia de seguridad de DBCS es una copia de seguridad de los datos que puede utilizar para restaurar la base de datos.

  • Servicio de eventos de OCI

    Oracle Cloud Infrastructure Events Service realiza un seguimiento de los cambios de recursos mediante eventos que cumplen con el estándar Cloud Native Computing Foundation (CNCF). Los desarrolladores pueden responder a los cambios en tiempo real disparando código con Functions, escribiendo en Streaming o enviando alertas mediante Notifications.

  • Funciones de OCI

    Oracle Cloud Infrastructure OCI Functions es un servicio sin servidor basado en eventos que permite a los desarrolladores crear, ejecutar y escalar aplicaciones sin aprovisionar ni gestionar ninguna infraestructura. Solo paga por los recursos utilizados cuando se ejecuta la función. Las funciones se integran con otros servicios de OCI y aplicaciones Oracle Saar. Según un marco abierto, OCI Functions se puede transferir a otros entornos locales o en la nube.

  • JSON autónomo

    Oracle Autonomous JSON Database es un servicio de ámbito de función para almacenar y recuperar recopilaciones de documentos JSON mediante API de SQL o documentos.

  • Entrega de correo electrónico

    El servicio Oracle Cloud Infrastructure Email Delivery proporciona una solución gestionada rápida y fiable para enviar correos electrónicos transaccionales y de marketing protegidos de gran volumen.

Recomendaciones

Para implementar la función, Oracle recomienda completar algunos de los LiveLabs disponibles para comprender mejor el proceso y preparar el entorno.

  • Función de Oracle OCI

    En primer lugar, debe familiarizarse con la implantación de funciones de OCI. Siga LiveLab, Configuración de Oracle Functions. Para acelerar el proceso, copie y pegue el código de ejemplo de oracle-functions-samples en GitHub.

  • JSON autónomo

    A continuación, para familiarizarse con el uso de JSON en las bases de datos Oracle, siga LiveLab, Desarrollo con JSON y SODA en Oracle Database. A continuación, siga LiveLab y Oracle Functions basada en eventos con Autonomous Data Warehouse.

  • Control con APEX

    Por último, aprenda a supervisar los procesos en APEX, siga LiveLabs Desarrollo con poco código con Autonomous Database.

    Cuando termine LiveLab, cree una vista SQL de los eventos JSON y utilice el siguiente ejemplo de código para crear su propia aplicación de supervisión de APEX. Tenga en cuenta que esta vista es relativa a la estructura del ejemplo de evento de JSON que se muestra en "Información sobre el control de copias de seguridad de Oracle Cloud Infrastructure con funciones y Autonomous JSON".
     CREATE OR REPLACE VIEW j_backup_detail_view
        AS SELECT ba.id, ba.created_on, ba.last_modified, ba.version, jt.*
        FROM backup ba,
        json_table(ba.json_document, '$'
                    COLUMNS (
                        eventtype        VARCHAR2(100)        PATH '$.eventType',
                        cloudeventsversion        VARCHAR2(10)  PATH '$.cloudEventsVersion',
                        eventtypeversion        VARCHAR2(10) PATH '$.eventTypeVersion',
                        source           VARCHAR2(50)  PATH '$.source',
                        compartmentid    VARCHAR2(200) PATH '$.data.compartmentId',
                        compartmentname    VARCHAR2(100) PATH '$.data.compartmentName',
                        resourcename    VARCHAR2(200) PATH '$.data.resourceName',
                        resourceid    VARCHAR2(200) PATH '$.data.resourceId',
                        availabilitydomain    VARCHAR2(200) PATH '$.data.availabilityDomain'
                    )) jt;
    
        create search index srchidx on backup (json_document) for json; 

    Ahora ya puede iniciar su propia implantación.

Explorar más

Obtenga más información sobre la supervisión de copias de seguridad de OCI con Functions y JSON autónomo.

Revise estas soluciones adicionales:

Confirmaciones

  • Autor: Christophe Pruvost

  • Colaboradores: Oracle EMEA Solution Center