Hola a todos

En ocasiones nos encontramos con que necesitamos provisionar un gran número de máquinas virtuales para laboratorios o para generar granjas virtuales para alguna aplicación.
Por lo general, cuando llega ese momento, no tenemos preparado un sistema de provisión que nos instale los sistemas operativos tal como queremos, con el nivel de parcheo necesario, las aplicaciones pertinentes, … Sino que nos encontramos con que no nos queda otra que instalar una a una las máquinas que debemos desplegar.
Por lo general esto lo podríamos solucionar con software como System Center Configuration Manager o con algún otro software que cumpla el mismo propósito, pero aquí partimos que de que no tenemos ningún software de este estilo sino que debemos de trabajar “a pedal”.
Bueno, pues si en alguna ocasión os habéis encontrado en esta situación, os voy a decir como desplegar de manera más o menos rápida un buen número de máquinas virtuales con la misma configuración.
NOTA:
Hay que tener en cuenta que saldrán todas las máquinas exactamente iguales por lo que las IP, nombres de máquinas y números de licencia serán los mismos, pero para casos en los que tenemos un licenciamiento múltiple viene realmente bien.
El primer paso es parar la máquina virtual que hace de máquina origen.
A continuación nos ponemos sobre ella y seleccionamos “Exportar…”.
Damos la ruta de destino.

Esperaremos un momento mientras se crea la máquina exportada. El tiempo varía en función de la carga del servidor y del tamaño de la máquina a exportar.

Una vez hecha la copia editaremos el nombre y lo cambiaremos por el nuevo nombre. En este caso lo cambiaremos de “sw2k8r2Ent004” a “sw2k8r2Ent005”.
Accedemos a la carpeta de la máquina y vemos que hay tres carpetas y archivo. El archivo es el config.xml mientras que las tres carpetas son Snapshots, que contiene las instantáneas que hayamos hecho a la máquina de origen, Virtual Hard Disks que contiene el disco duro virtual o VHD y Virtual Machines que contiene el archivo EXP.

El primero a modificar es el config.xml, aunque esto depende del gusto de cada uno.

Para editarlo nos posicionamos sobre el y seleccionamos “Editar”.
En el archivo buscamos el TAG <source type=”string”> y vemos que dentro de este tenemos la ruta al archivo VHD que contiene dos veces el nombre de la máquina por lo que deberemos cambiarlo.

Ahora accedemos a la carpeta “Virtual machines” y editamos el archivo EXP.

Buscamos la cadena del nombre antiguo y lo sustituimos por el nuevo. Esta tarea podemos hacerla de manera semiautomática usando “Reemplazar” (Ctrl+R).

Por último debemos cambiar el nombre del archivo VHD para que se corresponda con el nombre de la nueva máquina.

Hecho esto ya podemos volver a la consola de Hyper-V e importar la nueva máquina. Para ello nos posicionamos sobre el nombre del servidor y seleccionamos “Importar máquina virtual…”.

Marcamos “Copiar la máquina virtual (Crear un identificador único nuevo)” y seleccionamos la “Ubicación”.

El proceso será casi instantáneo.

A pesar de esto os recomiendo esperar un rato para levantar la máquina virtual.

Los warnings suelen ser normales y os recomiendo leerlos para evitar sustos.
A continuación podréis cambiar lo que sea necesario en lo que respectan configuraciones de red, etc y levantar la máquina.
Si la máquina arranca es que habéis hecho todo bien, sino os recomiendo que reviséis los eventos de sistema y/o reiniciéis el servicio de Hyper-V.
Gracias a Santos Pardos (MVP de Virtual Machine) por la información que me ha permitido escribir este artículo y ahorrar mucho tiempo de trabajo 😉
Un saludo

Por jioller

6 comentarios en «Clonar máquinas virtuales en Hyper-V (Windows 2008)»
  1. Excelente ayuda.
    Solo para sumar algo mas, si la VM tiene snapshot, entonces ademas debemos editar el archivo exp que se encuentra en el patch «Snapshots» con el nuevo nombre de la VM.
    Gracias.
    G.

Deja una respuesta

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