Pruebas comparativas de rendimiento de gran volumen de Azure NetApp Files para Linux
En este artículo se describen las funcionalidades de rendimiento probadas de una sola volúmenes grandes de Azure NetApp Files en relación con los casos de uso de Linux. Las pruebas exploran escenarios para cargas de trabajo de lectura y escritura horizontales y de escalado horizontal, que implican una y varias máquinas virtuales (VM). Conocer el sobre de rendimiento de grandes volúmenes le ayuda a facilitar el ajuste de tamaño del volumen.
Resumen de pruebas
La característica Volúmenes grandes de Azure NetApp Files ofrece tres niveles de servicio, cada uno con límites de rendimiento. Los niveles de servicio se pueden escalar o reducir verticalmente de forma no disruptiva a medida que cambian las necesidades de rendimiento.
- Nivel de servicio Ultra: 12 800 MiB/s
- Nivel de servicio Premium: 6400 MiB/s
- Nivel de servicio Estándar: 1600 MiB/s
El nivel de servicio Ultra se usó en estas pruebas.
Escrituras secuenciales: las escrituras 100 % secuenciales se han maximizado en 8 500 MiB/segundo en estas pruebas comparativas. (El servicio limita el rendimiento máximo de un solo volumen grande a 12 800 MiB/segundo, por lo que es posible un mayor rendimiento potencial).
Lecturas secuenciales: el 100 % de las lecturas secuenciales se ha máximo en aproximadamente 12 761 MiB/segundo en estas pruebas comparativas. (El rendimiento de un solo volumen grande está limitado a 12 800 MiB/segundo. Este resultado está cerca del rendimiento máximo posible en este momento).
E/S aleatoria: El mismo volumen grande único ofrece más de 700 000 operaciones por segundo.
Las cargas de trabajo intensivas en metadatos son ventajosas para los grandes volúmenes de Azure NetApp File debido al aumento del paralelismo del gran volumen. Las ventajas de rendimiento son notables en las cargas de trabajo pesadas en la creación, desvinculación y cambio de nombre de archivo como típicas con las aplicaciones VCS y las cargas de trabajo de EDA en las que hay grandes recuentos de archivos presentes. Para más información sobre el rendimiento de las cargas de trabajo de metadatos elevados, vea Ventajas del uso de Azure NetApp Files para la automatización de diseño electrónico.
FIO, un generador de cargas de trabajo sintético diseñado como prueba de esfuerzo de almacenamiento, se usó para impulsar estos resultados de prueba. Básicamente hay dos modelos de pruebas de rendimiento de almacenamiento:
- Proceso de escalabilidad horizontal, que hace referencia al uso de varias máquinas virtuales para generar la carga máxima posible en un único volumen de Azure NetApp Files.
- Proceso de escalado vertical, que hace referencia al uso de una máquina virtual grande para probar los límites superiores de un solo cliente en un único volumen de Azure NetApp Files.
Prueba de escalabilidad horizontal de Linux
Las pruebas observaron umbrales de rendimiento de un único volumen grande en el escalado horizontal y se realizaron con la siguiente configuración:
Componente | Configuración |
---|---|
Tamaño de la máquina virtual de Azure | E32s_v5 |
Límite de ancho de banda de salida de máquinas virtuales de Azure | 2000MiB/s (2GiB/s) |
Sistema operativo | RHEL 8.4 |
Tamaño de volumen grande | 101 TiB Ultra (rendimiento de 12 800 MiB/s) |
Opciones de montaje | hard,rsize=65536,wsize=65536,vers=3 NOTA: Uso de 262144 y 65536 tenían resultados de rendimiento similares. |
256-KiB cargas de trabajo secuenciales (MiB/s)
El gráfico representa una carga de trabajo secuencial de 256 KiB con 12 máquinas virtuales que leen y escriben en un único volumen grande mediante un conjunto de trabajo de 1 TiB. El gráfico muestra que un único volumen grande de Azure NetApp Files puede controlar entre aproximadamente 8 518 Escrituras secuenciales puras de MiB/s y 12 761 Lecturas secuenciales puras.
Carga de trabajo aleatoria de 8 KiB (IOPS)
El gráfico representa una carga de trabajo aleatoria de 8 KiB y un conjunto de trabajo de 1 TiB. El gráfico muestra que un volumen grande de Azure NetApp Files puede controlar entre aproximadamente 474 000 escrituras aleatorias puras y aproximadamente 709 000 lecturas aleatorias puras.
Pruebas de escalado vertical de Linux
Mientras que las pruebas de escalado horizontal están diseñadas para encontrar los límites de un solo volumen grande, las pruebas de escalado vertical están diseñadas para encontrar los límites superiores de una sola instancia frente a dicho volumen grande. Azure coloca límites de salida de red en sus máquinas virtuales; para el almacenamiento conectado a la red, lo que significa que el ancho de banda de escritura está limitado por máquina virtual. Estas pruebas de escalado vertical muestran funcionalidades dadas el límite de ancho de banda disponible de gran tamaño y con procesadores suficientes para impulsar dicha carga de trabajo.
Las pruebas de esta sección se ejecutaron con la siguiente configuración:
Componente | Configuración |
---|---|
Tamaño de la máquina virtual de Azure | E104id_v5 |
Límite de ancho de banda de salida de máquinas virtuales de Azure | 12 500MiB/s (12.2GiB/s) |
Sistema operativo | RHEL 8.4 |
Tamaño de volumen grande | 101 TiB Ultra (rendimiento de 12 800 MiB/s) |
Opciones de montaje | hard,rsize=65536,wsize=65536,vers=3 NOTA: Uso de 262144 y 65536 tenían resultados de rendimiento similares |
Los gráficos de esta sección muestran los resultados de la opción de montaje del lado cliente de nconnect
con NFSv3. Para más información, vea procedimientos recomendados de montaje NFS de Linux para Azure NetApp File.
Los gráficos siguientes comparan las ventajas de nconnect
con un volumen montado en NFS sin nconnect
. En las pruebas, FIO generó la carga de trabajo desde una única instancia E104id-v5 en la región este de EE. UU. de Azure mediante una carga de trabajo secuencial de 64 KiB; se usó un tamaño de 256 E/0, que es el tamaño de E/S más grande recomendado por Azure NetApp Files, lo que dio lugar a números de rendimiento comparables. Para obtener más información, vea rsize
y wsize
.
Rendimiento de lectura de Linux
Los gráficos siguientes muestran lecturas secuenciales de 256 KiB de aproximadamente 10 000M/s con nconnect
, que es aproximadamente diez veces el rendimiento obtenido sin nconnect
.
Tenga en cuenta que 10 000 MiB/s es aproximadamente la velocidad de línea de la tarjeta adaptadora de red de 100 Gbps conectada al E104id_v5.
Rendimiento de escritura de Linux
En los gráficos siguientes se muestran escrituras secuenciales. El uso nconnect
proporciona ventajas observables para las escrituras secuenciales en 6600 MiB/s, aproximadamente cuatro veces la de montajes sin nconnect
.
IOPS de lectura de Linux
Los gráficos siguientes muestran lecturas aleatorias de 8 KiB de aproximadamente 426 000 IOPS de lectura con nconnect
, aproximadamente siete veces lo que se observa sin nconnect
.
IOPS de escritura de Linux
Los gráficos siguientes muestran escrituras aleatorias de 8 KiB de aproximadamente 405 000 IOPS de escritura con nconnect
, aproximadamente 7,2 veces que lo que se observa sin nconnect
.