Instalando VMware ESXi en una Raspberry Pi
¡Ole, ole y ole Rigodón! VMware mediante un fling nos presenta una nueva versión del hipervisor ESXi, para arquitecturas ARM, ¡qué maravilla! En este post veremos algo que no está soportado (por ahora), y no es más que cómo instalar ESXi en una Raspberry Pi 4. ¿para qué? Luego lo debatimos.
Bueno para probar esto necesitaremos una Raspberry Pi 4, nos vale una con 4GB de RAM, pero seguro que con la de 8GB lo disfrutamos más. Qué ganas de probar un HA o un vMotion me están entrando mientras escribo, qué nervios, tantos años esperando esta maravilla que sin duda alguna marcará un antes y un después en el mundo del IoT. Venga al turrón, qué necesitamos? 1 tarjeta microSD pequeña, da igual la capacidad ya que el hipervisor no irá instalado ahí, en la SD guardaremos la UEFI ‘únicamente’, necesitaremos también 2 pendrives USB, uno donde guardaremos los medios de instalación y otro donde haremos la instalación del ESXi. Antes de seguir, recordaros que tenéis aquí la web oficial del fling con toda su documentación y muchos más detalles.
Antes de empezar, necesitamos verificar que nuestra Raspberry Pi tiene la última EEPROM, para ello necesitamos previamente arrancar la Raspberry Pi con el SO Raspbian o ahora conocido como Raspberry Pi OS. Ejecutamos
sudo rpi-eeprom-update
Si tenemos alguna actualización deberemos instalar para tener la última EEPROM y reiniciaremos:
sudo rpi-eeprom-update -a sudo reboot
Bien, seguimos, ahora la tarjeta SD la tenemos que formatear con FAT32 y escribir en la etiqueta del volumen UEFI.
Nos descargaremos el último y oficial firmware de Raspberry Pi, extraemos el fichero firmware-master.zip, entramos en el directorio boot y eliminamos los ficheros kernel*.img, copiamos todo el contenido a la raíz de la tarjeta SD.
Descargamos también el último firmware UEFI de la comunidad para Raspberry Pi 4. Extraemos RPi4_UEFI_Firmware_v1.20.zip y copiamos todos los ficheros al mismo directorio raíz en la tarjeta SD, si pregunta si deseamos sobre escribir los ficheros diremos que sí.
Editamos config.txt y añadimos al final:
gpu_mem=16
Nos descargamos la imagen ISO de instalación de ESXi para ARM, con balenaEtcher por ejemplo podremos copiar la ISO a un pendrive USB que usaremos como medio de instalación.
Es momento de enchufarle la tarjeta SD y este pendrive USB a la Raspberry, y la encendemos!
Cuando arranque la UEFI presionamos ESC, tenemos que quitarle el límite de 3GB de RAM que viene por defecto. Ya que el hipervisor necesita al menos 4GB.
Pulsamos en “Device Manager”,
Pulsamos en “Raspberry Pi Configuration”
Pulsamos en “Advanced Configuration”,
Y en Limit RAM to 3GB, que estará en ‘Enabled’ lo deshabilitamos con ‘Disabled’,
F10 para grabar la nueva configuración de la UEFI & ‘Y’.
Si el disco USB de la Raspberry donde se va a instalar es menor a 128GB, tenemos que parar el proceso del boot justo dándole al Enter tras ver la pantalla de la UEFI. Pulsamos a continuación ‘Shift-O’ y escribimos en el prompt autoPartitionOSDataSize seguido del tamaño, ejemplo de 8GB:
runweasel cdromBoot autoPartitionOSDataSize=8192
A partir de ahora ya lo conocemos todos, sería el proceso de instalación de un ESXi normal, debemos instalar ESXi en una unidad USB que le conectemos.
Cuando acabemos, tras la instalación, desconectamos el USB de instalación, y reiniciamos, tendremos que volver a entrar en la configuración de la UEFI (con ESC). Y vamos a “Boot Maintenance Manager”,
Pulsamos en “Boot Options”,
Pulsamos en “Change Boot Order”,
Y pulsando la tecla de + debemos subir nuestra unidad USB al inicio de la lista. Grabamos con F10 y continuamos con el reinicio.
Y nada, por fin, si le dejamos ya tranquila, la Raspberry Pi arrancará el hipervisor VMware ESXi y al de unos minutos ya podremos conectarnos como es habitual mediante un navegador web a la UI. Si os fijáis detecta perfectamente el hardware y ya podremos comenzar a crear máquinas virtuales, y darle caña!
Y nada, una imagen txorra del DCUI para verificar que versión estamos corriendo. Ahora os abro debate, ¿cómo y para qué? A mí personalmente la capa virtual me viene genial para desplegar VMs y respaldarlas de manera centralizada, no veo por ahora la necesidad de montar un clúster más allá de para frikear, bueno espero que os haya gustado y cualquier comentario bienvenido, muchas gracias a todos por compartir en redes sociales!