Blog

17
Abr 2015

Virtualización: algo sencillo pero que no siempre se hace bien

Posteado Por Catrian

El proceso de instalación de un hypervisor es muy sencillo, se instala un S.O. como pueda ser Vmware, Xen Server, Hyper-V, habilitamos virtualización a nivel de kernel en cualquier Linux moderno y luego instalamos unas máquinas virtuales, como hacemos con virtual box, vmware workstation, pararells y demás hypervisores tipo 2.

Los pasos para realizar estar tareas no son nada complicados y en un corto tiempo podemos tener un entorno virtual funcionando correctamente, pero si nuestra meta es virtualizar sistemas complejos en producción, que necesiten alto rendimiento, puede que sea un poco más complicado; es muy importante diseñar un plan de virualización para que, a futuro, no hayan inconvenientes.

Cuando se crea un disco duro virtual, no importa el sistema, podemos seleccionar si dicho disco tendrá un tamaño fijo o dinámico. Si es el segundo, en el disco físico se reserva el espacio utilizado aunque en el SO virtualizado veremos el total. Un ejemplo puede ser si creamos un disco de 100gb que Windoes virtual verá como 100gb pero que realmente, en físico, ocupa 20gb. Esto es interesante para sobredimensionar, pero la escritura en disco será muy lenta. Un ejemplo podría ser lo que tarda en crearse un disco dinámico de 20 gb o de tamaño fijo. En el caso de tamaño fijo, el disco duro virtual se formateará con “ceros” todo el tamaño. Un poco de tiempo al principio nos dará mucho mas rendimiento más adelante.

Lo ideal es crear discos con controlador SCSI y no IDE para poder hacer ampliación de disco de forma más rápida. En modo IDE tendremos que añadir discos y ampliar volúmenes y esto complica las operaciones de administración del sistema. No hay diferencia en cuanto a rendimiento pero si mucha en cuanto a comodidad.

Las bases de datos son importantes; en el caso de usar SQL Server, se debe activar PAGE LOCK MEMORY en el Windows virtual, ¿la razón? SQL Server hace gestiones constantes en memoria para mantener registros consultados en cache y así agilizar las consultas, y por otra parte, tenemos un hypervisor con gestión de memoria dinámica, como Vmware, que intenta liberar RAM constantemente. Entonces es recomendable activar PAGE LOCK MEMORY mediante una GPO local en el Windows virtual y configurar la cuenta de servicio que arranca SQL para que mantenga en memoria bloqueada toda la ejecución y con esto prevenir la destrucción del cache.

Otra recomendación es si tenemos un sistema virtual con acceso intensivo a datos, separemos la ubicación física de los discos virtuales en distintos discos físicos. Recuerda que aunque sean virtuales, en algún momento la cabeza lectora del disco tendrá que alternar para leer/Escribir información de los distintos discos duros virtuales, por lo que separarlos aumenta el performance considerablemente.

En el caso de usar Hyper-V y tener instalado un Antivirus, cosa recomendable en cualquier sistema, es aconsejable excluir los ficheros de máquinas virtuales y los procesos VMMS.exe y VMWP.exe.

Otro truco importante para los sistemas virtualizados Windows es deshabilitar PREFETCH.

Los conocimientos requeridos para cada sistema, escenario y fabricante son diferentes como los son para los diferentes despliegues, pero no está de más tener en mente algunos trucos que se pueden aplicar de forma rápida y que van a ayudar a mejorar el rendimiento de nuestros sistemas virtuales.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

* Campo obligatorio