3 votos

Solo hilo único soporte optimizado servidor vs vm en VMWare

Pido disculpas por la longitud de mi post.

Recientemente hemos convertido nuestro sistema de negocio para un producto que se licencia por el número de Núcleos. Hemos comprado el 2 de núcleo de licencia y actualmente se ejecutan en VMWare. Es bastante caro para pasar al siguiente nivel de licencia.

Estamos teniendo algunos bastante importantes problemas de rendimiento. Hemos eliminado la memoria RAM como un cuello de botella, así como la red, la base de datos y el acceso a disco. La de veces que hemos cuestiones no siempre se caracteriza por el alto de CPU de los usos. A veces el uso de la cpu es menor que 20%, pero la CPU Ready es alta.

Estoy meditando la posibilidad de ejecutar directamente en un servidor físico. Ya que estoy limitado a dos núcleos quiero seleccionar la forma más rápida "de un Solo Hilo de Rendimiento de la cpu que podría conseguir, probablemente de 4 núcleos. Entonces yo le pondría el sistema de negocio hasta la utilización de 2 núcleos y permitir que el sistema operativo para consumir los otros 2.

Mi lógica es algo como esto. Ahora la VM es obtener dos hilos o virtualizado. Esto es realmente sólo una pCPU. Incluso si me movía a la misma caja sin hyperthreading sería un 2 núcleos en lugar de 2 vCPU. Pero si yo compro un chip que es mucho más rápido en un solo hilo, que podía ganar mucho más. Yo también pudiera tener una pequeña ganancia, ya que no sería la virtualización de más.

Nuestro actual de 6 núcleos de la cpu obtiene las siguientes puntuaciones según Passmark. CPU Marca: 8570 Solo Hilo De Rendimiento: 1403

El 4 procesador de núcleo quiero obtiene estos resultados. CPU Marca: 10231 Solo Hilo De Rendimiento: 2287

¿Tiene sentido crear un servidor específicamente para obtener el mejor rendimiento Hilo para una aplicación como esta? Hay contras necesito preocuparme? Sería una nueva OS hacer una gran diferencia?

El actual servidor host tiene las siguientes especificaciones: Proliant DL380 G7 2 Física de la CPU : Intel(R) Xeon(R) X5675 @ 3.07 GHz 6 Cores Cada uno por 24 procesadores lógicos (vCPU) total Hyperthreading está habilitado. 144 GB de RAM

De almacenamiento de un nuevo SAN y estoy seguro de que no está jugando una parte de nuestros problemas de rendimiento.

El sistema de negocio de la VM está configurado con 2 vCPU y 24 GB de RAM. El sistema operativo es Windows Server 2008 R2. El sistema de negocio de software está optimizado para ejecutarse en 4 - 6 GB de RAM en el grupo de aplicación en IIS. Yo nunca he visto la VM ir por encima de 16 GB en uso.

También estamos trabajando en 3 otra máquina virtual en el host. Uno realmente está haciendo muy poco ahora y es probable que se apaga en un futuro muy cercano. Dispone de 2 vCPU y 8 GB de RAM.

La 2da es la ejecución de nuestra base de datos MS Sql. Que uno tiene 8 vCPU y 64 GB de RAM. Tuvimos un DBA mirarlo y él siente que no es la causa de nuestros problemas, al menos no de la base de datos de rendimiento de lado.

El 3 de VM es el funcionamiento de nuestro sitio web público. El promedio es de menos de 25 por ciento en la CPU. Dispone de 3 vCPU y 16 GB de RAM.

Una vez más, la ayuda, o la sabiduría que puede proporcionar sería impresionante y muy apreciada.

Gracias!

5voto

Strepsils Puntos 196

Usted tiene razón en sus suposiciones. Para su particular caso apilar Mhz en vez de vCores es una manera correcta para ir. Echa un vistazo a este procesador: (incluye 4 x 3,5-3,7 Ghz núcleos físicos + HT).

Sin embargo, no veo el problema real de lo que usted ha descrito, a menos que usted puede proporcionar su valor real de "CPU Ready".

1voto

c3rin Puntos 1637

Par de cosas;

1) Trate de limitar a ti mismo como muchos vCPUs que su VM necesita en realidad. Esto tiene que ver con el planificador de recursos de VMware ESXi, si usted tiene una máquina virtual con 8 vcpu, tiene que encontrar un intervalo de tiempo en una CPU física que tiene 8 núcleos libre en el tiempo para ejecutar el ciclo de reloj de la máquina virtual. Así que si usted tiene 6 núcleos por CPU, el programador tiene que encontrar un intervalo de tiempo en ambos pCPUs, que básicamente pone todo lo demás en espera. VMs no se ejecuta continiusly como las máquinas físicas a hacer, que están "congelados" en medio de ciclos de reloj, y si el programador tiene problemas para mantener su VMs va a pasar más y más tiempo "congelado". Si usted no está ejecutando una enorme base de datos en SQL VM, trate de reducir la vCPUs, a los 6 y a ver si eso no mejora las cosas. Yo suelo correr 1 vCPU por defecto, 2 para las grandes máquinas virtuales, y hasta 4 para algunas de las mayores bases de datos. Nunca he visto la necesidad de añadir más.

2) olvídate de HyperThreading en VMware, que le da un rendimiento un poco más, alrededor del 10% de acuerdo a algunas de las pruebas por parte de VMware, así que lo dejo, pero no contar con 2x veces el rendimiento cuando specing de hardware.

3) Cpu más rápido con velocidades de reloj darte más rápido de un solo hilo de rendimiento, pero menos de los núcleos le da menos capacidad de ejecutar más de VMs. Hay una razón de VMware muestra un agregado de toda la velocidad de todos los núcleos en el host, que es básicamente cómo ESXi ve Cpu, como un agregado a la piscina de potencia de cálculo.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: