En nuestra publicación anterior, compartimos nuestras mediciones del rendimiento del hipervisor después de instalar parches contra las vulnerabilidades Meltdown y Spectre. Hoy es hora de hablar sobre el rendimiento del almacén de datos.
Gracias a las optimizaciones de VzKernel y su recompilación con la opción "Retpoline", reemplazamos las secuencias de código de máquina vulnerables y pudimos eliminar casi por completo los problemas de rendimiento causados por la necesidad de proteger el hipervisor de las vulnerabilidades en los procesadores Intel. Como resultado, la disminución de la productividad se redujo al 1-2%. Sin embargo, en este contexto, muchos tienen preguntas sobre el funcionamiento del almacén de datos. Y esto no es sorprendente, porque en entornos hiperconvergentes, el almacenamiento distribuido de datos juega un papel fundamental, y con el almacenamiento lento, todas las ventajas de rendimiento de las máquinas virtuales y los contenedores pueden quedar en nada.
Hoy queremos compartir con ustedes dos pruebas de demostración que se llevaron a cabo para evaluar el rendimiento de las máquinas virtuales y la densidad de datos en el almacenamiento distribuido de VZ Storage, que está integrado en la familia de productos Virtuozzo 7. Se utilizó un grupo de 6 nodos como banco de pruebas, con almacenamiento de datos directamente solo 5 de ellos estaban ocupados, y en el nodo restante se ubicaron máquinas virtuales.
Cada nodo tenía la siguiente configuración:
- CPU: 2 x Intel Xeon E5-2620 v4 @ 2.1 GHz
- RAM: 64 GB DDR4 2133 MHz
- NET: 2 x 10 Gb / s: dos subredes separadas para separar el tráfico de prueba y el tráfico de almacenamiento de datos distribuido
- Capacidades:
- HDD: 8 x 1 TB 7200 RPM, que incluye 7 HDD para servidores fragmentados (CS)
- SSD: 400 GB Intel DC P3600 PCIe - para metadatos (MDS), registro en diario y caché del cliente
Uno de los discos en cada nodo se asignó para el sistema y los 7 restantes para el servidor de fragmentos (CS) para el almacenamiento de datos. Como resultado, el clúster resultó ser 42 servidores fragmentados. Para gestionar esta economía, lanzamos 3 servidores de metadatos (MDS). La replicación de datos se implementó de acuerdo con el esquema 3: 2, que puede considerarse una solución estándar para la mayoría de las tareas típicas.
De acuerdo con los resultados de la prueba WebBench, donde evaluamos el rendimiento y la densidad de las máquinas virtuales con Windows Server 2012 R2, la cantidad de solicitudes de almacenamiento virtual en VZ7 es mucho mayor, y el rendimiento general es un 30% más alto que los resultados de la generación anterior de almacenamiento que se entregó con VZ6 . Al mismo tiempo, VZ Storage junto con el hipervisor Virtuozzo 7 puede soportar la operación simultánea de más de 100 máquinas virtuales en un clúster de este tamaño, proporcionándoles un rendimiento aceptable.
WebBench: Density VM Windows 2012 R2 basado en VStorage
La segunda prueba se llevó a cabo utilizando la utilidad SysBench y no emuló solicitudes OLTP, sino transacciones OLTP. Cargamos las mismas máquinas virtuales con Microsoft Windows Server 2012 R2 en el mismo clúster y obtuvimos resultados aún más interesantes. Además de la ventaja de rendimiento con máquinas virtuales que comienzan en 30 piezas, VZ7 ha mostrado una mayor densidad de distribución, haciendo frente al funcionamiento simultáneo de más de 100 máquinas virtuales. Al mismo tiempo, el almacenamiento desactualizado en VZ6 demuestra un rendimiento aceptable para un máximo de 60 máquinas virtuales en un clúster reducido.
SysBench: Densidad de VM de Windows 2012 R2 basada en VStorage

Y un poco más sobre la codificación de borrado
Además de todo lo anterior, Virtuozzo sigue siendo un defensor del uso de tecnologías de compresión basadas en códigos Reed-Solomon o Erasure Coding. A pesar de una amplia discusión sobre esta tecnología, muchos aún prefieren usar copias directas y almacenar hasta 3 copias de datos en su red. Sin embargo, como lo ha demostrado la práctica, este enfoque reduce el rendimiento de la red y ralentiza el proceso de copia de seguridad.
Para verificar este hecho, reunimos dos grupos, 6 nodos cada uno. Ambos clústeres lanzaron 3 servidores de metadatos (MDS) y 66 servidores fragmentados (CS) para almacenar datos en unidades SAS 15K. Uno de los clústeres se utilizó para alojar máquinas virtuales y el otro para realizar copias de seguridad. Probamos dos formas de colocar copias de seguridad: EC en modo 3 + 2 (dos sumas hash para tres datos) y copia de seguridad completa 3: 2 (dos copias completas de datos se almacenan en la red). Desde el punto de vista de la protección de datos, las configuraciones son idénticas: permiten recuperar toda la información incluso cuando ocurren dos puntos de falla. Sin embargo, en términos de rendimiento, la CE muestra resultados mucho mejores.
Codificación de borrado y replicación de datos en un script de copia de seguridad de VM paralela
La abscisa indica el número de máquinas virtuales que participan simultáneamente en los procesos de copia de seguridad. Y a lo largo del eje de ordenadas está la velocidad promedio de respaldo en MB / s. La velocidad se calcula por nodo, por lo que el rendimiento total y el rendimiento del clúster es mucho mayor, un múltiplo del número de nodos. El gráfico muestra que con una copia de seguridad simultánea de 15 máquinas virtuales de cada nodo, la ganancia de rendimiento debido al uso de EC está en el nivel del 10%.
Conclusión
Estas pruebas muestran las ventajas de la arquitectura actualizada y la operación mejorada de almacenamiento VZ cuando se trabaja con máquinas virtuales MS Windows, que tradicionalmente son más difíciles de optimizar y compactas que las máquinas virtuales con Linux invitado, que generalmente se pueden convertir en contenedores del sistema. En esta prueba, utilizamos discos duros SAS 15K, no discos de estado sólido, para los cuales los resultados serían aún mayores debido a un aumento en el tiempo de respuesta general y la velocidad del subsistema de almacenamiento.