Un servidor ESXi, un laboratorio Proxmox completo viviendo en su interior. La virtualización anidada funciona bien cuando dos configuraciones son correctas y falla silenciosamente cuando no lo son. Esta guía establece ambos, demuestra que KVM está vivo dentro de Proxmox y le dice honestamente para qué sirve esta configuración.
La virtualización anidada significa un hipervisor que se ejecuta dentro de una máquina virtual: Proxmox dentro de ESXi, con sus propias máquinas virtuales y contenedores dentro. Es el laboratorio más barato que existe: un servidor, dos plataformas para aprender y cero hardware adicional. Pero una máquina virtual ESXi predeterminada oculta las funciones de virtualización de la CPU a su huésped, por lo que una instalación estándar de Proxmox arranca bien y luego se niega a iniciar cualquier máquina virtual. Dos configuraciones solucionan eso: una en el lado de ESXi y otra en el lado de la red. Esta página realiza la configuración completa en orden y verifica cada capa antes de continuar.
Tres hechos, expresados claramente, porque todo laboratorio anidado debería comenzar con ellos. Primero: esta es una técnica de laboratorio. La propia documentación de Broadcom sobre vSphere dice que VMware no admite la ejecución de hipervisores de terceros en ESXi, aparte de casos estrechamente documentados como Hyper-V para seguridad basada en virtualización. Proxmox anidado en ESXi funciona y miles de laboratorios domésticos lo ejecutan, pero ningún proveedor atenderá su llamada de soporte al respecto.
Segundo: la CPU física debe tener Intel VT-x o AMD-V, habilitado en el BIOS del servidor. ESXi no puede pasar a través de una función que el hardware ha desactivado. Tercero: una configuración anidada es tan sólida como la capacidad disponible del host. El propio Proxmox necesita recursos y cada VM dentro de Proxmox los gasta nuevamente. Un host de 8 GB albergará un laboratorio decepcionante.
No lo enciendas todavía. El siguiente paso es mucho más fácil con la VM apagada.
Este es el escenario en el que se basa toda la configuración. Le dice a ESXi que entregue las extensiones de virtualización de la CPU (el indicador vmx en Intel, svm en AMD) a la VM de Proxmox, para que el propio hipervisor KVM de Proxmox pueda usarlas.
Requisitos de la documentación de Broadcom: compatibilidad de VM de ESXi 5.1 o posterior, y una CPU de generación Intel Nehalem o posterior (AMD Opteron Generación 3 o posterior) con VT-x o AMD-V en el BIOS.
La ruta basada en archivos: en los hosts donde es difícil acceder a la opción, existe el mismo conmutador en el archivo .vmx de la VM que la línea vhv.enable = "TRUE". Agréguelo solo mientras la VM esté completamente apagada: ESXi reescribe el archivo de una VM en ejecución y su edición desaparece.
Desde su PC, abra https://YOUR-PROXMOX-IP:8006. El navegador le advertirá sobre un certificado autofirmado, lo cual es normal para un Proxmox nuevo y es seguro pasarlo en su propia red de laboratorio. Inicie sesión como root con la contraseña que estableció.
El propio Proxmox hará ping, se actualizará y navegará perfectamente en este punto, que es exactamente la razón por la que este paso sorprende a la gente. Las máquinas virtuales dentro de Proxmox envían tramas de red que llevan sus propias direcciones MAC, y un grupo de puertos ESXi predeterminado descarta tramas cuya MAC de origen no es la MAC de la máquina virtual que conoce. Los invitados se quedan en silencio.
Haga esto en un grupo de puertos de laboratorio dedicado, no en el grupo de puertos que utilizan sus máquinas virtuales de producción; aceptar el modo promiscuo y las transmisiones falsificadas es una relajación deliberada de la seguridad del conmutador y solo pertenece al lugar donde viven los invitados anidados. Hay una página completa en esta serie sobre esta solución, porque es la razón más común por la que un laboratorio anidado "funciona a medias".
No confíes en las casillas de verificación, pregúntale a Proxmox. Abra su shell (UI web → su nodo → Shell) y ejecute:
ls -l /dev/kvm: el dispositivo debe existir. Sin /dev/kvm, sin aceleración de hardwarecat /sys/module/kvm_intel/parameters/nested: en Intel debería responder Y (en AMD, verifique kvm_amd de la misma manera)egrep -c "(vmx|svm)" /proc/cpuinfo: cualquier número superior a 0 significa que el indicador de virtualización llegó al invitadoSi alguno de estos falla, detenga y arregle el lado ESXi (paso 3) en lugar de luchar contra Proxmox; el problema nunca está dentro del instalador.
host: la CPU emulada predeterminada oculta los mismos indicadores que acaba de exponer y host pasa la CPU real.Comience de manera liviana y honesta: una máquina virtual Linux, luego contenedores y luego invitados más pesados. El video de arriba muestra esta compilación exacta en la pantalla si algún paso se ve diferente en su versión de ESXi.
Vea la compilación anidada de Proxmox realizada en vivo (creación de VM, configuración de exposición y el primer invitado) en el video completo.
▶️ Watch Full VideoEse es el síntoma característico de que la configuración de exposición está desactivada. Proxmox en sí es solo un sistema Linux, por lo que se instala y arranca normalmente sin extensiones de virtualización. Sin embargo, su hipervisor KVM necesita el indicador de CPU vmx o svm. Edite la VM Proxmox en ESXi, expanda la CPU y marque Exponer virtualización asistida por hardware al sistema operativo invitado. Luego verifique dentro de Proxmox con ls -l /dev/kvm: el dispositivo debería existir.
No, y por dos motivos distintos. Rendimiento: cada VM anidada paga un impuesto a dos hipervisores, por lo que el trabajo de la CPU y el disco es considerablemente más lento que en cualquiera de las plataformas por sí sola. Soporte: La documentación de vSphere de Broadcom indica que VMware no admite la ejecución de hipervisores de terceros en ESXi fuera de la funcionalidad específicamente documentada. Un laboratorio anidado sirve para aprender, probar y ensayar: las cargas de trabajo importantes pertenecen al hardware básico.
Casi siempre las políticas de seguridad del grupo de puertos ESXi. Las máquinas virtuales anidadas transmiten tramas con sus propias direcciones MAC y un grupo de puertos predeterminado rechaza las transmisiones falsificadas y los cambios de direcciones MAC, por lo que el tráfico se elimina silenciosamente. Edite el grupo de puertos que utiliza su máquina virtual Proxmox y configure el modo promiscuo, los cambios de dirección MAC y las transmisiones forjadas en Aceptar, idealmente en un grupo de puertos de laboratorio dedicado.