© Josep Ros. Con la tecnología de Blogger.

Consulta Técnica: Lentitud en entorno VMware Server.

Mi colega Aitor Enzunza de Zamudio (País Vasco) me formula la siguiente consulta:

Estimado Josep,

Primero de todo felicitarte por tu blog, lleno de sabiduría, y por tu disposición para ayudarnos a los pobres ignorantes.

Tenemos un problemilla con una instalación de VMware Server en un CPD. Como ya has posteado tu en anteriores ocasiones, el cuello de botella en una instalación de este tipo es el acceso a disco (cosa que ya hemos comprobado en nuestras carnes).

El sistema está montado en un servidor HP Proliant ML370 g3 con dos procesadores Intel Xeon 2.80 GHz de 2 cores cada uno, 12 GB de RAM y 3 discos SCSI de 10000 rpm 145 GB en RAID 5. La maquina corre un SO Windows Server 2003 Enterprise Edition y pretendemos que sea una de las máquinas host que soporte nuestros servicios dentro. Lo hemos probado con 4 Windows Server 2003 Standard ejecutandose sobre VMware Server y muy poca actividad cada uno (de hecho, dos de ellos no hacían nada más que estar, de momento).

Hemos detectado que cuando cualquiera de las máquinas accede a disco ralentiza todas las demás (incluyendo al host) hasta el punto de que no se pueda ni acceder a ellas por terminal server (cosa que es del todo necesaria para uno de los servicios).

Como entendemos que la máquina está sobredimensionada para correr 4 SO invitados (por lo menos, y quizá más) pensamos que puede haber algo que podamos hacer desde el punto de vista de la configuración para que se ejecuten de manera más fluida. No se donde podemos mirar los parámetros de configuración de las máquinas virtuales o si nos puedes echar un cable, en cuanto hacia donde debemos tirar para depurar este sistema.

Ya que estamos, he visto algunas capturas de pantalla de invitados con 4 CPUs. ¿Es eso posible con VMware Server?

Un saludo y gracias por tu tiempo,

Aitor

Muy buenas Aitor y gracias por los comentarios sobre mi blog, muy agradecido.

Pues efectivamente es así, el cuello de botella es la caché de disco disponible en el subsistema de disco. Sin embargo, en vuestro caso, ya que trabajáis con VMware Server, y tenéis un entorno bien dimensionado de memoria RAM, podemos aplicar los polvos mágicos de VMware que son estas líneas de código que debéis añadir en los vmx (al final) de cada VM que queráis acelerar.

mainMem.useNamedFile = "FALSE"
MemAllowAutoScaleDown = "FALSE"
MemTrimRate = "0"
sched.mem.pshare.enable = "FALSE"

Lo que hacen estas líneas es forzar que la memoria RAM se robe directamente al host y no se genere el 'peaso' archivo de 1 o 2 GB de RAM que tiene cada VM en el disco duro del host y que rasque continuamente. Eso libera considerablemente al subsistema de disco de trabajar, pero también evita que se pueda copiar en caliente la VM con la información que hay en RAM.

En cualquier caso, para entornos bien dimensionados de RAM a mí me ha funcionado 'veri gud'. A ver qué tal os va a vosotros, ya me contaréis.

Por otra parte hay que ver qué controladora de disco tenéis (independientemente del tipo de discos y RAID que sean) y verificar que tenga batería y caché de escritura habilitada. Eso es muy importante, revisar este artículo llamado

battery or not battery, this is the question.

Si no tenéis batería tendréis configurada en 100% Lectura la caché de la controladora y eso es kaka la vaka la tia paka para las VM :-)

Finalmente VM con 4 vCPU, haberlas loláilas pero en ESX, no en Server ni en Workstation, que tienen limitada, hasta hoy, a 2 vCPU la capacidad SMP de las VM.

Espero haberte ayudado.

Un saludo

Josep

5 comentarios:

alfon dijo...

Hola Josep,

Gracias, ante todo, por toda la información y profesionalidad que desprenden tu post. Tu blog es uno de los que más leo o más bien estudio.

Tengo una instalación parecida a la de Aitor, solo que la memoria del sistema es 16 GB de RAM y no 12. El problema que tnego es que teniendo 16 Gb de RAM, WMWARE Server solo me permite dimensionar 4 Gb para los dos sistemas operativos Windows que tengo: Un Windows Server 2003 Enterprise y Windows 2000 advanded server. Quisiera que, la menos, el Windows 2003 tuviese 8 GB. de RAM asignados. ¿ Tiene esto alguna solución. ?.

Saludos y gracias,

Josep Ros dijo...

Buenas Alfon,

Tienes 2 soluciones:
1. Migrar a ESX 3.5 (hasta 64Gb de RAM por VM).
2. Migrar a VMware Server 2.0 que está en beta y que permitirá 8Gb de RAM.

Yo te recomendaría un poco de paciencia y migrar al entorno Server 2.

Muchas gracias por los comentarios de mi blog.

Un saludo

Josep

alfon dijo...

Gracias Josep,

Una pregunta más. Sobre la migración a VMWare Server 2.0. Para realizar tal migración y teniendo en cuenta que las máquinas virtuales son solo archivos, supongo que solo hay que desistalar la anterior versión, instalar la nueva y abrir las dos máquinas que tengo ya creadas con la anterior versión. ¿ cierto ?.

Saludos y muchas gracias,

Josep Ros dijo...

Efectivamente, simplemente instalas la nueva versión y a trabajar. Un par de cuestiones:
1. No tendrás la consola de trabajo, por lo que te tendrás que conectar con el VI Client.
2. Cuando abras la VM verás que tienes que actualizarla de versión y reinstalar las VMware Tools.

Saludos

alfon dijo...

Muchas gracias Josep, ya me queda
todo más claro.

Saludos,

Consulta Técnica

[Consulta Técnica][bleft]

Virtualización

[Virtualización][twocolumns]

Naturaleza

[Naturaleza][grids]