Aceleración y ampliación del almacenamiento de imágenes de máquinas virtuales en un entorno de KVM

Esta arquitectura de referencia muestra una plataforma de movimiento de datos y almacenamiento de datos escalable y de alto rendimiento diseñada para una latencia de acceso a datos y un ancho de banda óptimos, especialmente durante picos de carga de trabajo.

Arquitectura

La arquitectura utiliza un solo dominio de disponibilidad con 3 dominios de errores. Todos los componentes de la solución tienen una alta disponibilidad sin un único punto de fallo.

En cada nodo, los datos se almacenan en dos ubicaciones: RAM y volumen en bloque. La RAM se monta como un sistema de archivos local mediante el disco RAM de bloque de unidad de núcleo de Linux (brd). Las ubicaciones basadas en RAM y en volumen en bloque están unificadas en dos sistemas de archivos. Cada sistema de archivos se comparte entre los nodos mediante GlusterFS, un sistema de archivos paralelo y escalable.

GlusterFS se aplica a la RAM y a los volúmenes en bloque asociados para crear dos volúmenes distribuidos. Este almacenamiento de archivos de dos niveles permite el movimiento de datos de alto rendimiento en dos direcciones:
  • Dentro de un nodo: cualquier cantidad de máquinas virtuales (VM) se inicia con latencia cero, independientemente del número real de máquinas virtuales. Como resultado, la arquitectura elimina el cuello de botella de la lectura de imágenes de VM del almacenamiento compartido y evita los retrasos del servicio durante los picos de carga de trabajo.
  • En todos los nodos: las máquinas virtuales se mueven perfectamente entre los nodos gracias a los volúmenes distribuidos. Como resultado, cualquier nodo puede acceder a cualquier imagen de máquina virtual en cualquier momento, lo que permite al administrador volver a equilibrar rápidamente las imágenes de máquina virtual en los nodos con hardware dedicado a medida que crece el pool de nodos (o se reduce en caso de fallo de hardware en un nodo). Opcionalmente, puede nivelar los dos tipos de almacenamiento compartido, basado en RAM y basado en volumen en bloque, en una única instancia de almacenamiento compartido, donde el nivel de RAM se utiliza para el almacenamiento de acceso frecuente (activo) y el volumen en bloque se utiliza para el almacenamiento a largo plazo (en frío).

En el siguiente diagrama se ilustra esta arquitectura de referencia.



vm-kvm-oci-oracle.zip

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 e incluso continentes).

  • Dominio 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 una infraestructura como la alimentación o la refrigeración, ni la red interna del dominio de disponibilidad. Por tanto, es poco probable que un fallo en un dominio de disponibilidad afecte a los otros dominios de este tipo en la región.

  • Dominio de errores

    Un dominio de errores es una agrupación de hardware e infraestructura dentro de un dominio de disponibilidad. Cada dominio de disponibilidad tiene 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 del servidor, mantenimiento del sistema y fallos de alimentación dentro de un dominio de errores.

  • Red virtual en la nube (VCN) y subred

    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 centros de datos tradicionales, las VCN le proporcionan un control total de su entorno de red. Una VCN puede tener varios bloques CIDR que no se superpongan y que puede cambiar después de crear la VCN. Puede segmentar una VCN en subredes, cuyo ámbito puede ser una región o un dominio de disponibilidad. Cada subred está formada por un rango de direcciones contiguas 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.

  • VPN de sitio a sitio

    La VPN de sitio a sitio proporciona conectividad VPN IPSec entre la red local y las VCN de 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.

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

  • Gateway de enrutamiento dinámico (DRG)

    El DRG es un enrutador virtual que proporciona una ruta de acceso para el tráfico de red privada entre las VCN de la misma región, entre una VCN y una red fuera de la región, como una VCN de otra región de Oracle Cloud Infrastructure, una red local o una red de otro proveedor en la nube.

  • Gateway de traducción de direcciones de red (NAT)

    Un gateway de NAT permite que los recursos privados en una VCN accedan a hosts en Internet, sin exponerlos a conexiones de Internet entrantes.

  • Gateway de internet

    El gateway de Internet permite el tráfico entre las subredes públicas de una VCN y la red pública de Internet.

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

  • Tabla de ruta

    Las tablas de rutas virtuales contienen reglas para enrutar el tráfico desde subredes a destinos fuera de una VCN, normalmente a través de gateways.

  • Host bastión

    El host bastión es una instancia informática que sirve como punto de entrada seguro y controlado a la topología desde fuera de la nube. El host bastión se aprovisiona, por ejemplo, en una zona desmilitarizada (DMZ). Le permite proteger los recursos sensibles, colocándolos en redes privadas a las que no se puede acceder directamente desde fuera de la nube. La topología tiene un punto de entrada único y conocido que puede supervisar y auditar con regularidad. Por lo tanto, puede evitar exponer los componentes más sensibles de la topología sin comprometer el acceso.

  • Hardware dedicado

    Los servidores con hardware dedicado de Oracle proporcionan aislamiento, visibilidad y control mediante el uso de instancias informáticas dedicadas. Los servidores admiten aplicaciones que requieren grandes cantidades de núcleos, grandes cantidades de memoria y un gran ancho de banda. Pueden ampliarse hasta 160 núcleos (el más grande del sector), 2 TB de RAM y hasta 1 PB de almacenamiento en bloque. Los clientes pueden crear entornos en la nube en los servidores con hardware dedicado de Oracle con un rendimiento significativamente mayor que el de otras nubes públicas y centros de datos locales.

  • Volumen en bloque

    Con los volúmenes de almacenamiento en bloques, puede crear, asociar, conectar y mover volúmenes de almacenamiento, así como cambiar el rendimiento de estos para ajustarlos a sus necesidades de almacenamiento, rendimiento y aplicaciones. Después de asociar y conectar un volumen a una instancia, puede utilizar el volumen como si se tratara de una unidad de disco duro normal. También puede desconectar un volumen y asociarlo a otra instancia sin perder datos.

Recomendaciones

Utilice las siguientes recomendaciones como punto de partida. Sus requisitos pueden diferir de la arquitectura que se describe aquí.

  • VCN

    Al crear una VCN, determine el número de bloques 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 direcciones IP privadas estándar.

    Seleccione bloques 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 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 rol o nivel específico a la misma subred, que puede servir como límite de seguridad.

    Utilice subredes regionales.

  • Cloud Guard

    Utilice Oracle Cloud Guard para supervisar y mantener la seguridad de los recursos en Oracle Cloud Infrastructure de forma proactiva. Cloud Guard utiliza recetas de detector que puede definir para examinar los recursos en busca de deficiencias de seguridad y para supervisar a operadores y usuarios en busca de actividades de riesgo. Cuando se detecta cualquier configuración incorrecta o actividad insegura, Cloud Guard recomienda acciones correctivas y ayuda a realizar esas acciones, en función de las recetas de responsable de respuesta que puede definir.

    Clone y personalice las recetas por defecto proporcionadas por Oracle para crear recetas personalizadas de detector y responsable de respuesta. Estas recetas permiten especificar qué tipo de violaciones de seguridad generan una advertencia y qué acciones se pueden realizar en ellas. Por ejemplo, puede que desee detectar bloques de almacenamiento de objetos con visibilidad definida como pública.

    Aplique Cloud Guard en el nivel de arrendamiento para abarcar el ámbito más amplio y reducir la carga administrativa de mantener varias configuraciones.

    También puede utilizar la función de lista gestionada para aplicar determinadas configuraciones a los detectores.

  • Zonas de seguridad

    Para los recursos que requieren la máxima seguridad, Oracle recomienda utilizar zonas de seguridad. Una zona de seguridad es un compartimento asociado a una receta de políticas de seguridad definidas por Oracle que se basan en las mejores prácticas. Por ejemplo, los recursos de una zona de seguridad no deben ser accesibles desde Internet público y se deben cifrar con claves gestionadas por el cliente. Al crear y actualizar recursos en una zona de seguridad, Oracle Cloud Infrastructure valida las operaciones con respecto a las políticas de la receta de zona de seguridad y deniega las operaciones que violan cualquiera de las políticas.

  • Grupos de seguridad de red (NSG)

    Puede utilizar los NSG para definir un conjunto de reglas de entrada y salida que se aplican a VNIC específicas. Recomendamos utilizar NSG en lugar de listas de seguridad, ya que los NSG permiten separar la arquitectura de subred de la VCN de los requisitos de seguridad de su aplicación.

  • Nodos de hipervisor

    Despliegue unidades con hardware dedicado de HPC para obtener el máximo rendimiento. Esta arquitectura utiliza la unidad BM.Standard.E4.

Consideraciones

Tenga en cuenta los siguientes puntos al desplegar esta arquitectura de referencia.

  • Rendimiento

    Para obtener el mejor rendimiento, seleccione la unidad de computación correcta con el ancho de banda adecuado.

  • Disponibilidad

    Considere el uso de una opción de alta disponibilidad, en función de los requisitos de despliegue y la región. Entre las opciones se incluyen el uso de varios dominios de disponibilidad en una región y dominios de errores.

    • Supervisión y alertas

      Configure la supervisión y las alertas sobre el uso de CPU y memoria para los nodos, para que pueda escalar o reducir la unidad según sea necesario.

    • Costo

      Una instancia de GPU con hardware dedicado proporciona la potencia de CPU necesaria para un costo superior. Evalúe sus requisitos para elegir la unidad de computación adecuada.

      Puede suprimir el cluster cuando no hay trabajos en ejecución.

  • Sistemas de archivos del cluster

    Hay varios escenarios:

    • Unidades DenseIO optimizadas que vienen con la unidad de HPC.
    • Los volúmenes en bloque con varias conexiones ofrecen hasta 2.680 MB/s de rendimiento de E/S o 700 K de IOPS.
    • También puede instalar su propio sistema de archivos paralelo sobre el almacenamiento en SSD NVMe o el almacenamiento de bloques, según sus requisitos de rendimiento. OCI proporciona soluciones basadas en NFS permanentes y nuevas (NFS-HA, FSS) o sistemas de archivos paralelos (weka.io, Spectrum Scale, BeeGFS, BeeOND, Lustre, GlusterFS, Quobyte).

Despliegue

La aplicación GlusterFS y el código de Terraform para KVM de Linux están disponibles en Oracle Cloud Marketplace.

Hay una pila de Terraform disponible para crear instancias de Oracle Linux KVM en Oracle Cloud Marketplace.

  1. Vaya a Oracle Cloud Marketplace.
  2. Haga clic en Obtener aplicación.
  3. Siga las indicaciones de la pantalla.

La aplicación GlusterFS está disponible en Oracle Cloud Marketplace. Debe desplegar GlusterFS manualmente en cada instancia.

  1. Vaya a Oracle Cloud Marketplace.
  2. Haga clic en Obtener aplicación.
  3. Siga las indicaciones de la pantalla.

Confirmaciones

Autores: Yuri Rassokhin, Deepak Soni