Monté una caja ESX para una mejor gestión, pero su rendimiento es un elemento WTF; Soy un novato en el manejo de ESX, así que estoy buscando una larga lista de material de lectura que me ayude a aclarar esto y poder volver a la programación .NET.
Sistema de almacenamiento actual:
Estamos ejecutando Raid5+Hospare (ejes de 8x500 GB) en un PERC6i en un Dell 2910. Debido a las limitaciones de ESX, el PERC muestra el almacenamiento como "particiones" de 1x2TB + 1x800GB. No estoy seguro de la configuración de instalación (stride/stripe/???) en absoluto.
Nuestras aplicaciones
Tenemos un servidor SBS así como un servidor de base de datos menor (2x50 GB, pero creciendo a 10 GB/mes)...
Nuestra aplicación que reside en la VM de la base de datos tiene sentido de CPU y E/S; es un ejercicio de agitación de bases de datos mezclado con una gran cantidad de cálculos sobre los datos (en lo que se supone que debo estar trabajando es arreglar ese rendimiento)...
Problema de rendimiento
Cuando hago una copia de seguridad, una restauración o algo peor (copio una copia de seguridad de 1 máquina virtual a otra para moverla a la máquina virtual de control de calidad), todo el sistema se ralentiza (incluso las máquinas virtuales "no relacionadas").
Originalmente pensé que una situación DASD sería bastante buena ya que tenía ancho de banda PCI-x, pero la desaceleración en todo el sistema está acabando con la productividad.
Preguntas
- ¿Qué debo hacer para tomar una decisión inteligente sobre NAS vs RAID vs SAN vs DASD?
- ¿Hay puntos dulces/puntos feos en la configuración de almacenamiento?
- ¿Puedes usar una tarjeta SSD PCI-X en ESX para tempdb? ¿Buena/Mala idea?
- ¿Hay alguna forma de "compartir" alguna imagen mediante copia sobre escritura? La mayor parte de la "Copia de seguridad-Restauración" consiste en "poner una imagen limpia en los cuadros de desarrollo"; si pudiera hacer que "compartieran" la imagen maestra, la "copia grande" (2x50 GB) solo tendría que hacerse una vez por semana en lugar de una vez por desarrollador por semana... [el rendimiento en tiempo de ejecución no es una preocupación con el cajas de desarrollo, pero la copia de seguridad/copia/restauración mata la producción, SBS y todo lo demás en la caja]
Respuesta1
No proporciona detalles sobre la especificación del servidor ESX: número de CPU, cantidad de RAM, cuántas máquinas virtuales está ejecutando y cuál es su configuración y requisitos de rendimiento esperados, así que supongo que todo eso está bien por el momento y que El problema que tiene definitivamente está relacionado solo con el almacenamiento IO. Como mínimo, debe tener suficientes núcleos y RAM para ejecutar todas sus máquinas virtuales activas sin contención y suficiente espacio para garantizar que haya suficiente capacidad para que el hipervisor haga todo lo que necesita sin detener las máquinas virtuales ni forzarlas a salir al disco. . Además, como mencionó Frederic, debe tener instalado VMware Tools y, si puede usar el adaptador SCSI paravirtualizado para sus unidades de datos, eso le ayudará.
Pregunta [1] - DAS\RAID\NAS\SAN
Debe proporcionar más IO y más IO independiente para separar las cargas de trabajo entre sí. Ya sea que opte por NAS\DAS\SAN, esto requerirá configurar paquetes RAID separados, preferiblemente en RAID 10. Para su estilo de IO, los beneficios de rendimiento de RAID 10 sobre RAID 5 (duplica el rendimiento de escritura IO para la misma cantidad de archivos) es aconsejable. Desea asegurarse de que la máquina virtual principal con uso intensivo de E/S se esté ejecutando desde un almacén de datos independiente al sistema de control de calidad, especialmente si es probable que los procedimientos de control de calidad estresen seriamente el almacenamiento, lo cual supongo que sucederá. Dividir su paquete actual de 8 unidades en 2 paquetes RAID 10 separados de 4 sería de gran ayuda. Sería mejor cambiar el paquete RAID 5 de 8 unidades existente a RAID 10 y agregar almacenamiento independiente para el sistema de control de calidad. Puede hacer todo esto con almacenamiento conectado directamente, pero el rendimiento escalará mejor con sistemas SAN y NAS de alta gama. Sin embargo, también costarán mucho más.
Pregunta [2] Puntos óptimos/puntos feos con almacenamiento existente
Tiene suficientes discos para ejecutar entre 10 y 15 servidores Windows promedio (el promedio es archivos\impresión\DC's\cajas de aplicaciones de IO baja, no SQL, SBS o Exchange), pero no los suficientes para ejecutar mucho más de una máquina verdaderamente intensiva de IO en el conjunto actual arriba. Lo feo es tener un único paquete RAID 5 para todo. Si sus unidades existentes son SATA, entonces eso no es bueno, ya que es probable que sean de 7200 rpm en el mejor de los casos, pasar a unidades SAS de 10k duplicará más o menos el rendimiento para el mismo número de ejes, y las unidades de 15k lo triplicarán.
Pregunta[3] Uso de SSD PCI-X
ESX no es compatible con PCI-X\PCI-e SSD's AFAIK, pero si lo hace, eso ayudaría como ubicación para cualquiera de sus volúmenes de VM intensos de IO. En lo que respecta a ejecutar tempDB, lo ideal es que sí, debería colocarlo en un VMDK que se encuentre en un almacenamiento rápido, pero primero debe asegurarse de que la VM tenga tanta RAM como pueda utilizar de manera rentable.
Pregunta [4] Opciones de imagen compartida
VMware Lab Manager hará este tipo de cosas por usted, pero requiere una infraestructura VI con licencia completa y una licencia por CPU para cada servidor de su clúster. Ayudará con la administración y tiene algunos posibles aspectos positivos para su caso de uso de copia de control de calidad, pero también es posible que esto no ayude a resolver problemas de rendimiento: si el sistema de control de calidad se está impulsando con fuerza desde una perspectiva de E/S, entonces el Copy-On-Write\delta El enfoque de copia utilizado para aprovisionar múltiples sistemas a partir de una única imagen base no ayuda a sus problemas generales de rendimiento y probablemente los empeorará. Sin embargo, hará que la creación de copias sea mucho más fácil y rápida.
Respuesta2
Su problema no está relacionado con DAS o NAS sino con CRAP DISCS. Muchas máquinas virtuales tienen muchas más E/S que una computadora normal. El uso de discos FAST es obligatorio aquí, a menos que realmente tenga patrones de uso bajos.
- Está bien para una configuración más pequeña con un sistema DAS, si tiene un buen controlador RAID (línea Adaptec) y una buena cantidad de discos.
- SAN (no NAS) tiene la ventaja de poder compartirse entre varias cajas (conmutación por error, agrupación en clústeres, etc.)
Sin embargo, sea lo que sea, necesitas MUCHAS posibles IO. Las reglas son:
- Las máquinas virtuales NO DEBEN UTILIZAR EL ARCHIVO DE PÁGINA. La paginación enfatiza el disco, y los discos son su limitación brutal de todos modos.
- RAID 5 es mucho más lento que RAID 10;)
- Lo más probable es que los discos de 500 GB tengan un máximo de 7200 RPM, y eso es lento. Vaya 10.000 RPM mínimo, infraestructura SAS. Tengo muy buenas experiencias con un RAID 10 de Velociraptors de 300gb (aunque los nuevos de 600gb son un poco más rápidos).
Realmente necesitas MUCHA capacidad de IO. Su RAID 5 es sólo marginalmente más rápido que dos discos (en todo caso, tendría que hacer los cálculos) y un solo disco ya no es exactamente rápido para ciertos escenarios. El resultado es que su configuración IO simplemente muere. Normal.
Si instalara un RAID 10 de 8 discos (500 GB, es decir, 2 TB), obtendría MUCHA más capacidad de E/S independiente que con un RAID 5.
Respuesta3
(1) y (2): si utiliza un almacenamiento local, no podrá utilizar todas las funciones de vmware (ha, ft, vmotion, etc.). Utilizo iSCSI en una SAN EQL: el rendimiento es realmente pobre, debido a una mala implementación de iSCSI (alrededor de 2 Gbps en escritura) y al raid6 utilizado. Con raid10 IO el rendimiento debería ser realmente mejor. Entonces, si tienes dinero, usa un FC SAN... o espera a FCoE SAN :) con raid10... En mi opinión, para IO intensa, no uses SAN de bajo costo...
(3) no lo sé
¿Ha intentado configurar las herramientas para invitados para reducir la desaceleración? Tuvimos el mismo problema con una base de datos Oracle y la configuración de las herramientas invitadas realmente aumentó el rendimiento. ¡También utilizamos los controladores scsi paravirtualizados en nuestro RHEL para obtener más rendimiento!
Federico
Respuesta4
¿Podría ser este tu problema?
De todos modos actualiza todas las biosis. ¿El disco es sata o sas? A juzgar por el espacio, diría sata... no los discos más rápidos. Si desea obtener el mejor rendimiento, debería probar raid 10 en lugar de 5. NAS, SAN y DAS son una cosa...RAID es la base para casi todos ellos. Dentro de poco:
NAS: exportar un sistema de archivos (nfs, smb)
SAN: exportar un dispositivo de bloque (iscsi, lun, aoe)
DAS: todas las cajas de almacenamiento conectadas directamente al servidor (scsi, esata)
RAID: es una forma de aumentar la disponibilidad del sistema en caso de alguna falla del disco.