Supervise los dispositivos en tiempo real en función de las acciones IoT mediante OCI Generative AI y Oracle E-Business Suite

En el mundo actual, para cada aplicación, tenemos muchos dispositivos y puntos de datos que están conectados a un servidor central para el procesamiento de datos. Estos puntos de datos emiten métricas continuamente y, si se supervisan y calculan, podemos obtener información muy útil de los datos. Estas estadísticas se pueden utilizar para realizar predicciones como cuándo un dispositivo puede fallar y, finalmente, se pueden integrar con un sistema como Oracle E-Business Suite para realizar una orden de sustitución del dispositivo defectuoso sobre la marcha.

La arquitectura que proponemos - para la salud, tomará las entradas de los eventos entrantes emitidos por los dispositivos. Estos eventos tendrán los datos sobre el estado del dispositivo, por ejemplo, los datos emitidos por un monitor de oxígeno que se ejecuta en un hospital tendrán los datos sobre la antigüedad, el sistema operativo, los parches de seguridad aplicados, la información histórica y actual sobre su uso de memoria y almacenamiento y la carga que está sirviendo.

Limpiaremos y, a continuación, pasaremos estos datos a nuestro modelo de aprendizaje automático que se ejecuta en el servicio Oracle Cloud Infrastructure Data Science y, a continuación, calcularemos la probabilidad de que este dispositivo deje de funcionar y cuándo. Agregaremos todos estos datos y, según los requisitos, enviaremos a Oracle Autonomous Data Warehouse para obtener más informes. También podemos integrar aún más los datos con Oracle E-Business Suite para que pueda realizar un pedido automáticamente tan pronto como coincida con los criterios especificados para el fallo del dispositivo.

Arquitectura

Esta arquitectura de referencia muestra cómo utilizar las capacidades en la nube de Oracle Cloud Infrastructure (OCI) para crear una solución de supervisión de dispositivos alojada en OCI.

En esta arquitectura, hemos demostrado cómo esta solución de supervisión de dispositivos se alojará en OCI y cómo los usuarios administradores accederán a la solución tanto para fines empresariales como de administración u operaciones.

El siguiente diagrama ilustra este flujo de datos de arquitectura de referencia.



oci-genai-iot-ebs-arch-oracle.zip

Tan pronto como los datos se generen en el dispositivo, la aplicación cliente que se ejecuta en el dispositivo accederá a OCI Streaming en un punto final expuesto mediante API Gateway. Estos puntos finales estarán protegidos por un servicio de seguridad web de alta gama (WAF) que significa Web Application Firewall. Este servicio se asegurará de que la seguridad de frontend se aplique por defecto a la aplicación. El mismo punto final de flujo está conectado desde un hub de conector de servicio, que seguirá supervisando el flujo y tan pronto como haya nuevos datos producidos por el dispositivo, consumirá los datos y disparará OCI Functions para un procesamiento posterior de los datos.

OCI Functions tomará los datos consumidos e iniciará el procesamiento de datos. Habrá escenarios en los que se consumirán varios registros en una sola llamada de consumo según el tráfico de entrada, y la función será capaz de cuidar todos los registros por separado. Para cada registro, la función realizará las siguientes tareas:

  1. Limpie los datos del registro y recopile los parámetros necesarios.
  2. Cree una llamada de solicitud de API para el modelo de aprendizaje automático alojado en un punto final. La entrada para esta solicitud será los parámetros necesarios para que el modelo realice una predicción de fallo de dispositivo. La respuesta de esta solicitud será la predicción de fallos del dispositivo (que oscila entre 0,00 y 10,00, donde 0,00 significa menos posibilidades de fallo del dispositivo y 10,00 significa más posibilidades de fallo del dispositivo).
  3. Después de obtener la predicción, la función lo agregará al registro de entrada y lo transferirá a Autonomous Data Warehouse para la generación de informes futuros y el aprendizaje automático continuo del modelo.
  4. Según el valor de predicción, OCI Functions disparará la siguiente tarea. Si la predicción es para no fallo, la función saldrá de la ejecución de ese registro, ya que no hay nada más que hacer. Si la predicción es para fallo, la función realizará las siguientes subtareas:
    1. Acceda a la tabla de referencia de Autonomous Data Warehouse para obtener todos los detalles de la nueva orden, como los detalles del remitente y el aprobador de la orden, los datos relacionados con el dispositivo y todas las demás partes interesadas.
    2. Utilice OCI Generative AI para generar el resumen de detalles de la orden.
    3. Envíe los detalles de la orden a Oracle E-Business Suite o a cualquier otro software de ERP y CRM.
    4. Utilice OCI Generative AI para redactar un correo electrónico para el resumen de las partes interesadas.
    5. Enviar la notificación a las partes interesadas correspondientes para informar sobre la colocación del pedido.
  5. Una vez completado este flujo, la función marcará el registro como procesado y pasará al siguiente registro.

La solución consta de un modelo de aprendizaje automático de autoaprendizaje, que seguirá actualizándose con los nuevos datos que llegan a Autonomous Data Warehouse. Los tres niveles de la aplicación están alojados en diferentes subredes para asegurarse de que hemos abierto los puertos de seguridad correctos según lo requiera la aplicación. Los datos almacenados en las bases de datos se extraen de otra subred para garantizar una seguridad adecuada.

El diagrama de arquitectura también ilustra otro flujo de acceso de usuario para usuarios administradores. Estos son los usuarios responsables de operar la aplicación de supervisión de dispositivos en OCI. Accederán a los recursos de aplicación mediante SSH a través de la VPN de sitio a sitio o FastConnect. Esto creará un túnel seguro que conectará el dispositivo CPE del centro de datos del cliente con el DRG en OCI. Mediante esta ruta, los administradores accederán a los recursos de la aplicación en OCI desde las computadoras del centro de datos. Este acceso es necesario para garantizar que todos los trabajos de operaciones, como la aplicación de parches, la actualización de aplicaciones, las actualizaciones de seguridad del sistema operativo y otras tareas, se realicen de forma segura y a tiempo.

En esta arquitectura, también podemos agregar los conceptos de alta disponibilidad y recuperación ante desastres implantados en OCI. La alta disponibilidad significa que la aplicación se despliega en varios dominios de disponibilidad en la misma región. De esta forma, se asegurará de que la aplicación esté siempre disponible, incluso en el caso de que uno de los dominios de disponibilidad falle debido a algún problema, como incendio o electricidad. La recuperación ante desastres significa que la aplicación también se despliega en varias regiones de OCI. Esto asegurará que la aplicación esté siempre disponible incluso en el caso de que una de las regiones caiga debido a algún problema como tsunami, ciclón o terremoto. Además, debe colocar los recursos en varios dominios de errores para asegurarse de que la arquitectura también esté protegida contra fallos en el nivel de rack del centro de datos de Oracle. Estos son temas extremadamente importantes a tener en cuenta, ya que se supone que estas aplicaciones se ejecutan continuamente durante mucho tiempo sin tiempo de inactividad.

En la misma arquitectura, también podemos ver que hemos creado el despliegue mediante el servicio OCI DevOps, que se asegurará de que todos los componentes se despliegan de forma ágil. Todos los componentes se despliegan mediante Terraform y se mantienen a través de Ansible. Esto muestra cómo puede aprovechar la automatización en OCI y seguir el enfoque de infraestructura como código (IaaC) para hacer que la aplicación mainframe sea más ágil y fácil de mantener.

La arquitectura tiene los siguientes componentes:

  • Tenancy

    Un arrendamiento es una partición segura y aislada que Oracle configura en Oracle Cloud al registrarse en Oracle Cloud Infrastructure. Puede crear, organizar y administrar sus recursos en Oracle Cloud dentro de su arrendamiento. Un arrendamiento es sinónimo de una compañía u organización. Normalmente, una compañía tendrá un único arrendamiento y reflejará su estructura organizativa dentro de ese arrendamiento. Un único arrendamiento suele estar asociado a una única suscripción, y una única suscripción normalmente solo tiene un arrendamiento.

  • 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 entre sí y pueden separarse a grandes distancias (entre países e incluso continentes).

  • Compartimento

    Los compartimentos son particiones lógicas entre regiones dentro de un arrendamiento de Oracle Cloud Infrastructure. Utilice compartimentos para organizar los recursos en Oracle Cloud, controlar el acceso a los recursos y definir cuotas de uso. Para controlar el acceso a los recursos de un compartimento determinado, debe definir políticas que especifiquen quién puede acceder a los recursos y qué acciones pueden realizar.

  • Dominios de disponibilidad

    Los dominios de disponibilidad son centros de datos independientes dentro de una región. Los recursos físicos de cada dominio de disponibilidad están aislados de los recursos de los otros dominios de disponibilidad, lo que proporciona tolerancia a fallos. Los dominios de disponibilidad no comparten infraestructura, como la alimentación o la refrigeración, ni la red interna del dominio de disponibilidad. Por lo tanto, un fallo en un dominio de disponibilidad no debería afectar a los otros dominios de disponibilidad de la región.

  • Dominios de errores

    Un dominio de errores es una agrupación de hardware e infraestructura dentro de un dominio de disponibilidad. Cada dominio de disponibilidad consta de tres dominios de errores con hardware y energía independientes. Al distribuir recursos entre varios dominios de errores, las aplicaciones pueden tolerar fallos físicos de servidor, mantenimiento del sistema o fallos de energía en un dominio de errores.

  • 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 el control 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.

  • FastConnect

    Oracle Cloud Infrastructure FastConnect proporciona una forma sencilla de crear una conexión dedicada y privada entre el centro de datos y Oracle Cloud Infrastructure. FastConnect proporciona opciones de mayor ancho de banda y una experiencia de red más fiable en comparación con las conexiones basadas en Internet.

  • VPN IPSec

    VPN Connect proporciona conectividad VPN de sitio a sitio IPSec entre la red local y las redes virtuales en Oracle Cloud Infrastructure. El conjunto de protocolos IPSec cifra el tráfico IP antes de transferir los paquetes del origen al destino y descifra el tráfico cuando llega.

  • Lista de seguridad

    Para cada subred, puede crear reglas de seguridad que especifiquen el origen, el destino y el tipo de tráfico que se debe permitir dentro y fuera de la subred.

  • Gateway de servicio

    El gateway de servicio proporciona acceso desde una VCN a otros servicios, como Oracle Cloud Infrastructure Object Storage. El tráfico de VCN a Oracle viaja por el tejido de red de Oracle y no por Internet.

  • Sistemas de bases de datos autónomas

    Oracle Autonomous Database es un servicio totalmente automatizado que facilita a todas las organizaciones el desarrollo y despliegue de cargas de trabajo de aplicaciones, independientemente de la complejidad, la escala o la importancia. El motor convergente del servicio admite diversos tipos de datos, lo que simplifica el desarrollo y el despliegue de aplicaciones, desde el modelado y la codificación hasta ETL, la optimización de bases de datos y el análisis de datos. Con ajuste, escalado y aplicación de parches automatizados basados en aprendizaje automático, Autonomous Database ofrece el máximo rendimiento, disponibilidad y seguridad para cargas de trabajo OLTP, analítica, por lotes e Internet of Things (IoT). Basado en Oracle Database y Oracle Exadata, Autonomous Database está disponible en Oracle Cloud Infrastructure (OCI) para despliegues sin servidor o dedicados, así como en entornos locales con Oracle Exadata Cloud@Customer y OCI Dedicated Region.

  • Flujo

    Oracle Cloud Infrastructure Streaming proporciona una solución de almacenamiento duradera, escalable y totalmente gestionada para la ingesta de flujos de datos continuos y de elevado volumen que puede utilizar y procesar en tiempo real. Puede utilizar Streaming para la ingestión de datos de gran volumen, como logs de aplicación, telemetría operativa, datos de flujo de clics en la web o para otros casos de uso en los que se producen y procesan datos continuamente y de forma secuencial en un modelo de mensajería de publicación-suscripción.

  • Conectores de servicio

    Oracle Cloud Infrastructure Service Connector Hub es una plataforma de autobuses de mensajes en la nube que organiza el movimiento de datos entre servicios de OCI. Puede utilizar conectores de servicio para mover datos de un servicio de origen a un servicio de destino. Los conectores de servicio también permiten especificar opcionalmente una tarea (como una función) que realizar en los datos antes de entregarlos al servicio de destino.

    Puede utilizar el hub de conector de servicio de Oracle Cloud Infrastructure para crear rápidamente un marco de agregación de registros para sistemas de información de seguridad y gestión de eventos (SIEM).

  • Data Science

    Oracle Cloud Infrastructure Data Science es una plataforma totalmente gestionada y sin servidor que los equipos de ciencia de datos pueden utilizar para crear, entrenar y gestionar modelos de aprendizaje automático (ML) en Oracle Cloud Infrastructure (OCI). Se puede integrar fácilmente con otros servicios de OCI, como Oracle Autonomous Data Warehouse, Oracle Cloud Infrastructure Object Storage, etc. Puede crear y evaluar modelos de aprendizaje automático de alta calidad que aumenten la flexibilidad del negocio al poner los datos de confianza de la empresa a trabajar rápidamente, y puede respaldar objetivos empresariales basados en datos con un despliegue más fácil de modelos de aprendizaje automático.

  • Functions

    Oracle Cloud Infrastructure Functions es una plataforma de funciones como servicio (FaaS) totalmente gestionada, multicliente y altamente escalable. Está impulsado por el motor de origen abierto Fn Project. Las funciones le permiten desplegar el código y llamarlo directamente o dispararlo en respuesta a eventos. Oracle Functions utiliza contenedores de Docker alojados en Oracle Cloud Infrastructure Registry.

  • Logging
    El registro es un servicio altamente escalable y totalmente gestionado que proporciona acceso a los siguientes tipos de logs de sus recursos en la nube:
    • Logs de auditoría: logs relacionados con eventos emitidos por el servicio Audit.
    • Logs de servicios: logs emitidos por servicios individuales como API Gateway, eventos, funciones, equilibrio de carga, almacenamiento de objetos y logs de flujo de VCN.
    • Logs personalizados: logs que contienen información de diagnóstico de aplicaciones personalizadas, otros proveedores de nube o un entorno local.

Recomendaciones

Utilice las siguientes recomendaciones como punto de partida para implantar esta arquitectura de referencia mediante OCI Functions y OCI Events. Es posible que sus requisitos difieran de la arquitectura que se describe aquí.
  • VCN

    Al crear una VCN, determine el número de bloques de CIDR necesarios y el tamaño de cada bloque en función del número de recursos que planea asociar a las subredes de la VCN. Utilice bloques CIDR que estén dentro del espacio de dirección IP privada estándar.

    Seleccione bloques de CIDR que no se solapen con ninguna otra red (en Oracle Cloud Infrastructure, su centro de datos local u otro proveedor en la nube) en la que desee configurar conexiones privadas.

    Después de crear una VCN, puede cambiar, agregar y eliminar sus bloques de CIDR.

    Al diseñar las subredes, tenga en cuenta el flujo de tráfico y los requisitos de seguridad. Asocie todos los recursos de un nivel o rol específico a la misma subred, que puede servir como límite de seguridad.

  • Diseño de aplicaciones

    Esta arquitectura de referencia utiliza OCI Functions para todo el procesamiento. Existen pocas limitaciones en el uso de OCI Functions como el tiempo de ejecución máximo de 300 segundos. Si desea utilizar esta arquitectura para una gran cantidad de datos de flujo de entrada, puede considerar la ejecución de la aplicación en instancias de OCI Compute. Puede ejecutar varios corredores y cada corredor para consumir y procesar los eventos de entrada por separado y en paralelo.

  • Recuperación ante desastres

    Se recomienda una instancia de recuperación ante desastres en espera en una región OCI diferente para las aplicaciones empresariales. La estrategia de DR debe ser coherente en los 3 niveles para cumplir con los requisitos de SLA y durabilidad de los datos. La recuperación ante desastres Oracle Exadata Database Service on Dedicated Infrastructure se sincroniza con la producción mediante Oracle Data Guard. Oracle Exadata Database Service on Dedicated Infrastructure en espera es una copia transaccionalmente consistente de la base de datos principal. Oracle Data Guard mantiene automáticamente la sincronización entre las bases de datos mediante la transmisión y la aplicación de datos redo desde la base de datos principal a la base de datos en espera. En caso de fallo en la región principal, Oracle Data Guard realiza un failover automático a la base de datos en espera de la región secundaria. Los equilibradores de carga de front-end se despliegan en modo en espera para equilibradores de carga de red o con alta disponibilidad mediante el uso de Load Balancer como servicio.

Consideraciones

Al implementar esta arquitectura de referencia, es importante tener en cuenta los siguientes aspectos.

  • Rendimiento

    OCI Functions, Autonomous Data Warehouse y otros servicios importantes son altamente escalables. Considere ajustar el número de recursos informáticos y de almacenamiento en función del tamaño y los requisitos de la aplicación mainframe.

  • Seguridad

    Utilice políticas para restringir quién puede acceder a los recursos de OCI. Para OCI Object Storage, el cifrado está activado por defecto y no se puede desactivar. Todo el acceso a las funciones desplegadas en OCI Functions se controla a través de Oracle Cloud Infrastructure Identity and Access Management (OCI IAM), que permite asignar tanto los privilegios de gestión de funciones como de llamada a funciones a usuarios y grupos de usuarios específicos. Se recomienda almacenar secretos y datos confidenciales en OCI Vault. Considere el uso de OCI Vault para almacenar claves de API y token de autenticación utilizados para la autorización con servicios de OCI.

  • Disponibilidad

    Oracle garantiza una alta disponibilidad de OCI Functions, Autonomous Data Warehouse y otros servicios, que son nativos en la nube y están totalmente gestionados. Para las cargas de trabajo desplegadas en un único dominio de disponibilidad, puede garantizar la resiliencia distribuyendo los recursos en los dominios de errores, como se muestra en esta arquitectura. Si tiene previsto desplegar la carga de trabajo en una región que tenga más de un dominio de disponibilidad, puede distribuir los recursos entre varios dominios de disponibilidad.

  • Posibilidades de ampliación

    Puede ampliar los servidores de aplicaciones verticalmente cambiando a y cambiando la unidad de las instancias informáticas. Una unidad con un mayor recuento de núcleos proporciona más memoria y ancho de banda de red. Si necesita más almacenamiento, aumente el tamaño de los volúmenes en bloque asociados al servidor de aplicaciones. Puede escalar las bases de datos verticalmente activando más núcleos para el sistema de base de datos de Autonomous Data Warehouse. Puede agregar OCPU en múltiplos de dos para un cuarto de rack. Las bases de datos permanecen disponibles durante una operación de ampliación. Si la carga de trabajo supera las CPU y el almacenamiento disponibles, puede migrar a un rack más grande.

Agradecimientos

  • Autor: Lovelesh Saxena