Virtualización con Multipass
¿Has escuchado antes sobre la alternativa de virtualización con Multipass? ¿Te interesaría crear máquinas virtuales Linux de manera inmediata, pero las interfaces gráficas te parecen lentas? Entonces este artículo puede ser lo que estás buscando.
Si eres un desarrollador, administrador de sistemas, ingeniero DevOps o de algún perfil similar en el cual constantemente requieras trabarjar con máquinas virtuales Linux desechables para pruebas rápidas, Multipass es una excelente opción.
Quizá se te venga a la mente algo como Vagrant, pero Multipass es a mi parecer, algo mucho más simple y ligero. Se ajusta mejor a mis necesidades diarias.
Introducción
Multipass es un gestor de máquinas virtuales (VM) diseñado para desarrolladores que utilizan sistemas operativos Linux, Windows o macOS. Se basa en la tecnología de hipervisores nativos de cada plataforma, como KVM en Linux, Hyper-V en Windows y QEMU en macOS, lo que garantiza un rendimiento óptimo y un bajo consumo de recursos. VirtualBox también está soportado en cualquiera de las 3 plataformas antes mencionadas.
A diferencia de otras herramientas de virtualización más complejas, Multipass se centra en la simplicidad y la facilidad de uso. Crear una nueva VM es tan simple como ejecutar un comando en la terminal, y puedes gestionarlas fácilmente desde una interfaz de línea de comandos o una interfaz gráfica intuitiva.
Sí, su interfaz es por línea de comandos, precisamente para un uso inmediato con un único comando sin necesidad de usar los asistentes gráficos de múltiples pasos a los que estamos acostumbrados. ¿Qué permite esto? Agilidad, punto.
¿Por qué Multipass?
- Ligero y eficiente: Aprovecha los hipervisores nativos para un rendimiento óptimo.
- Fácil de usar: Crea, gestiona y elimina VMs con comandos simples o un menú gráfico sencillo.
- Soporte para imágenes de Ubuntu: Listo para usar con imágenes de Ubuntu populares, y compatible con otras distribuciones o imágenes personalizadas.
- Gratis y de código abierto: Ideal para usuarios individuales y equipos pequeños.
Instalación
En este enlace puedes descargar Multipass para Linux, Windows o Mac. En este artículo haré la demostración para Windows.
Como la mayoría de programas en Windows, la instalación es solo dar clic en «Siguiente» varias veces y esperar que termine. Es así que solo mostraré abajo el único pantallazo que considero importante:
Si usas Windows 10 Pro o Enterprise, versión 1803 o superior, entonces es mejor utilizar Hyper-V. Sino, entonces asegúrate de primero instalar VirtualBox antes de Multipass.
Importante: Multipass requiere que la red que usa Windows esté configurada como Privada.
Uso con menú gráfico
Una vez instalado, podemos encontrar Multipass en el menú inicio.
En la bandeja del sistema, un ícono naranja (encerrado en rojo en la imagen) permite gestionar tareas básicas:
Al dar clic en «Open Shell», Multipass crea una máquina virtual Ubuntu de nombre primary con 1 CPU, 1 GB de memoria y 5 GB de disco.
Esperamos un poquito a que se cree la máquina…
¡Listo! Ya tenemos la máquina Ubuntu creada:
Uso con línea de comandos
Esta es la parte que más me interesa, así que a continuación comparto una lista de los comandos más frecuentes para gestionar las máquinas virtuales con Multipass.
Buscar imágenes de máquinas virtuales
Si bien la mayoría de imágenes disponibles son solo de Ubuntu, hay algunas otras diferentes. Esto se puede buscar así:
multipass find
Crear una máquina Ubuntu 22.04 básica
Vamos a crear una máquina Ubuntu 22.04 según su nombre de release:
multipass launch jammy
Crear una máquina Ubuntu 22.04 personalizada
Similar al anterior, pero personalizando la cantidad de recursos y el nombre de instancia de la máquina:
multipass launch --name vm01 --cpus 2 --memory 3G --disk 10G jammy
Listar las máquinas virtuales
Esto es súper sencillo:
multipass list
Abrir sesión en una máquina virtual
Solo debemos indicar el nombre de la instancia de la máquina:
multipass shell vm01
Ver detalles de una máquina
También, solo indicamos el nombre de la máquina:
multipass info vm01
Copiar archivos a la máquina
Copiar un archivo desde nuestra máquina física o host hacia la máquina virtual se hace así:
multipass transfer D:\Downloads\file.txt vm01:/tmp/
Montar un directorio del host a la máquina virtual
Primero se tiene que habilitar el soporte para montaje privilegiado:
multipass set local.privileged-mounts=true
Luego ya se puede montar un directorio del equipo físico o host en la instancia de máquina virtual:
multipass mount D:\Downloads vm01:/mnt/downloads/
Ejecutar comandos en la máquina virtual
Esto es sencillo y se hace así (ver ejemplos):
multipass exec vm01 pwd multipass exec vm01 df -h multipass exec vm01 ls /mnt/downloads
Detener e iniciar máquinas virtuales
Así de apaga una instancia de máquina virtual:
multipass stop vm01
Y así se inicia:
multipass start vm01
Eliminar, recuperar y purgar máquinas
Este comando marca la máquina como eliminada:
multipass delete vm01
Realmente, la máquina no se elimina. Puede aún ser recuperada como sigue:
multipass recover vm01
Pero, si no intentamos recuperarla y deseamos eliminarla definitivamente, entonces hay que purgar las instancias marcadas como eliminadas:
multipass purge
Otros comandos y ayuda
Multipass acepta muchos otros más comandos. Para ver el listado se puede usar cualquiera de los dos siguientes comandos:
multipass multipass help
También, se puede consultar la ayuda de cualquiera de los comandos de Multipass así:
multipass help delete multipass help launch multipass help start
Conclusión
¿Te pareció sencillo? ¿Tuviste chance de probarlo? Si es así, podrás darme la razón de que es una herramienta súper simple y práctica.
Para mi uso personal diario me ayuda mucho para realizar tareas rápidamente con instancias de Multipass. Es una alternativa más rápida que usar Vagrant (aunque no es un mal producto). A veces un contenedor Docker no se ajusta a lo que necesito, y crear una máquina virtual instalada desde cero con Hyper-V, VirtualBox o VMware Workstation es algo muy tedioso y lento.
Es así que Multipass es una opción más para mi trabajo diario que sigo usando como complemento a las otras ya mencionadas, según la necesidad que se me presente.
Espero que este artículo te haya sido de utilidad como lo fue para mí esta herramienta.
Deja un comentario