Servidor virtual con disco duro padre

4 enero 2015
Josep Ma Solanes 4

En los entornos de laboratorio, desengañémonos, también muchos en producción; las máquinas virtuales crecen como setas. No es extraño empezar con pocas máquinas virtuales y al cabo de unos «días» haber multiplicado la cantidad de máquinas virtuales por 5. Y claro, tanta máquina virtual requiere de capacidad de proceso, memoria RAM y espacio de disco duro.

Por la capacidad de proceso y la memoria RAM poca cosa más se puede hacer, aparte de aprovechar los recursos que no se utilizan, ampliar su capacidad física o pararla, estado en que no consume ni capacidad de proceso ni memoria RAM, pero tampoco da servicio.

En cuanto a los discos duros la cosa cambia. Aunque la máquina virtual esté apagada, continúa consumiendo espacio de disco. ¿Se puede mejorar u optimizar este espacio que ocupan las máquinas virtuales? la respuesta es SI, intentando no duplicar los contenidos.

¿Como me ahorro este espacio de disco duro sin duplicar contenidos?

Pongamos un ejemplo. Supongamos que se quiere crear un laboratorio basado en servidores Windows Server 2012 R2, con un controlador de Directorio Activo y un servidor de archivo en alta disponibilidad. La broma sale para 3 máquinas virtuales con el mismo sistema operativo. Teniendo en cuenta que, sólo el sistema operativo de cada servidor, se nos puede comer unas 35 GB, necesitaríamos 105 GB (35 GB x 3 servidores = 105 GB) de espacio de disco duro sólo por el hecho de tener el laboratorio montado.

¡Y eso sin tener en cuenta el tiempo que implica desplegar 3 máquinas Windows Server 2012 R2 con sus actualizaciones a la fecha!

Una de las formas de optimizar este laboratorio consiste en:

  • Crear una primera máquina virtual con el sistema operativo base y todas sus actualizaciones hasta la fecha.
  • Preparar esta máquina para ser copiada (sysprep). Lo podemos aplicar a la plantilla o a la máquina virtual una vez desplegada.
  • Retirar su disco duro, el archivo de disco virtual. Este será el «disco padre».
  • Crear tres máquinas virtuales nuevas con un disco diferencial a partir del disco que tenemos retirado.
  • Personalizar las tres máquinas con sus características concretas.

Cada máquina virtual se pondrá en marcha independientemente, guardando las diferencias con el «disco padre» en un archivo aparte. El funcionamiento a nivel de máquinas virtuales es el mismo, no hay ninguna diferencia con cualquier otra máquina virtual. Sólo hay que tener precaución que no le pase nada al «disco padre», ya que forma parte de la máquina virtual, es su disco duro.

Mover el almacenamiento es pesado y muy lento, minimizemoslo al máximo.

¿Lo ponemos en práctica siguiendo el ejemplo?

Después de crear una máquina virtual en Microsoft Hyper-V y instalarle el sistema operativo base Microsoft Windows Server 2012 R2 con todas las actualizaciones hasta la fecha, apagamos la máquina virtual y cogemos el archivo del disco duro, el de extensión .VHD o .VHDX. A mi me gusta poner un nombre descriptivo al archivo (Win2k12R2ES_Novembre_2014), de esta manera sé que contiene un Windows 2012 R2 en español con las actualizaciones de Noviembre de 2014. También les adjunto en una única carpeta, plantillas, para tenerlos bien localizados.

desplegar-vm-des-de-plantilla-01

Procedemos a crear las tres máquinas virtuales que formarán el laboratorio, pero variando un poco la manera en que configuramos el disco duro. Iniciado el asistente de creación de la máquina virtual, indicamos el nombre que le corresponde a cada máquina. Hacer clic en Siguiente.

desplegar-vm-des-de-plantilla-02

Indicar el tipo de generación del hardware, en el caso de Windows 2012 R2, marcar generación 2 y hacer clic en Siguiente.

desplegar-vm-des-de-plantilla-03

Cantidad de memoria RAM que tendrá la máquina virtual y si utiliza memoria dinámica o no. Para un laboratorio de Windows 2012 R2 es adecuado 1024 MB si vamos justos de memoria física. Hacer clic en Siguiente.

desplegar-vm-des-de-plantilla-04

Indicar el conmutador de red virtual donde se conectará la máquina virtual. Hacer clic en Siguiente.

desplegar-vm-des-de-plantilla-05

OJO en este punto. Especificar el disco duro, fijaos que no pone por ningún lado utilizar un disco duro padre, por lo que se selecciona Exponer el disco duro más adelante. Hacer clic en Siguiente.

desplegar-vm-des-de-plantilla-06

Resumen de las operaciones a realizar, hacer clic en Finalizar.

desplegar-vm-des-de-plantilla-07

El sistema crea la nueva máquina virtual como es habitual, pero recordamos que no tiene disco duro. Botón derecho sobre la nueva máquina virtual, hacer clic en Configuración.

desplegar-vm-des-de-plantilla-08

Al lado izquierdo, seleccionar Controladora SCSI, al lado derecho, marcar Unidad de disco duro. Hacer clic en el botón Agregar.

desplegar-vm-des-de-plantilla-09

Se crea un nuevo apartado (Unidad de disco duro). Al lado derecho, queda marcado Disco duro virtual, pero con una ruta de archivo en blanco. Hacer clic en el botón Nuevo.

desplegar-vm-des-de-plantilla-10

Se inicia un asistente para la creación de un nuevo disco duro virtual, se puede marcar la opción no volver a mostrar esta página para saltar la introducción cada vez. Hacer clic en Siguiente.

desplegar-vm-des-de-plantilla-11

Seleccionar el tipo de disco, seleccionar Diferenciación. De esta manera se puede especificar un «disco duro padre». A partir del padre se creará un segundo disco duro con los cambios correspondientes en la máquina virtual en concreto. Hacer clic en Siguiente.

desplegar-vm-des-de-plantilla-12

Especificar el nombre del disco duro diferencial, el correspondiente a la máquina virtual que estamos configurando. También me gusta indicar, en el nombre del disco duro, si proviene de un disco duro padre y cuál es. En el ejemplo: srvLAB01-Win12R2ES_Novembre_2014. Hacer clic en Siguiente.

desplegar-vm-des-de-plantilla-13

Seleccionar el disco duro padre para la máquina virtual. Hacer clic en Siguiente.

desplegar-vm-des-de-plantilla-14

Resumen de la configuración del disco duro. Hacer clic en Finalizar.

desplegar-vm-des-de-plantilla-15

Ahora si hay el disco virtual indicado, hacer clic en el botón Aceptar o Aplicar para aceptar las modificaciones.

desplegar-vm-des-de-plantilla-16

Al iniciar la nueva máquina virtual no se observa ninguna diferencia respecto una máquina virtual con un disco duro dedicado. Repetir el proceso para las otras dos máquinas virtuales. Al final disponemos de 3 servidores Windows Server 2012 R2 diferenciados: srvLAB01, srvLAB02 y srvLAB03. Los tres puestos en marcha a la vez.

desplegar-vm-des-de-plantilla-17

Ahora bien, si observamos la carpeta que contiene los discos duros de las diferentes máquinas virtuales, podemos ver que el tamaño no es ni de lejos el mismo que el del disco duro entero, pasando a ocupar 2 GB en lugar de las casi 16 GB que ocupa el disco duro padre.

desplegar-vm-des-de-plantilla-18

En definitiva, en lugar de tener 3 máquinas virtuales de 16 GB haciendo un total de 48 GB de disco duro ocupado; pasamos a tener 22 GB. Bien, para ser justos serían 6 GB, ya que el disco duro padre nos sirve para otras maquinitas, no sólo para estas. Con un ahorro total de almacenamiento de 42 GB.

Ahorro de almacenamiento sin pérdida de funcionalidades

Sigo pudiendo hacer instantáneas sobre las máquinas virtuales, el archivo sólo ocupa lo que realmente tiene copiado, etc…

desplegar-vm-des-de-plantilla-19

¿Te ha gustado el artículo? Lo puedes compartir en las redes sociales. También puedes dejar tu opinión, comentario o sugerencia. ¡Gracias!

Similar Posts by The Author:

 

4 comentaris per a
“Servidor virtual con disco duro padre”

  1. Hola Josep

    Hace unos días que he encontrado tu blog y me parecen fantásticos todos tus artículos.

    Sobre el tema de este post quería preguntarte donde podríamos aplicar esta configuracion, ¿en entornos productivos pequeños/grandes? ¿para entornos de test? Si puedes poner algún ejemplo.

    Muchas gracias.

     
    1. Hola Guillermo, sobre el comentario, en entornos productivos, no es precisamente un sitio donde me guste aplicar dicha opción en servidores. Lo veo más, de forma general, para entornos de desarrollo y pruebas.

      Ahora bien, aplica muy bien en entornos de VDIs, donde tienes un master (disco padre) a partir de la cual generas más hijos (diferenciales) para cada VDI, de esta forma ahorras mucho espacio en disco.

      Saludos,

       
  2. Buenos días Josep,
    Muchas gracias por todos los articulos, sé que debes hacer un esfuerzo sobrehumano para darte tiempo de ayudarnos.
    Una consulta sobre discos diferenciales, he notado que a medida que las VM están encendidas, los discos diferenciales crecen en tamaño, algunos casi hasta el tamaño del disco «padre», mi pregunta es ¿Hay alguna forma de limitar el crecimiento de los diferenciales?.
    Muchas gracias por tu atención.

     
    1. Gracias Rolando,

      la respuesta a tu pregunta es no. Tienen el mismo tamaño máximo que el disco original. El espacio que ocupan se refiere a las modificaciones que se han hecho en el disco desde que se separó de su padre. Me intento explicar, si tienes un disco padre y generas un hijo, por así decirlo, en el hijo copias información por valor de 30 GB. El disco ocupará un pequeño diferencial más las 30 GB. Así se extrapola a todo: actualizaciones de Windows, instalación de aplicaciones, etc…

      Saludos,

       
Els comentaris estan tancats.