Ejecución de software de simulación de depósitos en Azure

Azure CycleCloud
Azure Key Vault
Azure Virtual Machines

La simulación de depósitos utiliza modelos de equipos con un uso intensivo de datos para predecir flujos complejos de fluidos, como petróleo, agua y gas, bajo la superficie de la Tierra. En este ejemplo se configura el software de simulación de depósitos en una infraestructura de informática de alto rendimiento (HPC) de Azure. Azure permite ejecutar este tipo de carga de trabajo con el máximo rendimiento, escalabilidad y rentabilidad.

Arquitectura

Diagrama que muestra la arquitectura de simulación de depósitos.

Descargue un archivo Visio de esta arquitectura.

Flujo de trabajo

En este diagrama se ofrece información general de alto nivel sobre la arquitectura utilizada en el ejemplo. El flujo de trabajo es el siguiente:

  1. Los usuarios inician sesión en el nodo principal a través de SSH a fin de preparar sus modelos para los recursos de proceso.

  2. PBS Pro 19.1 se ejecuta en el nodo principal y programa los trabajos en los nodos de ejecución.

  3. El flujo de OPM se ejecuta en los nodos de ejecución. Las máquinas virtuales de proceso se implementan como un conjunto de escalado de máquinas virtuales, un grupo de máquinas virtuales idénticas que se escalan para satisfacer las demandas de las tareas de proceso.

  4. El flujo de OPM envía los resultados calculados a un recurso compartido de archivos en el nodo principal. Un disco premium se conecta al nodo principal y se configura como un servidor NFS para los nodos de ejecución y la máquina virtual de visualización.

  5. Al ejecutarse OPM ResInsight en una máquina virtual de Windows NV6 Estándar, se muestran visualizaciones 3D de los resultados. Los usuarios pueden acceder a la máquina virtual de visualización a través de RDP.

Componentes

Tecnologías clave que se usan para implementar esta arquitectura:

Detalles del escenario

La arquitectura de este ejemplo es compatible con el flujo de OPM, un conocido paquete de simulación de depósitos de petróleo y gas de código abierto a partir de la iniciativa Medio poroso de código abierto (OPM). El software de flujo de OPM se ejecuta en máquinas virtuales (VM) de HPC de Azure, que ofrecen un rendimiento parecido o mejor que el de las infraestructuras locales actuales.

Los usuarios se conectan a una máquina virtual de nodo principal de Linux para enviar modelos a los recursos de HPC a través del software de programación del trabajo de PBS Pro 19.1. Los recursos de HPC ejecutan el flujo de OPM y envían los resultados calculados a un recurso compartido de archivos. En este ejemplo, el recurso compartido de archivos es un espacio de sistema de archivos de red (NFS) de 4 terabytes (TB) en la máquina virtual del nodo principal. En función del modelo y de los requisitos de entrada y salida (E/S), se pueden usar otras opciones de almacenamiento.

Una máquina virtual de Microsoft Azure que ejecuta OPM ResInsight, una herramienta de visualización de código abierto, accede al recurso compartido de archivos para modelar y visualizar los resultados calculados. Los usuarios pueden conectarse a la máquina virtual a través del protocolo de escritorio remoto (RDP) para ver las visualizaciones.

El uso de una máquina virtual de Azure reparte el gasto de una estación de trabajo de visualización de alto nivel. Las aplicaciones de OPM se benefician del hardware de HPC y de una ubicación de almacenamiento compartido para los archivos de entrada y salida.

Posibles casos de uso

  • Realice el modelado de depósitos 3D y la visualización de datos sísmicos.

  • Pruebe INTERSECT, un simulador de depósito de alta resolución de Schlumberger. Se puede ver una implementación de INTERSECT de ejemplo en GitHub.

  • Pruebe Nexus, de Landmark-Halliburton, con una configuración similar en Azure.

Consideraciones

Estas consideraciones implementan los pilares del marco de buena arquitectura de Azure, que es un conjunto de principios guía que se pueden usar para mejorar la calidad de una carga de trabajo. Para más información, consulte Marco de buena arquitectura de Microsoft Azure.

En este ejemplo se usa la serie HB de máquinas virtuales de alto rendimiento. La serie HB está optimizada para aplicaciones basadas en el ancho de banda de memoria, como la dinámica de fluidos computacional (CFD), y la máquina virtual Standard_HB120rs_v2 es la más reciente de la serie. En el caso de hardware basado en Intel, la máquina virtual Standard_HC44rs es una opción.

Para probar esta arquitectura de flujo de OPM en Azure, la implementación de ejemplo de GitHub instala el caso de Norne, un caso de prueba comparativa de código abierto real de un campo petrolífero del mar de Noruega. Para ejecutar este caso de prueba, debe realizar lo siguiente:

  • Usar Azure Key Vault para almacenar claves y secretos, un requisito de los scripts de configuración de GitHub.

  • Instalar las bibliotecas de paquetes de álgebra lineal (LAPACK) en todos los nodos de ejecución. Los scripts de instalación de GitHub incluyen este paso.

  • Instale Remote Graphics Software (RGS) de HP en cualquier equipo que quiera usar como receptor para las visualizaciones. En este ejemplo, un usuario se conecta a la máquina virtual de visualización para ejecutar ResInsight y ver el caso Norne.

Programador de trabajos

Las cargas de trabajo intensivas en proceso se benefician del software de orquestación HPC, que puede implementar y administrar la infraestructura de proceso y almacenamiento de HPC. En la arquitectura de ejemplo se incluyen dos maneras de implementar el proceso: el marco azurehpc o Azure CycleCloud.

Azure CycleCloud es una herramienta para crear, administrar, operar y optimizar los clústeres de HPC y Big Compute en Azure. Puede usarlo para aprovisionar dinámicamente clústeres de HPC de Azure y coordinar datos y trabajos para flujos de trabajo híbridos y en la nube. Azure CycleCloud también admite varios administradores de cargas de trabajo para las cargas de trabajo de HPC en Azure, como Grid Engine, HPC Pack, HTCondor, LSF, PBS Pro, Slurm y Symphony.

Red

En esta carga de trabajo de ejemplo se implementan las máquinas virtuales en distintas subredes. Para obtener mayor seguridad, puede definir grupos de seguridad de red para cada subred. Por ejemplo, se pueden establecer reglas de seguridad que permitan o denieguen el tráfico hacia los distintos nodos o desde estos. Si no se necesita este nivel de seguridad, tampoco se necesitan subredes independientes para esta implementación.

Storage

Las necesidades de almacenamiento de datos y acceso varían considerablemente, en función de la escala de la carga de trabajo. Azure admite varios métodos para administrar la velocidad y la capacidad de las aplicaciones de HPC. El repositorio azurehpc de GitHub incluye scripts de HPC de Azure de ejemplo.

Los enfoques siguientes son comunes en el sector del petróleo y el gas. Elija la solución que mejor se adapte a sus requisitos de capacidad y de E/S únicos.

  • Para cargas de trabajo de pequeña escala, como las del ejemplo actual, considere la posibilidad de ejecutar NFS en el nodo principal con una máquina virtual de la serie Lsv2 optimizada para almacenamiento con discos efímeros de gran tamaño, o máquinas virtuales de la serie D con Azure Premium Storage, en función de sus requisitos. Esta solución se adapta a cargas de trabajo con 500 núcleos como máximo, con un rendimiento de hasta 1,5 gigabytes por segundo (GiB/s) y hasta 19 TB de RAM y un almacenamiento de 100 TB.

  • Cargas de trabajo intensivas en lectura de media y gran escala: considere la posibilidad de usar Avere vFXT for Azure (de 6 a 24 nodos). Esta solución funciona para cargas de trabajo de hasta 50 000 núcleos, rendimiento de hasta 2 GiB/s para escrituras y hasta 14 GiB/s para lecturas, una caché de hasta 192 TB y un servidor de archivos de hasta 2 petabytes (PB).

  • Cargas de trabajo de media escala con un uso intensivo de escrituras o equilibradas: considere la posibilidad de usar Azure NetApp Files para cargas de trabajo de hasta 4000 núcleos, con un rendimiento de hasta 6,5 GiB/s, almacenamiento de hasta 100 TB/volumen y un tamaño de archivo máximo de 12 TB.

  • Cargas de trabajo a gran escala: use un servicio de archivos paralelos organizado, como Lustre o BeeGFS. Este enfoque funciona con un máximo de 50 000 núcleos, con velocidades de lectura y escritura de hasta 50 GiB/s y un almacenamiento de 500 TB. En el caso de clústeres de mayor tamaño, un enfoque sin sistema operativo puede ser más rentable. Por ejemplo, Cray ClusterStor es una solución de almacenamiento HPC administrada con la flexibilidad necesaria para admitir clústeres elásticos de mayor tamaño sobre la marcha.

Implementación de este escenario

Obtenga una implementación de ejemplo de esta arquitectura de flujo de OPM en GitHub.

Pasos siguientes