Cómo Convertir un Servidor Físico Linux a una VMware VM: Recorrido completo
La ejecución de servidores en máquinas virtuales le proporciona una lista de ventajas como escalabilidad, uso racional de recursos, alta disponibilidad, equilibrio de carga, gestión cómoda, funciones de protección de datos, etc. Por esta razón, es posible que desee migrar algunos de sus servidores físicos a máquinas virtuales. Este proceso también se conoce como conversión física a virtual, y se conoce por las siglas P2V.
VMware es uno de los líderes del mundo informático en soluciones de virtualización y Linux es uno de los sistemas operativos más fiables que funcionan en servidores. Esta entrada del blog explica la importancia de Linux Server Backup y cómo convertir un servidor Linux físico en una máquina virtual (VM) que se ejecuta en un host ESXi en vSphere. Se consideran dos métodos diferentes de conversión VMware P2V Linux en un ejemplo de Ubuntu 18.
Método 1 – Uso de VMware vCenter Converter
VMware vCenter Converter Standalone es una aplicación gratuita que se puede instalar en Windows para convertir máquinas físicas Windows, máquinas físicas Linux, Hyper-V VMs, VMware VMs y VMs que se ejecutan bajo Red Hat KVM o RHEL XEN. Entre los tipos de destino compatibles se incluyen: VMs para host ESXi no gestionado; VMs para host ESXi gestionado por vCenter Server; VMs para VMware Workstation; VMs para VMware Fusion.
La conversión de una máquina virtual Hyper-V a una máquina virtual VMware que reside en un host ESXi se explicó en esta entrada del blog.
Principio de funcionamiento
Al convertir una máquina física Linux encendida en una máquina virtual del formato VMware ESXi, VMware vCenter Converter Standalone no instala un agente en la máquina Linux de origen (a diferencia de las máquinas Windows). El proceso de conversión puede dividirse en dos etapas principales.
Fase 1. VMware Converter se conecta a una máquina Linux de origen a través de SSH y permite seleccionar los componentes que se van a copiar, como discos virtuales y particiones. Según los componentes seleccionados de la máquina física Linux de origen y los ajustes configurados de la máquina virtual de destino, el conversor creará una máquina virtual de ayuda.
Fase 2. Cuando se seleccionan todos los componentes necesarios y se configuran los ajustes de red de la VM de ayuda, VMware Converter crea una VM de ayuda en un host ESXi y almacenes de datos de destino. A continuación, el conversor inicia la VM de ayuda que arranca desde la imagen ISO de la VM de ayuda, y copia todos los datos necesarios de una máquina Linux de origen a una VM de destino que tiene el estado de VM de ayuda hasta que finalice el proceso de conversión.
Se despliega una máquina virtual de ayuda a partir de la imagen ISO basada en Linux almacenada en el sistema de archivos del equipo Windows en el que está instalado el conversor. La ubicación de los archivos converter-helper-vm.iso y converter-helper-vm-x64.iso utilizados para arrancar una VM de ayuda en un host ESXi es “C:\Program Files (x86)\VMware\VMware vCenter Converter Standalone\” de forma predeterminada.
Después de copiar los datos en la máquina virtual de destino, VMware Converter puede volver a configurar la máquina virtual si se han seleccionado las opciones adecuadas para el job de conversión.
Requisitos del sistema
Hay algunos requisitos que deben cumplirse para realizar la conversión de VMware P2V Linux con VMware converter:
- Una máquina física que ejecute Linux debe estar encendida.
- Un host ESXi debe estar encendido y accesible a través de la red. El cliente y el servidor de vCenter Converter Standalone deben poder acceder el uno al otro. Los puertos TCP 22, 443, 902 se utilizan por defecto para la comunicación de red.
- El cargador de arranque GRUB debe ser utilizado en la máquina física Linux a convertir. LILO no es compatible.
- Los discos ópticos deben expulsarse de las unidades de disco óptico.
- El servidor SSH debe configurarse en una máquina Linux física (la máquina de origen).
Nota: El servidor SSH se puede instalar en Ubuntu Linux con el comando:
apt-get install openssh-server
El acceso remoto para el usuario con la contraseña a través de SSH se puede configurar editando el archivo sshd_config:
vim /etc/ssh/sshd_config
Crear o descomentar la cadena:
PasswordAuthentication yes
Guarde el archivo de configuración
:wq
Reinicie el demonio sshd (servicio)
service sshd restart
Conversión P2V VMware Converter Linux: Guía paso a paso
Para realizar la conversión Linux P2V, debe seguir los siguientes pasos:
1. Descargue VMware vCenter Converter Standalone desde el sitio web oficial.
2. Instale el conversor en un equipo Windows que pueda conectarse a su equipo Linux a través de la red. El proceso de instalación es sencillo: basta con ejecutar el archivo EXE y seguir las recomendaciones del asistente de instalación. En el ejemplo de hoy se utiliza VMware Converter 6.2.
3. Ejecute VMware vCenter Converter Standalone.
4. Haga clic en Convert machine.
5. Source system. Seleccione el sistema de origen en el asistente de conversión de máquinas que está abierto. Seleccione Powered on y Remote Linux machine. Especifique la dirección IP, el nombre de usuario y la contraseña utilizados en la máquina Linux remota. Recuerde que el servidor SSH debe estar configurado en la máquina Linux y que un cortafuegos no debe bloquear las conexiones SSH en este paso. De lo contrario, se mostrará el mensaje de error: Unable to SSH to the source machine. Check if a firewall is blocking access to the SSH daemon on the source machine. El usuario que ha especificado debe poder iniciar sesión en la consola Linux a través de SSH utilizando la combinación de nombre de usuario y contraseña o un archivo de clave privada. Para este ejemplo se toma un usuario llamado user1 con una contraseña.
5.1. Haga clic en View source details para ver los detalles de su máquina Linux remota que debe convertirse en una máquina virtual VMware. Pulse Next para continuar y pasar al siguiente paso.
Si ve la advertencia de seguridad (advertencia de huella digital de host remoto), haga clic en Sí para conectarse.
A veces el conversor no puede ejecutar comandos en su máquina Linux remota y muestra la advertencia: Unable to query the live Linux source machine. Make sure that you can run sudo without entering a password when logged in to the source machine over SSH as your_username.
En este caso, tienes que editar el archivo /etc/sudoers y hacer que tu usuario pueda ejecutar sudo sin introducir la contraseña. En lugar de editar /etc/sudoers manualmente, utilice el siguiente comando:
visudo
Añada la línea al final del archivo como sigue:
user1 ALL=(ALL) NOPASSWD: ALL
Donde user1 es el nombre de nuestro usuario. Debe introducir su nombre de usuario. Pulse Ctrl+X para salir y pulse Y (Sí) para guardar los cambios en el archivo.
6. Destination system. Selecciona el sistema de destino. Por defecto, el tipo de destino se define como VMware Infrastructure virtual machine si está convirtiendo una máquina Linux física, y esta es la única opción disponible para convertir una máquina Linux física en una VMware VM. Esto significa que la máquina virtual de destino se ejecutará en un servidor ESXi o en el clúster VMware vSphere. Si el host ESXi en el que desea ejecutar la VM convertida está gestionado por vCenter, seleccione la dirección IP de su vCenter Server y defina las credenciales del administrador de vCenter u otro usuario que tenga privilegios administrativos para gestionar vCenter Server.
Nota: No se puede convertir una máquina física Linux a una VM del formato VMware Workstation con VMware vCenter Converter Standalone.
Si ve advertencias sobre certificados, puede pulsar Ignore para continuar.
7. Destination Virtual Machine. Seleccione el centro de datos para almacenar la máquina virtual e introduzca el nombre de la máquina virtual de destino, por ejemplo, Ubuntu18-04-vm.
8. Destination Location. Seleccione un host ESXi para ejecutar la máquina virtual y un almacén de datos para almacenar los archivos de la máquina virtual. También puede seleccionar la versión de la máquina virtual. Por defecto, se selecciona la versión más alta de máquina virtual soportada. En este caso, es la versión 13 porque se utiliza ESXi 6.5.
9. Options. En este paso, puede editar diferentes opciones de conversión.
Data to copy. Puede seleccionar todos los volúmenes o volúmenes personalizados para copiar y seleccionar el tipo deaprovisionamiento del disco virtual (aprovisionamiento grueso o fino). También es posible almacenar cada disco virtual en un almacén de datos diferente. Deje marcada la casilla “Create optimized partition layout”. Esta opción se utiliza para optimizar la alineación de las particiones de disco.
Devices. Ajuste la cantidad de memoria necesaria para la máquina virtual de destino en la pestaña Memory. Configure el controlador de disco, el número de procesadores y los núcleos de procesador en la pestaña Other.
Networks. Seleccione el número de adaptadores de red virtuales que se conectarán a una máquina virtual. A continuación, seleccione la red virtual a la que debe conectarse cada adaptador de red, el tipo de controlador de red y marque la casilla Connect at power-on si es necesario.
Advanced options. Los ajustes posteriores a la conversión se encuentran en esta sección. En nuestro caso, para convertir un servidor físico Linux en una máquina virtual VMware, sólo está disponible la opción Reconfigure destination virtual machine option de destino. Esta opción se utiliza para configurar el gestor de arranque, actualizar los controladores utilizados por el sistema operativo para que estén más optimizados para ejecutar una máquina virtual en el entorno virtual VMware (con el hardware virtual adecuado).
Red VM de ayuda. Durante el proceso de conversión de un servidor Linux a una VM, VMware vCenter Converter crea una VM de ayuda en el host/almacén de datos de destino. La máquina virtual de ayuda debe tener acceso a través de la red a la máquina física de origen que ejecuta Linux para poder clonar todos los archivos de la máquina de origen. En esta sección, puede configurar la dirección IP, la máscara de red, la puerta de enlace y los servidores DNS utilizados para la conexión de red de la máquina virtual de ayuda.
10. Summary. Compruebe todos los ajustes de conversión para su conversión P2V Linux y si todo es correcto, pulse Finish para iniciar el proceso de conversión.
11. Espere a que finalice el proceso de conversión. La duración de la conversión depende de la cantidad de datos almacenados en los discos de la máquina Linux de origen. Si, una vez finalizada la conversión, ve el estado Completed del job de conversión en VMware vCenter Converter, puede iniciar la máquina virtual Linux de destino en la interfaz de VMware vSphere Client, VMware Host Client o VMware Workstation.
Sin embargo, a veces el proceso de conversión P2V de la máquina Linux puede terminar en 97% con el error:
FALLÓ: Se ha producido un error durante la conversión: ‘GrubInstaller::InstallGrub: /usr/lib/vmware-converter/installGrub.sh failed with return code: 127, and message: FATAL: kernel too old Error running vmware-updateGrub.sh through chroot into /mnt/p2v-src-root Command:
chroot "/mnt/p2v-src-root" /vmware-updateGrub.sh "GRUB2" "(hd0)" "(hd0,1)" /vmware-device.map "grub2-install" '
Este problema puede ocurrir porque el cargador de arranque GRUB no fue configurado correctamente por VMware vCenter Converter en la VM de destino. Si intenta iniciar la máquina virtual Linux después de la conversión, obtendrá el error: Error loading operating system.
¿Cómo se puede resolver este problema de VMware Converter Linux?
1. Es necesario arrancar desde el medio de instalación de Ubuntu y utilizarlo como disco de rescate. Edite los ajustes de la VM utilizando VMware vSphere Client, VMware Host Client o VMware Workstation (VM > Edit Settings).
2. En los ajustes de Hardware, seleccione la unidad de CD/DVD de la máquina virtual y seleccione el medio de arranque de la instalación de Ubuntu. En nuestro ejemplo, utilizamos la imagen de disco ISO de instalación de Ubuntu 18.04 que se encuentra en el almacén de datos, accesible por el host ESXi en el que reside la máquina virtual Linux tras la conversión. No olvides marcar la casilla Connect at Power On ender.
3. Después de iniciar la VM, pulse F2 para entrar en la configuración de la BIOS de la VM. Seleccione CD-ROM como primer dispositivo de arranque en la sección Boot.
A continuación, vaya a Exit > Exit Saving Changes.
Como alternativa, puedes cambiar el orden de arranque una vez pulsando Esc en lugar de F2 justo después de iniciar una VM.
4. Después de arrancar desde el medio de instalación de Ubuntu, seleccione Try Ubuntu en la pantalla de Welcome. Espere hasta que Ubuntu se cargue desde el Live DVD y verá Ubuntu Desktop.
5. Abra la consola de Ubuntu y obtenga los privilegios de root.
sudo -i
6. Listar los discos disponibles.
ls -al /dev/sd*
fdisk -l
En nuestro ejemplo, se utiliza el esquema de particionado de disco más simple para Ubuntu instalado en la máquina física. Linux se instala en la única partición /dev/sda1 que representa todo el disco. Tienes que detectar qué partición se utiliza para el arranque de Linux y contiene el directorio /boot/ o está montada en el directorio /boot/.
7. Puede encontrar la partición utilizada para arrancar Linux con parted:
parted /dev/sda
unit MB
p free
Ahora puedes ver qué partición se utiliza para arrancar Linux (la bandera de boot está presente en esa cadena). Después de eso, puede quit parted.
quit
Nota: Si usas un esquema de particionado manual y una partición de arranque separada para arrancar Linux, tu lista de particiones sería diferente, pero deberías encontrar de forma similar la partición con la bandera de boot.
8. Cree el directorio en el disco RAM y monte las particiones utilizadas por Ubuntu. Si Ubuntu está instalado en una sola partición, utilice comandos como:
mkdir /mnt/ubuntu18
mount /dev/sda1 /mnt/ubuntu18
Nota: Si Ubuntu utiliza varias particiones, cree directorios separados y monte cada partición en el directorio apropiado:
mkdir /mnt/ubuntu18/boot
mkdir/mnt/ubuntu18/root
mount /dev/sda1 /mnt/ubuntu18/boot
mount /dev/sda2 /mnt/ubuntu18/root
etc.
9. Instale Vim (el editor de texto).
apt-get install vim
10. Compruebe el identificador de disco para cada partición de disco. Necesita conocer el UUID de la partición que contiene el directorio /boot (o la partición montada en el directorio /boot ). Recuerda este nuevo UUID. En nuestro caso, esta partición es /dev/sda1
blkid
11. Edite el archivo /etc/fstab en el disco virtual utilizado por la instancia instalada de Ubuntu. El archivo /etc/fstab se encuentra en el directorio temporal en el que hemos montado el sistema de archivos raíz de Ubuntu (/mnt/ubuntu18/etc/fstab).
vim /mnt/ubuntu18/etc/fstab
Cambie el UUID de cada partición en /etc/fstab para hacer posible el montaje automático de la partición en el arranque de Linux. Cambie los antiguos valores UUID utilizados para los discos en una máquina física Linux por los nuevos valores UUID utilizados en una nueva máquina virtual. En este sencillo ejemplo, sólo se utiliza una partición /dev/sda1 y debe montarse en el directorio raíz (/). Por lo tanto, debemos cambiar 2516177b-e9a9-4502-bdae-a3626fe3ab0a por dd05b02c-8772-4ec2-9340-2473ec8c2f8b.
Guarde los cambios y quit vim.
:wq
Nota: Si tu Linux está usando múltiples particiones, puede que necesites cambiar el valor UUID para otras particiones o simplemente definirlas como sda2, sda3, sdb1, sdb2 etc. para hacer posible montar esas particiones automáticamente en el arranque de Linux.
12. Edite el archivo de configuración de GRUB que normalmente se encuentra en el directorio /boot/grub/. Recuerde el directorio temporal en el que ha montado una partición que contiene archivos del directorio /boot/. Después de convertir una máquina física Linux en una máquina virtual, el UUID del disco ha sido cambiado en la VM de destino y, por esta razón, el cargador de arranque (GRUB) no puede arrancar desde la partición necesaria. En nuestro caso, editamos el archivo grub.cfg con el comando:
vim /mnt/ubuntu18/boot/grub/grub.cfg
13. Sustituya el UUID antiguo por el nuevo. El UUID aparece varias veces en el archivo de configuración y editar este valor manualmente no es conveniente. El editor de texto vim permite realizar la sustitución automática del texto de origen por el texto de destino mediante el comando:
:%s/source_text/target_text/g
Donde %s significa que todos los valores coincidentes en todo el archivo de texto deben ser reemplazados.
En nuestro ejemplo actual, utilizamos el comando:
:%s/2516177b-e9a9-4502-bdae-a3626fe3ab0a/dd05b02c-8772-4ec2-9340-2473ec8c2f8b/g
Escribe los cambios en el archivo de sólo lectura y quit vim.
:wq¡!
Nota: Si su Linux utiliza múltiples particiones, reemplace los valores UUID de todas las particiones cuyos UUIDs se mencionan en el archivo grub.cfg.
14. Ahora tiene que reinstalar GRUB al gestor de arranque en el mismo directorio donde estaba instalado antes el gestor de arranque. En nuestro ejemplo, GRUB fue instalado en el directorio /boot y el directorio /boot es ahora accesible temporalmente como /mnt/ubuntu18/boot en nuestro ejemplo. El disco utilizado para arrancar Ubuntu es /dev/sda en consecuencia.
grub-install --boot-directory=/mnt/ubuntu18/boot /dev/sda
15. Desmontar todas las particiones montadas anteriormente:
umount /dev/sda1
16. Apagar la VM
init 0
17. Reconfigure los ajustes de arranque para arrancar desde un disco duro virtual, no desde CD-ROM en los ajustes de la VM.
18. Encienda la máquina virtual.
19. Ahora la VM puede arrancar desde su disco duro virtual con GRUB en un host ESXi.
Así, ya sabe cómo realizar la conversión VMware P2V Linux con VMware vCenter Converter Standalone. Desafortunadamente, el convertidor VMware versión Linux no está disponible, pero si quieres convertir tu servidor físico Linux a una VM VMware usando sólo máquinas Linux, deberías familiarizarte con el segundo método de conversión P2V Linux.
Método 2 – Conversión VMware P2V Linux sin VMware Converter
El segundo método para convertir una máquina física Linux en una máquina virtual del formato ESXi no requiere VMware vCenter Converter Standalone. Este método puede utilizarse para usuarios y administradores que no dispongan de una máquina Windows en sus entornos (como recordará, VMware vCenter Converter sólo puede instalarse en Windows). La idea detrás del segundo método de conversión VMware P2V Linux es la siguiente:
- Cree imágenes de sus discos físicos utilizados en un servidor Linux físico con la utilidad dd
- Convertir las imágenes resultantes en imágenes del formato vmdk
- Crear una nueva máquina virtual en VMware Workstation (que puede ejecutarse en Linux o Windows) utilizando los discos virtuales existentes para la nueva máquina virtual.
- Exportar la VM desde un formato de estación de trabajo VMware a una plantilla OVF
- Crear una nueva máquina virtual en un host ESXi a partir de la plantilla OVF
En nuestro ejemplo, Ubuntu 18 está instalado en una máquina física que debe ser convertida, ESXi 6.5 y vCenter 6.5 se utilizan como destino, y VMware Workstation 15 se utiliza como punto de transición en el proceso de conversión P2V Linux.
Recorrido paso a paso
1. En el servidor Linux físico, ejecute la utilidad dd (duplicador de datos) para cada disco físico (/dev/sda, /dev/sdb, etc.) y cree la imagen de cada disco. Puedes conectar un disco duro USB a tu máquina Linux física y almacenar las imágenes hechas con la utilidad dd en ese disco duro USB. Más tarde, puedes conectar ese disco duro USB a una máquina en la que deba crearse una máquina virtual. En el ejemplo actual, todas las particiones utilizadas por Linux se encuentran en el disco /dev/sda:
dd if=/dev/sda of=/media/user1/data/sda.img bs=8M conv=sync,noerror status=progress
Donde:
if=/dev/sda – el archivo de entrada que es el disco físico completo;
of=/media/user1/data/sda.img – la ruta para el archivo de imagen de salida que se encuentra en el disco externo en este caso.
bs=8M – el tamaño del bloque es de 8 MB. Esta opción aumenta la velocidad ya que dd copia datos utilizando porciones de datos de 512-Bytes por defecto
conv=sync,noerror – se utiliza para evitar que dd se detenga en caso de error al leer datos de un disco fuente (archivo).
status=progress – utilice esta opción para mostrar el progreso de la tarea en la consola para mayor comodidad
2. Instala qemu que es una aplicación de código abierto para la emulación de hardware. Puedes instalar qemu en cualquier máquina Linux.
apt-get install qemu
3. En la consola Linux, ve al directorio donde se encuentran los archivos img que creaste antes. Convierte imágenes de tus discos hechas con la utilidad dd del formato de archivo img al formato vmdk. Qemu puede utilizarse para esta tarea. Convertimos una imagen de disco en nuestro ejemplo:
qemu-img convert -o compat6 sda.img -O vmdk sda-vmware.vmdk
Ahora las imágenes de disco están convertidas al formato vmdk y están listas para ser abiertas en VMware Workstation. Como recordarás, el formato de los discos virtuales VMDK es diferente para VMware Workstation y VMware ESXi. Los detalles sobre el formato de archivo VMDK se explican aquí. Necesita exportar una VM desde VMware estación de trabajo a una plantilla OVF y luego importar una VM desde la plantilla OVF a un host ESXi.
Asegúrese de que VMware Workstation está instalado en cualquiera de sus ordenadores. En nuestro ejemplo, VMware Workstation 15 está instalada en una máquina que ejecuta Ubuntu 18, pero no en la máquina Linux de origen que debe convertirse en una VM (no utilizamos Windows para este método de conversión P2V Linux). El algoritmo para máquinas Windows con VMware Workstation es similar.
4. Cree un nuevo directorio en la máquina con VMware Workstation instalado, por ejemplo, /vms/P2V_Linux
mkdir /vms/P2V_Linux
5. Copia tus archivos vmdk convertidos por qemu a ese directorio. En este caso, copiamos el archivo sda-vmware.vmdk en ese directorio.
6. Cree una nueva máquina virtual en VMware Workstation:
File > New virtual machine
Se abre un New Virtual Machine Wizard. Deberá superar todos los pasos de configuración de este asistente:
Virtual Machine Configuration. Seleccione Personalizado (avanzado) para permitir la configuración de las opciones de avance. Pulsa Next para continuar.
Virtual Machine Hardware Compatibility. Seleccione la versión de hardware de máquina virtual necesaria, por ejemplo, Workstation 15.x.
Guest Operation System Installation. Seleccione I will install the operating system later.
Guest Operating System. Seleccione Linux y, a continuación, Ubuntu 64 bits en el menú desplegable.
Virtual Machine Name. Introduzca el nombre y establezca la ubicación de su máquina virtual. En este ejemplo, el nombre de la VM es P2V Linux y su ubicación es /vms/P2V_Linux_VM/
Processor configuration. Seleccione el número de procesadores y el número de núcleos de procesador de acuerdo con la configuración utilizada en su máquina física Linux que está convirtiendo en una VMware VM.
Memory for the Virtual Machine. Establezca la cantidad de memoria que sea al menos igual a la cantidad de memoria de su ordenador Linux físico.
Network Connection. Seleccione el tipo de red, por ejemplo, Bridged networking. Asegúrese de que el servidor Linux de origen está desconectado para evitar conflictos de red.
I/O Controller Types. Seleccione el valor recomendado. En este ejemplo, se selecciona SCSI Controller: LSI Logic (Recommended).
Virtual Disk Type. Seleccione el tipo de disco recomendado. En nuestro caso, es SCSI (Recommended).
Select a Disk. Seleccione la opción Use an existing virtual disk existente.
Select an Existing Disk. Busque el archivo vmdk apropiado de su disco /dev/sda convertido. En el ejemplo actual, el archivo sda-vmware.vmdk está seleccionado como disco virtual existente.
Nota: Si tiene varios discos duros en un servidor Linux físico de origen y varios archivos VMDK después de la conversión, seleccione el primer archivo vmdk convertido del disco /dev/sda. Añada otros discos manualmente tras la creación de la máquina virtual editando los ajustes de la máquina virtual.
Pulse Keep existing format para mejorar la compatibilidad.
Ready to Create Virtual Machine. Comprueba el resumen de la configuración y si todo es correcto, pulsa Finish.
Una vez creada la VM, puede comprobar la configuración de la VM antes de iniciarla.
Nota: Si ha convertido varios discos físicos en discos virtuales, añada los discos virtuales restantes haciendo lo siguiente:
- Haga clic en VM > Settings
- Haga clic en Add en la pestaña Hardware
- Seleccione Hard Disk
- Seleccione la opción recomendada (SCSI in our case)
- Pulse Use an existing virtual disk
- Seleccione un archivo de disco virtual
7. Encienda la máquina virtual en VMware Workstation (asegúrese de que todos los discos virtuales necesarios se han añadido a la configuración de la máquina virtual).
8. Una vez que su invitado Linux esté cargado en una máquina virtual, compruebe la conexión de red:
ifconfig
9. Instale VMware Tools en Linux ejecutándose en la VM. En Ubuntu, VMware Tools puede instalarse desde una imagen de disco ISO virtual o desde repositorios de software en línea.
apt-get install open-vm-tools
10. Si todo es correcto, apague la VM y prepárese para crear una plantilla OVF para migrar la VM a un host ESXi.
11. En la interfaz gráfica de usuario de VMware Workstation, haga clic en File > Export to OVF.
12. Guarde el archivo OVF en el directorio con su VM Linux, por ejemplo. En el ejemplo actual, la plantilla OVF se guarda en /vms/P2V_Linux_VM/
13. Abra VMware vSphere Client en su navegador web.
14. Vaya a Hosts and Clusters, y seleccione su host ESXi en el que desea ejecutar una VM después de la conversión.
15. Crear una máquina virtual a partir de una plantilla. Haga clic en Actions > Deploy OVF Template.
Se abre una nueva ventana del asistente de Deploy OVF Template que contiene 7 pasos:
1. Select an OVF Template. Haga clic en Local File y, a continuación, en Browse. Deberá seleccionar dos archivos: el archivo OVF de la plantilla VM y el archivo (archivos) VMDK del disco (discos) virtual. Si sólo selecciona un archivo de plantilla OVF, aparecerá un mensaje sobre los archivos que faltan y sus nombres. Los archivos deben ser accesibles desde un equipo en el que haya abierto VMware vSphere Client (los archivos deben estar almacenados en discos locales, recursos compartidos SMB o NFS, etc.).
2. Select a name and folder. Especifique un nombre de máquina virtual único y una ubicación de destino (un centro de datos o una carpeta de máquina virtual). En el ejemplo actual, el nombre de la máquina virtual es P2V_Linux.
3. Select a compute resource. En este paso, debe seleccionar un host o clúster ESXi en el que se ejecutará su máquina virtual.
Puede obtener el error en este paso: Issues detected with selected template. Details: – -1:-1:VALUE_ILLEGAL: No supported hardware versions among [vmx-16]; supported: [vmx-04, vmx-07, vmx-08, vmx-09, vmx-10, vmx-11, vmx-12, vmx-13].
Este error puede producirse cuando la versión de hardware establecida en la plantilla VM es superior a la versión de hardware soportada por un host ESXi.
Edite el archivo OVF en el editor de texto para solucionar este problema. Puede utilizar Vim en Linux. Vaya al directorio donde se encuentra la plantilla OVF y edite el archivo:
vim P2V_Linux.ovf
Encuentra la cadena como vmx-xx, donde xx es el número de la versión de hardware de la VM. La versión de hardware soportada más alta para ESXi 6.5 es 13 y en nuestra plantilla, la versión de hardware VM 16 está configurada.
Para encontrar el texto necesario en Vim, en el modo de navegación escriba:
/vmx-
Vamos a editar vmx-16 a vmx-12, por ejemplo, y guardar el archivo OVF.
Una vez que haya guardado los cambios en el archivo OVF, vuelva a VMware vSphere Client y haga clic en Next en el paso Select a compute resource del asistente de Deploy OVF Template.
4. Review details. En este paso puede verificar los detalles de la plantilla.
5. Select storage. Seleccione el almacén de datos de destino en el que almacenar la configuración y los archivos de disco de la máquina virtual y seleccione el formato del disco virtual (Lazy Zeroed Thick, Eager Zeroed Thick o Thin Provision).
6. Select networks. Seleccione una red para cada adaptador de red virtual. Debe configurar cada adaptador de red para que se conecte a la red adecuada.
7. Ready to complete. Revise la configuración y pulse Finish para iniciar la creación de la máquina virtual.
Espere hasta que se cree una nueva máquina virtual a partir de la plantilla.
16. Cuando la importación de la VM desde la plantilla OVF haya finalizado, encienda la VM en su host ESXi. Más información sobre plantillas VM en esta entrada de blog. Si aparece el mensaje “Do you want to try to connect this virtual device every time you power on the virtual machine?”, responda que no desea conectar ese dispositivo cada vez durante el arranque de la máquina virtual haciendo clic en No.
Se ha convertido un servidor físico Linux en una máquina virtual sin utilizar Windows y VMware vCenter Converter Standalone. El proceso de conversión VMware P2V Linux se explicó en un ejemplo de Ubuntu Linux. Si necesita convertir servidores físicos que ejecutan otras distribuciones de Linux, como SUSE o Red Hat, en máquinas virtuales VMware, utilice el mismo algoritmo, pero tenga en cuenta que algunos comandos y ubicaciones de los archivos de configuración pueden ser diferentes. En lugar de usar el gestor de paquetes apt-get en SUSE, deberías usar zypper y en Red Had usar yum. Es posible que tenga que volver a configurar los ajustes de red de la máquina virtual, como la dirección IP, la puerta de enlace predeterminada, el servidor DNS, etc.
Conclusión
La conversión de un Servidor Linux físico a una máquina virtual VMware se puede hacer utilizando una variedad de métodos – con VMware vCenter Converter Standalone que requiere una máquina Windows, y mediante el uso de utilidades Linux junto con VMware Workstation. Al utilizar cualquiera de estos métodos, es posible que tenga que editar manualmente la configuración de la máquina virtual. Cuando se utiliza el primer método, sólo un host ESXi puede ser utilizado como destino para la conversión P2V Linux, mientras que el segundo método puede ser utilizado para convertir una máquina física Linux a ambos formatos VMware ESXi y VMware Workstation.